Autor Wątek:  Kto co wie o T3D?  (Przeczytany 3994 razy)

0 użytkowników i 1 Gość przegląda ten wątek.

Offline Ra

  • Zasłużony dla Symulatora
  • Wiadomości: 6313
  • Ostatni gasi światło...
    • Zobacz profil
    • Instalator+Starter+Edytor
  • Otrzymane polubienia: 343
Kto co wie o T3D?
« dnia: 25 Maja 2008, 07:05:45 »
Jestem w trakcie rozpracowania plików .T3D. Niestety nie ma do nich żadnej dokumentacji (przynajmniej ja nie znalazłem).

Wiem, że mają strukturę hierarchiczną (typu drzewo). Każdy element ma najpierw parametry opisowe, potem macierz transformacji i na końcu listę trójkątów. Hierarchię, macierz transformacji i trójkąty rozpracowałem na tyle, że udało mi się je wyeksportować do pliku .3DS.

Natomiast zagadką są dla mnie pozostałe parametry opisowe. W pliku EU07.EXE są znalazłem następujące ciągi:
  • type: - możliwe wartości: mesh, point, freespotlight. Mesh to siatka trójkątów. Freespotlight to punkt świetlny (rodzaj reflektora). Ale czym jest point?
  • anim: - chyba zawsze jest false, może mieć inne wartości?
  • nearattenstart: - niby początek zanikania światła w zbliżeniu, ale czy to działa?
  • map: - nazwa pliku tekstury albo słowo replacableskin, jeśli teksturę można podmienić.

Ponadto nie ma ciągów (chyba?), ale są rozpoznawane:
  • Parent: - nazwa obiektu wyżej w hierarchii (słowo none dla głównego elementu).
  • Name: - nazwa elementu, może być użyta do animacji w event ... animation. Jeśli nazwa jest postaci Light_On## albo Light_Off##, element może być pokazywany i chowany za pomocą event ... lights (uwzględniana hierarchia). W modelach pojazdów są jeszcze inne nazwy specjalne (np. HeadLamp12_on), podobnie w kabinach.
  • Diffuse: - kolor świecenia elementu (RGB, trzy liczby 0..255).
  • SelfIllum: - świecenie elementu: true albo false.
  • MaxDistance: - maksymalna odległość, z jakiej widać element (hierarchia ignorowana).
  • MinDistance: - minimalna odległość, z jakiej widać element (j.w.).
  • Transform: - początek macierzy transformacji.
  • NumVerts: - ilość wierzchołków i definicje trójkątów.

Nie jest mi znane działanie następujących parametrów (nie chodzi o ogólne znaczenie, bo to można znaleźć w instrukcji 3D Studio Max, tylko o zastosowanie w Symulatorze):
  • Ambient: (RGB, trzy liczby 0..255)
  • Specular: (RGB, trzy liczby 0..255)
  • Wire: false
  • WireSize: 1.0
  • Opacity: 100.0
  • NearAttenStart: 0.0
  • NearAttenEnd: 80.0
  • UseNearAtten: true
  • FarAttenDecayType: 2
  • FarDecayRadius: 80.0
  • FalloffAngle: 45.0
  • HotspotAngle: 10.0

Nie są mi też znane okoliczności pojawienia się komunikatu Degenerated triangle found. Domyślam się, że może się pojawić w sytuacji, gdy wierzchołki trójkąta się pokrywają, ewentuallnie są na jednej prostej.

To tyle, co ja wiem. Ktoś wie coś więcej?
¯\_( ͡° ͜ʖ ͡°)_/¯ Ra

Polecam: kręgarz Wojciech Walczak, projekt masarni

Offline youBy

  • Deweloper
  • Wiadomości: 6165
  • Co tam?
    • Zobacz profil
    • Automat Weryfikujący Regulację i Lambdę
  • Otrzymane polubienia: 870
Odp: Kto co wie o T3D?
« Odpowiedź #1 dnia: 25 Maja 2008, 09:08:28 »
Nie są mi też znane okoliczności pojawienia się komunikatu Degenerated triangle found. Domyślam się, że może się pojawić w sytuacji, gdy wierzchołki trójkąta się pokrywają, ewentuallnie są na jednej prostej.
Dokładnie, dwa wierzchołki mają te same współrzędne.
Xoov
Powyższy post wyraża jedynie opinię autora w chwili publikacji. Autor zastrzega sobie prawo do zmiany poglądów bez podawania przyczyny, jak również informowania o tym.

Offline Żabek

  • Wiadomości: 546
  • Gdzie jest guzik rezygnacji?
    • Zobacz profil
  • Otrzymane polubienia: 2
Odp: Kto co wie o T3D?
« Odpowiedź #2 dnia: 25 Maja 2008, 12:11:23 »
  • Diffuse: (RGB, trzy liczby 0..255);
  • Ambient: (RGB, trzy liczby 0..255);
  • Specular: (RGB, trzy liczby 0..255).

