summaryrefslogtreecommitdiff
path: root/modules/text_server_fb
AgeCommit message (Collapse)Author
2022-10-31Merge pull request #67562 from bruvzg/improve_font_packingRémi Verschelde
Improve font glyph cache packing shelf best height fit heuristic.
2022-10-31Merge pull request #67409 from bruvzg/fix_oversampling_roundingRémi Verschelde
[TextServer] Do not round glyph advances / coordinates if font oversampling or bitmap glyph scaling is used.
2022-10-18Unify usage of GLOBAL/EDITOR_GETkobewi
2022-10-18Improve font glyph cache packing shelf best height fit heuristic.bruvzg
2022-10-17Merge pull request #67521 from nikitalita/speed_up_texture_posRémi Verschelde
Speed up `find_texture_pos_for_glyph()`
2022-10-17[TextServer] Do not round glyph advances / coordinates if font oversampling ↵bruvzg
or bitmap glyph scaling is used.
2022-10-16Speed up `find_texture_pos_for_glyph()`nikitalita
2022-10-17Fix memory leak when `_ensure_cache_for_size()` failsHaoyu Qiu
2022-10-14Make some Image methods statickobewi
2022-10-05[TextServer GDExtension] Update build scripts and `.gdextension` files to ↵bruvzg
use new target names and arch suffixes.
2022-09-30Merge pull request #66242 from akien-mga/scons-unify-tools-targetRémi Verschelde
2022-09-28Merge pull request #66532 from bruvzg/mipmap_changeRémi Verschelde
[Text Server] Clear textures after "generate mipmaps" property change.
2022-09-28[Text Server] Clear textures after "generate mipmaps" property change.bruvzg
2022-09-28[GDExtension] Use function names with underscore for TextServer extension, ↵bruvzg
add macros to generate wrappers for module functions.
2022-09-26SCons: Unify tools/target build type configurationRémi Verschelde
Implements https://github.com/godotengine/godot-proposals/issues/3371. New `target` presets ==================== The `tools` option is removed and `target` changes to use three new presets, which match the builds users are familiar with. These targets control the default optimization level and enable editor-specific and debugging code: - `editor`: Replaces `tools=yes target=release_debug`. * Defines: `TOOLS_ENABLED`, `DEBUG_ENABLED`, `-O2`/`/O2` - `template_debug`: Replaces `tools=no target=release_debug`. * Defines: `DEBUG_ENABLED`, `-O2`/`/O2` - `template_release`: Replaces `tools=no target=release`. * Defines: `-O3`/`/O2` New `dev_build` option ====================== The previous `target=debug` is now replaced by a separate `dev_build=yes` option, which can be used in combination with either of the three targets, and changes the following: - `dev_build`: Defines `DEV_ENABLED`, disables optimization (`-O0`/`/0d`), enables generating debug symbols, does not define `NDEBUG` so `assert()` works in thirdparty libraries, adds a `.dev` suffix to the binary name. Note: Unlike previously, `dev_build` defaults to off so that users who compile Godot from source get an optimized and small build by default. Engine contributors should now set `dev_build=yes` in their build scripts or IDE configuration manually. Changed binary names ==================== The name of generated binaries and object files are changed too, to follow this format: `godot.<platform>.<target>[.dev][.double].<arch>[.<extra_suffix>][.<ext>]` For example: - `godot.linuxbsd.editor.dev.arm64` - `godot.windows.template_release.double.x86_64.mono.exe` Be sure to update your links/scripts/IDE config accordingly. More flexible `optimize` and `debug_symbols` options ==================================================== The optimization level and whether to generate debug symbols can be further specified with the `optimize` and `debug_symbols` options. So the default values listed above for the various `target` and `dev_build` combinations are indicative and can be replaced when compiling, e.g.: `scons p=linuxbsd target=template_debug dev_build=yes optimize=debug` will make a "debug" export template with dev-only code enabled, `-Og` optimization level for GCC/Clang, and debug symbols. Perfect for debugging complex crashes at runtime in an exported project.
2022-09-25[TextServer] Always prefer main font over fallbacks, regardless of ↵bruvzg
script/language support.
2022-09-22[GDExtension] Implement support for typed arrays.bruvzg
2022-09-21Merge pull request #65914 from bruvzg/fix_trim_wo_spaceRémi Verschelde
Fix line trim/ellipsis when line do not have space or newline at the end.
2022-09-18Fix crash when executing `FontFile.get_face_count`Haoyu Qiu
2022-09-16Fix line trim/ellipsis when line do not have space or newline at the end.bruvzg
2022-09-02Merge pull request #65170 from KoBeWi/your_argument_is_TypedArrayRémi Verschelde
2022-09-01Change Array arguments to TypedArraykobewi
2022-09-01[TextServer] Fix LCD AA fonts reading wrong glyphs.bruvzg
2022-08-30Fix MSDF fonts color modulation.bruvzg
2022-08-26Merge pull request #64422 from bruvzg/make_fonts_unbearably_ugly_2.0Rémi Verschelde
2022-08-23Merge pull request #63959 from KoBeWi/typo_arrrayRémi Verschelde
Replace Array return types with TypedArray (part 1)
2022-08-23Add font LCD sub-pixel anti-aliasing support.bruvzg
2022-08-22Replace Array return types with TypedArraykobewi
2022-08-22Fix color modulation of the grayscale glyphs in font with mixed color / ↵bruvzg
grayscale data.
2022-08-09Allow MSDF rendering for system fonts, fix crash on loading damaged / ↵bruvzg
unsupported font files.
2022-08-07Merge pull request #63919 from Faless/scons/4.x_easy_depsRémi Verschelde
2022-08-06Merge pull request #63762 from bruvzg/ft_warnRémi Verschelde
[TextServer] Add a build warning when building with external FreeType without Brotli support.
2022-08-04Fix overrun flag check and HarfBuzz safe to break flag check.bruvzg
2022-08-04[Scons] Implement module dependency sorting.Fabio Alessandrelli
Modules can now call: env.module_add_dependencies(name: str, deps: list, optional: bool) To add required or optional dependencies during the "can_build" step. Required dependencies will be checked and the module will be not be enabled when they are missing, printing a warning to notify the user.
2022-08-01[TextServer] Add a build warning when building with external FreeType ↵bruvzg
without Brotli support.
2022-07-31[TextServer] Ensure that built-in library headers are always included before ↵bruvzg
system header, add HarfBuzz version checks for optional features.
2022-07-25Remove ThreadWorkPool, replace by WorkerThreadPoolJuan Linietsky
The former needs to be allocated once per usage. The later is shared for all threads, which is more efficient. It can also be better debugged.
2022-07-25Code quality: Fix header guards consistencyRémi Verschelde
Adds `header_guards.sh` bash script, used in CI to validate future changes. Can be run locally to fix invalid header guards.
2022-07-21Rename OSX to macOS and iPhoneOS to iOS.bruvzg
2022-07-15Use BitField hint for the TextServer enums. Add missing parts for BitField ↵bruvzg
support to the GDextension API.
2022-07-08Add static methods for creating Image and ImageTexturekobewi
2022-07-06Refactor Font configuration and import UI, and Font resources.bruvzg
2022-06-16Move duplicate AutoWrap, Overrun and VisibleChar behavior enums to the ↵bruvzg
TextServer.
2022-06-15Merge pull request #61934 from Geometror/hashfuncsRémi Verschelde
Hash function improvements
2022-06-15Hash function improvementsHendrik Brucker
2022-06-07[TextServer] Adds support for TrueType / OpenType collection files (*.TTC, ↵bruvzg
*.OTC).
2022-06-06[GDExtension] Expose Variant, NodePath and StringName hash functions.bruvzg
2022-05-19[RTL] Add support for shaping in background thread.bruvzg
2022-05-17Update HarfBuzz, ICU and FreeType.bruvzg
HarfBuzz: Update to version 4.2.1 FreeType: Update to version 2.12.1 ICU: Update to version 71.1
2022-05-13Implement TextMesh resource.bruvzg
Apply simulated slant and embolden to the TextServer `gont_get_glyph_contours` results.