Skip to content

BiDi, shaping and basic text layout for Godot Engine

License

Notifications You must be signed in to change notification settings

bruvzg/godot_tl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

libgdtl logo

libgdtl

BiDi, shaping and basic text layout for Godot Engine.

Dependencies

  • Godot 3.x (3.1+)
  • C++14 compiler
  • Meson build system (for gdnative module build only)
  • SCons build system

Compiling (as builtin module)

Build options

Name Description Default value
builtin_runtime Use the built-in libraries true
use_graphite2 Enable SIL Graphite 2 complementary shaper true
use_font_wrapper Enable Godot font wrapper for default controls false

If use_font_wrapper is enabled, apply patch_font.diff from the root of this repository to the Godot engine source first. Additionally apply patch_editor_fonts.diff to use libgdtl to render editor fonts and patch_lbl.diff/patch_le.diff to override default Label and LineEdit with TL counterparts.

Building libgdtl module

Clone this repository (without --recursive flag) into Godot's modules subfolder as godot_tl. Rebuild Godot engine as usual.

Compiling (as gdnative module)

Build options

Name Description Default value
godot-cpp-lib-name godot-cpp static library name (without .a or .lib extension) libgodot-cpp
static-lib Build static library false
static-runtime Link libraries statically for better portability false
builtin-runtime Use the built-in libraries false
use-graphite2 Enable SIL Graphite 2 complementary shaper true

Building godot-cpp static library

See Compiling the cpp bindings library

Building libgdtl module

See Compiling GDNative module for Windows, macOS and Linux, Compiling GDNative module for Android and Compiling GDNative module for iOS for build instructions.

Documentation

Documentation

Class reference

Screenshots

libgdtl scripts screenshot

libgdtl debug view screenshot

iOS simulator screenshot

Android screenshot

License

Demo data

Montserrat, Awami Nastaliq, Comic Neue and Noto fonts are published under the SIL Open Font License, Version 1.1

Material Design icons by Google are published under the Apache License Version 2.0

Noto Color Emoji font is cut down to single glyph (U+1F604) using glyphhanger.

Travis Build Status