Ja znalazłem taki opis w scenery.doc:
Cytuj
ambient, diffuse, specular – podatność materiału na oświetlenie tymi 3ma składowymi światła (np. materiał błyszczący powinien mieć wysoką składową specular, ściany tunelu powinny mieć wysoką składową ambient i bardzo niskie diffuse i specular aby światło słoneczne na nie nie padało, itp).
The Frog

Offline ShaXbee

  • Administrator
  • Wiadomości: 1984
    • Zobacz profil
  • Otrzymane polubienia: 2
Odp: Kto co wie o T3D?
« Odpowiedź #3 dnia: 27 Maja 2008, 20:30:50 »
Cytuj
  • Ambient: (RGB, trzy liczby 0..255)
  • Specular: (RGB, trzy liczby 0..255)
Chodzi o parametry światła - symulator przekazuje je do glMaterial / glLight - http://www.sjbaker.org/steve/omniv/opengl_lighting.html
Cytuj
  • Wire: false
  • WireSize: 1.0
Zamiast wypełnionych trójkątów rysowana jest ich siatka (krawędzie). WireSize określa szerokość linii - przekazywane do glLineWidth.

Cytuj
  • Opacity: 100.0
Nieprzezroczystosc (0% - calkowicie przezroczysty)

Cytuj
Nie są mi też znane okoliczności pojawienia się komunikatu Degenerated triangle found. Domyślam się, że może się pojawić w sytuacji, gdy wierzchołki trójkąta się pokrywają, ewentuallnie są na jednej prostej.
To tyle, co ja wiem. Ktoś wie coś więcej?
ZTCP degenerated triangle są wykrywane tylko przy pokrywających się wierzchołkach.
« Ostatnia zmiana: 27 Maja 2008, 20:32:52 wysłana przez ShaXbee »

Offline bohunIC

  • Zasłużony dla Symulatora
  • Wiadomości: 1407
  • Ну погоди
    • Zobacz profil
  • Otrzymane polubienia: 14
Odp: Kto co wie o T3D?
« Odpowiedź #4 dnia: 28 Maja 2008, 10:02:04 »
Cytuj
Nie są mi też znane okoliczności pojawienia się komunikatu Degenerated triangle found. Domyślam się, że może się pojawić w sytuacji, gdy wierzchołki trójkąta się pokrywają, ewentuallnie są na jednej prostej.
To tyle, co ja wiem. Ktoś wie coś więcej?
ZTCP degenerated triangle są wykrywane tylko przy pokrywających się wierzchołkach.
[/quote]

Moje pytanie, czy to oznacza że te wierzchołki się dublują czy tylko mają wspólne punkty? Mówie o siatce trójkątów robioną z Delanuay Mesh. Ja rozumiem że robiąc siatkę o charakterze powierzchnia pofałdowana, kilka trójkątów musi mieć wspólne wierzchołki, przylegać do siebie i to o to chodzi? Bo w moich sceneriach w konsoli podczas wczytywania wykazuje ''od zajeb...'' degenrated triangle co mnie zaniepokoiło. A patrząc w kierunku optymalizacji i poprawy FPSu - ważna sprawa.

-troche off topowo

Proponuje twórcą scenerii robić sobie plik z weksportowanymi krawędziami, tzn kiedy robimy siatkę krawędzie z których została stworzona pozostają, My potzrebujemy tylko teren więc linie i zamknięte spline nie są nam potzrebne, usuwamy je po Delanuay Mesh, ale kopiujemy na przyszłość do odrębnego pliku max. Wtedy nie są wczytywane do scn i znacząco wpływają na FPS, bo są to dodatkowe rzeczy exportowane do scn czy scm. niewiem czy robiliście takie zabiegi wcześniej, w każdym razie jest takie rozwiązanie, które stosuje od dawnego już czasu.
« Ostatnia zmiana: 28 Maja 2008, 10:03:44 wysłana przez bohunIC »

Offline youBy

  • Deweloper
  • Wiadomości: 6165
  • Co tam?
    • Zobacz profil
    • Automat Weryfikujący Regulację i Lambdę
  • Otrzymane polubienia: 870
Odp: Kto co wie o T3D?
« Odpowiedź #5 dnia: 01 Czerwca 2008, 11:12:22 »
Moje pytanie, czy to oznacza że te wierzchołki się dublują czy tylko mają wspólne punkty? Mówie o siatce trójkątów robioną z Delanuay Mesh. Ja rozumiem że robiąc siatkę o charakterze powierzchnia pofałdowana, kilka trójkątów musi mieć wspólne wierzchołki, przylegać do siebie i to o to chodzi? Bo w moich sceneriach w konsoli podczas wczytywania wykazuje ''od zajeb...'' degenrated triangle co mnie zaniepokoiło. A patrząc w kierunku optymalizacji i poprawy FPSu - ważna sprawa.
W jednym trójkącie dwa wierzchołki się pokrywają. Mogą one powodować spadek ilości FPS, gdyż ciężko się liczy niektóre rzeczy dla linii.
Xoov
Powyższy post wyraża jedynie opinię autora w chwili publikacji. Autor zastrzega sobie prawo do zmiany poglądów bez podawania przyczyny, jak również informowania o tym.