Obiekt node::model: Różnice pomiędzy wersjami
(Dostosowanie zmian do exe z paczki 20.09) |
m ("lampek (w modelu)" -> "lampek obiektu") |
||
Linia 40: | Linia 40: | ||
=== lightcolors === | === lightcolors === | ||
− | Przy definiowaniu lampek | + | Przy definiowaniu lampek obiektu, 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> | {{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> | ||
Linia 48: | Linia 48: | ||
=== notransition === | === notransition === | ||
− | Przy definiowaniu obiektu, można użyć słowa kluczowego "notransition", które wyłącza animację lampek. | + | Przy definiowaniu lampek 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> | {{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> | ||
Wersja z 13:16, 28 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 obiektu, 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 lampek 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)