Skip to main content

Select Features

CMake feature switches have been renamed for V3.x releases, see Change Log

Select Candera Features

Build settings for the Candera Engine are specified by the following CMake variables:

Name Description Possible values
CANDERA_2D_ENABLED Enables Candera engine's 2D elements.
If both 2D and 3D are enabled, the solution will contain both CanderaEngine2D and CanderaEngine3D subprojects.
ON/OFF
CANDERA_LAYOUT_ENABLED Enables Candera 2D dynamic layout.
If disabled, the whole code for dynamic layout is removed.
ON/OFF
CANDERA_LAYOUT_CLIPPING_ENABLED Enables clipping of Candera 2D dynamic layout.
If enabled, the render area of a render node is clipped to the layout area.
ON/OFF
CANDERA_3D_ENABLED Enables Cander engine's 3D elements. ON/OFF
CANDERA_VRAM_ALLOCATOR_CHECK_ENABLED
ON/OFF
CANDERA_VRAM_ALLOCATOR_STATISTICS_ENABLED
ON/OFF
CANDERA_RENDER_STATE_CACHING_ENABLED Whether or not Candera shall cache render states.

For SceneComposer builds (on host), render state caching must be disabled.

For target builds, take care to enable this feature!

ON/OFF


CANDERA_DETAIL_STATISTICS_ENABLED Whether or not Candera shall keep statistics about render state cache hits and misses.

This works only if CANDERA_RENDER_STATE_CACHING_ENABLED is enabled.

For target builds, disable because of the added overhead!

ON/OFF


CANDERA_GLOBALIZATION_ENABLED

Whether or not Candera Globalization library shall be built.

Candera Globalization is an optional module only available upon special request.

ON/OFF
CANDERA_ASSET_DECOMPRESSION_ENABLED This option is required to decompress asset data if it was compressed with CGI Studio Asset Library Shaper previously.

Enabling this feature will automatically add ZLib to the project.

ON/OFF
CANDERA_TEXT_SHAPER

Allows the selection of a text shaper.
A text shaper resolves certain text features like text direction, context specific substitutions and ligatures.
Options:

  • HarfBuzz (Default)(Optional): Unidirectional text. Unicode defined substitutions. Unicode defined ligature, GSUB and GPOS lookup.

    HarfBuzz shaping is an optional module only available upon special request. Upon failure to detect the HarfBuzz source location, CMake will display "ComplexScripLib" as default textshaping option.

  • ComplexScriptLib: Bidirectional text. Arabic context substitutions. Forced Unicode defined ligatures.
  • NoShaping: Disables shaping. Text will be displayed left to right. No substitutions or ligatures are resolved.


NoShaping
ComplexScriptLib
Harfbuzz - Default

CANDERA_BIDIRECTIONAL_TEXT_ENABLED Allows enabling of bidirectional text parsing.
This is needed when combining text written left to right with text written right to left.
If the text shaper supports bidirectional text this option is required when using multi-font text styles.

ON/OFF


CANDERA_TEXTENGINE_NATIVE_LINEHEIGHT_ENABLED Whether or not the native line height metrics of the font engine is used.
If disabled then 120% of EM size is applied as line height which is compatible with Adobe.
ON/OFF
CANDERA_ASSETLOADER_MEMORYPOOL_ENABLED Enables the use of the Memory Pool feature in Candera AssetLoader.
Requires the MemoryPool feature.

Only available if FEATSTD_MEMORYPOOL_ENABLED is ON.

ON/OFF
CANDERA_TEXTENGINE_MEMORYPOOL_ENABLED Enables the use of the Memory Pool feature in Candera TextEngine.
Requires the MemoryPool feature.

Only available if FEATSTD_MEMORYPOOL_ENABLED is ON.

ON/OFF
CANDERA_ASSET_LIBRARYHEADER_CACHE_ENABLED Optional feature which will cache all Asset-Library-Header that have been loaded and cached upon Asset initialization.
If dynamic Asset-Partitions are being used, caching will occur when a partition is added, and will continue until it is removed.

The cache will use the standard Asset Cache memory.

ON/OFF

Select FeatStd Features

For information about FeastStd features, please refer to FeatStd > FeatStd Features.