Poznámka k uživatelskému rozhraní
Tato poznámka slouží k přidružení parametru efektu k ovládacímu prvku uživatelského rozhraní v hostitelském prostředí. To uživateli umožní interaktivně řídit parametr efektu prostřednictvím hostitelské aplikace.
DXSAS definuje sadu standardních ovládacích prvků z hlediska datového modelu a základního chování, které mohou autoři očekávat z hostitelských aplikací. Poznámka ovládacího prvku se používá takto:
string SasUiControl = "ControlType";
kde
ControlType
je jedna z následujících možností:
ControlType | Popis | Interní datový typ | Poznámky k vlastnostem ovládacího prvku |
---|---|---|---|
Žádný | Neměl by se zobrazovat žádný ovládací prvek. Všimněte si, že ovládací prvek je viditelný, pokud SasUiVisible je True a typ ovládacího prvku je jiný typ než None. | není k dispozici | není k dispozici |
Jakýkoliv | To znamená, že se nevyžaduje žádná zvláštní kontrola. Zobrazený ovládací prvek je výsledkem chování definovaného aplikací. | není k dispozici | není k dispozici |
ColorPicker | Představuje hodnotu barvy jako vzorník barev. Hodnota se zabalí do komponent XYZ přidruženého vektoru. Součást W přidruženého vektoru je vždy nastavena na jednu. | floatN kde N je 1 až 4 včetně. | SasUiEnum |
Směr | Směrový vektor. | floatN kde N je 2 až 4 včetně. | Žádný |
FilePicker | Dialogové okno, které umožňuje uživateli procházet a vybrat soubor. | řetězec | Žádný |
ListPicker | Seznam řetězcových hodnot, ze kterých může uživatel vybrat jednu položku. Hodnoty jsou generovány z SasUiEnum poznámky. | Pole řetězců spolu s celočíselnou hodnotou obsahující index vybrané řetězcové hodnoty. | SasUiEnum |
Číselný | Sada ovládacích prvků číselného vstupu (například textová pole). | floatMxN kde M a N jsou 1 až 4 včetně. | SasUiMin, SasUiMax, SasUiStride |
Běhoun | Sada posuvníků. | floatMxN kde M a N jsou 1 až 4 včetně | SasUiMin, SasUiMax, SasUiSteps, SasUiStepsPower |
Řetězec | Textové pole pro úpravu obsahu řetězce | řetězec | Žádný |
Pokud interní datový typ není shodný s typem přidruženého parametru, přetypování proběhne při přenosu dat z parametru hostitelské aplikace do parametru efektu.
Výchozí hodnota je řetězec None.< a1/> (Žádný).
Běžné vlastnosti uživatelského rozhraní
SasUiDescription
Pomocí této poznámky můžete zadat řetězec pro popis nástroje. To se dá použít pro prvky uživatelského rozhraní, jako jsou popisy nástrojů.
string SasUiDescription = "descriptive string";
Například:
float3 UpNormal
<
string SasUiDescription = "The normalized up vector";
>;
Výchozí hodnota je prázdný řetězec.
SasUiLabel
Pomocí této poznámky můžete zadat řetězec pro označení jakéhokoli ovládacího prvku uživatelského rozhraní.
string SasUiLabel = "some label;
Tady je příklad:
float3 UpNormal
<
string SasUiLabel = "Normal that points up.";
>;
Výchozí hodnota je prázdný řetězec.
SasUiVisible
Pomocí této poznámky můžete určit, jestli se má uživateli zobrazit přidružený parametr.
bool SasUiVisible = false;
Pokud je nastavena hodnota True, hostitelská aplikace by měla zobrazit ovládací prvek uživatelského rozhraní pro úpravu anotovaného parametru efektu. Pokud je false, v hostitelské aplikaci se nezobrazí žádné uživatelské rozhraní.
Tady je příklad:
float3 UpNormal
<
string SasUiVisible = false;
>;
Výchozí hodnota je True.
Vlastnosti ovládacího prvku uživatelského rozhraní
Poznámky vlastností ovládacích prvků jsou další modifikátory, které pomáhají určit, jak konkrétní ovládací prvek funguje.
SasUiEnum
Tato poznámka umožňuje omezit rozsah hodnot ovládacího prvku. Poznámka obsahuje řetězec hodnot oddělených čárkami.
Výchozí hodnota je prázdný řetězec.
SasUiMax
Tato poznámka určuje maximální hodnotu přidruženého parametru. Lze ji přidružit pouze k parametru s číselným typem. Maximální hodnota parametru se ve skutečnosti vypočítá takto:
MaxValue = min(FLT_MAX, PARAMETER_TYPE_MAX);
PARAMETER_TYPE_MAX je maximální hodnota pro typ používaný přidruženým parametrem. To znamená, že hodnota parametru s ohledem na SasUiMax anotaci se vypočítá takto:
ParameterValue = min(NewParameterValue, MaxValue);
Výchozí hodnota je FLT_MAX definovaná v math.h.
SasUiMin
Tato poznámka určuje minimální hodnotu přidruženého parametru. Může být přidružen pouze k libovolnému parametru s číselným typem. Minimální hodnota parametru se ve skutečnosti vypočítá takto:
MinValue = max(-FLT_MAX, PARAMETER_TYPE_MIN);
PARAMETER_TYPE_MIN je minimální hodnota pro typ používaný přidruženým parametrem. To znamená, že hodnota parametru s ohledem na SasUiMin poznámky se vypočítá takto:
ParameterValue = max(NewParameterValue, MinValue);
Výchozí hodnota je -FLT_MAX definovaná v math.h.
SasUiSteps
Tato poznámka určuje počet kroků, které lze použít při zvýšení nebo snížení přidružené hodnoty parametru. Poznámka je smysluplná pouze u parametru s číselným typem. Nula určuje, že hostitelská aplikace zvolí přiměřený počet kroků.
Výchozí hodnota je 0.
SasUiStepsPower
Tato poznámka určuje exponent funkce napájení, která má rozsah [0,0f, 1,0f]. Hostitelské aplikace musí při výpočtu hodnot parametrů implementovat následující metodu:
ParameterValue = ((SasUiMax - SasUiMin) x pow(UI_VALUE, SasUiStepsPower) + SasUiMin
Výchozí hodnota je 1,0f.
SasUiStride
Tato poznámka určuje přírůstek, který se má použít při zvýšení nebo dekrementování této hodnoty. Na rozdíl od SasUiStepsje SasUiStride užitečný například u číselníku, kde jsou data nevázaná a uživatel by raději navyšoval hodnotu parametru o krokování, nikoli o předem definovaný počet kroků. Hostitelské aplikace by měly inkrementovat (nebo dekrementovat v závislosti na chování ovládacího prvku) hodnotou SasUiStride následujícím způsobem:
ParameterValue = ParameterValue +/- SasUiStride
Výchozí hodnota je 1,0f.
Související témata