Obiekt node::model: Różnice pomiędzy wersjami
(→Składnia) |
(Dostosowanie zmian do exe z paczki 20.09) |
||
Linia 32: | Linia 32: | ||
| Jeśli w modelu nie zdefiniowano żadnych lampek, należy pominąć słowo kluczowe '''lights'''. | | Jeśli w modelu nie zdefiniowano żadnych lampek, należy pominąć słowo kluczowe '''lights'''. | ||
|} | |} | ||
+ | |||
+ | == Parametry dodatkowe == | ||
+ | |||
+ | === angles x y z === | ||
+ | Przy definiowaniu obiektu, można użyć słowa kluczowego "angles", przez które można określić rotację x, y i z obiektu: | ||
+ | {{Szablon:Kod_preambuly_node}} <span style="color:tomato;font-weight:bold">model</span> ''location rotation.y model_path replacableskin_path'' <span style="color:orange;font-weight:bold">angles</span> angle.x angle.y angle.z <span style="color:tomato;font-weight:bold">endmodel</span> | ||
+ | |||
+ | === lightcolors === | ||
+ | Przy definiowaniu lampek w modelu, można użyć słowa "lightcolors", żeby zdefiniować kolory lampek w formacie R, G, B. | ||
+ | {{Szablon:Kod_preambuly_node}} <span style="color:tomato;font-weight:bold">model</span> ''location rotation.y model_path replacableskin_path <span style="color:orange;font-weight:bold">lights lightcolors </span>kolor_swiatla_0 kolor_swiatla_1 kolor_swiatla_2 <span style="color:tomato;font-weight:bold">endmodel</span> | ||
+ | |||
+ | === make: === | ||
+ | Przy definiowaniu tekstury, można podać ścieżkę do skryptu Pythona, który zwraca teksturę. Aby to zrobić, należy użyć słowa kluczowego "make:", po czym podać ścieżkę do skryptu. Na przykład - make:scripts/example.py | ||
+ | {{Szablon:Kod_preambuly_node}} <span style="color:tomato;font-weight:bold">model</span> ''location rotation.y model_path <span style="color:orange;font-weight:bold">make:</span>script.path'' <span style="color:tomato;font-weight:bold">endmodel</span> | ||
+ | |||
+ | === notransition === | ||
+ | Przy definiowaniu obiektu, można użyć słowa kluczowego "notransition", które wyłącza animację lampek. | ||
+ | {{Szablon:Kod_preambuly_node}} <span style="color:tomato;font-weight:bold">model</span> ''location rotation.y model_path replacableskin_path'' <span style="color:orange;font-weight:bold">lights notransition </span><span style="color:tomato;font-weight:bold">endmodel</span> | ||
+ | |||
== Informacje dla programistów == | == Informacje dla programistów == |
Wersja z 20:36, 27 lis 2020
Dyrektywa node typu model umieszcza na podanych współrzędnych w scenerii model zapisany w formacie T3D lub E3D.
Spis treści
Składnia
node range_max range_min name model location rotation.y model_path replacableskin_path lights lights_states endmodel
Nazwa | Interpretacja | Uwagi |
---|---|---|
range_max | Maksymalna odległość, z jakiej obiekt jest widoczny [m].
Wartość -1 oznacza brak ograniczenia widoczności. | |
range_min | Minimalna odległość, z jakiej obiekt jest widoczny [m]. | |
name | Nazwa obiektu. | |
location | Współrzędne modelu w scenerii. | Symulator korzysta z prawoskrętnego układu współrzędnych! |
rotation.y | Rotacja w osi Y [deg]. | Symulator korzysta z prawoskrętnego układu współrzędnych! |
model_path | Ścieżka do modelu. | Ścieżka relatywna względem folderu models. |
replacableskin_path | Ścieżka do tekstury wymiennej. | Ścieżka relatywna względem folderu textures.
Jeśli w modelu zdefiniowano więcej tekstur wymiennych, można podać kilka ścieżek; należy je wtedy oddzielić znakiem | (pionowa kreska). |
lights_states | Stany lampek. | Jeśli w modelu nie zdefiniowano żadnych lampek, należy pominąć słowo kluczowe lights. |
Parametry dodatkowe
angles x y z
Przy definiowaniu obiektu, można użyć słowa kluczowego "angles", przez które można określić rotację x, y i z obiektu:
node range_max range_min name model location rotation.y model_path replacableskin_path angles angle.x angle.y angle.z endmodel
lightcolors
Przy definiowaniu lampek w modelu, można użyć słowa "lightcolors", żeby zdefiniować kolory lampek w formacie R, G, B.
node range_max range_min name model location rotation.y model_path replacableskin_path lights lightcolors kolor_swiatla_0 kolor_swiatla_1 kolor_swiatla_2 endmodel
make:
Przy definiowaniu tekstury, można podać ścieżkę do skryptu Pythona, który zwraca teksturę. Aby to zrobić, należy użyć słowa kluczowego "make:", po czym podać ścieżkę do skryptu. Na przykład - make:scripts/example.py
node range_max range_min name model location rotation.y model_path make:script.path endmodel
notransition
Przy definiowaniu obiektu, można użyć słowa kluczowego "notransition", które wyłącza animację lampek.
node range_max range_min name model location rotation.y model_path replacableskin_path lights notransition endmodel
Informacje dla programistów
Modele są reprezentowane przez klasę TAnimModel, zdefiniowaną w pliku AnimModel.h
Wpis parsowany jest przez metodę:
(simulation.cpp) TAnimModel* state_manager::deserialize_model(cParser &Input, scene::scratch_data &Scratchpad, scene::node_data const &Nodedata)