UI metadata

Purpose

import miskeyed.ui; provides attributes that express semantic presentation: UIName, UIGroup, UIWidget, UIRange, UIStep, UITooltip, and UIUnits.

Example

import miskeyed.ui;

[UIName("Exposure")]
[UIWidget("slider")]
[UIRange(-4.0, 4.0)]
[UIStep(0.1)]
float exposure = 0.0;

The shader owns intent. Slang reflects it. Workbench maps it to native controls and packs values using explicit reflected byte offsets.