Compile flags¶
Scripting define symbols that Tick UI recognises. Set them
under Project Settings > Player > Other Settings >
Scripting Define Symbols for the active platform, or in your
own .asmdef's defineConstraints.
| Flag | Effect | Where set | Default |
|---|---|---|---|
TICK_URP |
Compiles TickURPInjector and TickRenderPass. Required for any URP integration. |
Set automatically by the .asmdef's versionDefines when the URP package is detected. Override manually for mixed-pipeline projects. |
On (auto) when URP present; off otherwise. |
TICK_DEBUGGER |
Enables the in-game debugger overlay used in UI.cs EndFrame (rect-stack inspector, panel list, draw-command counts). |
Player Settings, typically editor-only. | Off. |
TICK_CHECK_DUPLICATE_IDS |
Logs a Debug.LogError (editor only) from PushID when two widgets in the same frame produce the same combined ID, including the previous call stack for that ID. |
Player Settings, editor-only. | Off. |
TICK_PREFER_HINTS |
Enables opt-in Debug.Log hints from UI.Layout.cs suggesting more specific helpers (for example, Pad(0, 5, 0, 0) logs Prefer PadTop()). |
Player Settings, opt-in. | Off. |
TICK_LUA |
Compiles the optional Lua scripting layer (Source/Extra/Scripting/, TickLuaApi and LuaScriptRunner). Required to drive the UI from a hot-reloadable Lua script. Requires the MoonSharp interpreter. |
Player Settings, opt-in. | Off. |
ENABLE_INPUT_SYSTEM |
Selects the new Unity Input System over the legacy Input class. Drives IInput provider choice. |
Managed by Unity through Player Settings input handling. | Project-dependent. |
Notes¶
TICK_URP is the only flag that materially gates code compilation.
The rest add diagnostics or behaviour without affecting the public API.
Define editor-only flags for the Editor platform only, under Player Settings, so they do not ship with player builds.
Additional resources¶
- Render pipelines: why
TICK_URPmatters for the URP integration. - IDs: why
TICK_CHECK_DUPLICATE_IDShelps in development. - Frame lifecycle: the
TICK_DEBUGGERoverlay runs insideEndFrame. - Lua scripting: what
TICK_LUAenables, and how to configure MoonSharp alongside it. - Build a custom integration: for setting flags in a custom .asmdef.