Plik INC: Różnice pomiędzy wersjami
(→Standardy) |
|||
(Nie pokazano 1 pośredniej wersji utworzonej przez tego samego użytkownika) | |||
Linia 1: | Linia 1: | ||
+ | [[Category:Formaty plików symulatora]] | ||
Plik INC składniowo nie różni się od pliku SCN. Stosowany jest do tworzenia parametryzowanych obiektów, które umieszcza się następnie w scenerii za pomocą wpisu [[Dyrektywa_include|include]]. | Plik INC składniowo nie różni się od pliku SCN. Stosowany jest do tworzenia parametryzowanych obiektów, które umieszcza się następnie w scenerii za pomocą wpisu [[Dyrektywa_include|include]]. | ||
== Przykładowy plik INC == | == Przykładowy plik INC == | ||
Linia 44: | Linia 45: | ||
Pamiętaj! '''{{Szablon:Info_o_układzie_współrzędnych}}''' | Pamiętaj! '''{{Szablon:Info_o_układzie_współrzędnych}}''' | ||
* wskaźniki, znaki drogowe i inne obiekty które mogą się przechylać na boki, mogą mieć rotację w 3 osiach. Budynki powinny mieć rotację tylko w osi Y. W takim przypadku parametry (p6) i (p7) pozostają do dyspozycji autora i można ich użyć w kontekście innym niż rotacja. | * wskaźniki, znaki drogowe i inne obiekty które mogą się przechylać na boki, mogą mieć rotację w 3 osiach. Budynki powinny mieć rotację tylko w osi Y. W takim przypadku parametry (p6) i (p7) pozostają do dyspozycji autora i można ich użyć w kontekście innym niż rotacja. | ||
+ | |||
+ | [[Kategoria:Scenerie]] |
Aktualna wersja na dzień 12:55, 10 kwi 2022
Plik INC składniowo nie różni się od pliku SCN. Stosowany jest do tworzenia parametryzowanych obiektów, które umieszcza się następnie w scenerii za pomocą wpisu include.
Spis treści
Przykładowy plik INC
(domek2.inc) //script;size: 7 10 5 // Model domu mieszkalnego // autor: przykładowski // (p1) - unikalna nazwa obiektu // (p2) (p3) (p4) - lokalizacja XYZ // (p6) (p5) (p7) - rotacja XYZ // (p8) - tekstura origin (p2) (p3) (p4) rotate (p6) (p5) (p7) node -1 0 (p1) model 0 0 0 0 domek2.t3d (p8) endmodel rotate 0 0 0 endorigin
Metadane
Na początku pliku znajduje się komentarz opisujący wymiary obiektu. Są one używane przez zewnętrzne oprogramowanie do określenia gabarytów obiektu (na ich podstawie skrypt do programu 3Ds Max wyświetla tzw. helpera, czyli sześcian o podanych wymiarach symbolizujący wstawiany obiekt)
Parametry
Ciągi znaków (p1), (p2) itp. to tzw. parametry formalne. W czasie wczytywania scenerii zostają one zamienione na wartości podane jako parametry aktualne w dyrektywie include. Przykład:
include domek2.inc domeczek 10 0 34.3 3 0 0 domek2_czerwony end
Powyższy wpis spowoduje podmianę parametrów formalnych na odpowiednie wartości:
(p1) = domeczek (p2) = 10 (p3) = 0 itd...
Dopuszczalne jest także zagniezdzanie parametrów. Jesli zdefiniujemy np.
include foo.inc param1_i_(p3) param2 param3 end
to parser przy odczytywaniu takiego include i napotkaniu tokena "wstaw_tutaj_(p1)_oraz_(p2)" wyprodukuje:
wstaw_tutaj_param1_i_param3_oraz_param2
Standardy
Przy tworzeniu plików INC obowiązuje kilka niepisanych zasad:
- mainpulacja położeniem i rotacją obiektu odbywa się za pomocą dyrektyw origin i rotate, a nie za pomocą parametrów obiektu node.
- parametry dyrektywy origin to odpowiednio (p2), (p3), (p4). Parametr (p1) jest zarezerwowany na nazwę obiektu.
- za rotację w osi X odpowiada (p6), a nie (p5). Jest to związane z wprowadzeniem dodatkowych osi obrotu, które nie były zdefiniowane w żadnym z plików INC. W celu zgodności ze starymi plikami, przyjęto zasadę:
- (p5) - rotacja w osi Y
- (p6) - rotacja w osi X
- (p7) - rotacja w osi Z
Pamiętaj! Symulator korzysta z prawoskrętnego układu współrzędnych!
- wskaźniki, znaki drogowe i inne obiekty które mogą się przechylać na boki, mogą mieć rotację w 3 osiach. Budynki powinny mieć rotację tylko w osi Y. W takim przypadku parametry (p6) i (p7) pozostają do dyspozycji autora i można ich użyć w kontekście innym niż rotacja.