FORUM PTT -

POMOC 3D - Mesh lampy - selfilumination

zgred - 11-02-2010, 20:17
: Temat postu: Mesh lampy - selfilumination
Jako że ostatnim czasem meshe świecących się lamp w modelach taboru zamiast coron stają się jakby na nowo standardem przygotowałem mały opis co i jak...

... i więc tak. Całą zabawe zaczynamy od wymodelowania i oteksturowania lamp w Gmax'ie na modelu. Podczas modelki należy pamiętać o wydzieleniu obudowy lampy i wkładów (miski i czerwonej końcówki) na osobne obiekty.

Kolejnym krokiem jest weksportowanie tych wkładów do nowego pliku gmax i eksport każdego elementu do .im . Podczas exportu można stosować nazewnictwo stworzone na potrzeby skryptu erniego czyli pb0.im (światło białe prawe przednie) pc0.im (końcówka czerwona prawa przednia) itd... . W ten sposób otrzymujemy siatki swiateł, które się nie będą "paliły", a będą jedynie służyć za wkład lamp.

Następnym posunięciem jest kolejny export tym razem z selfilumination.
By TRS czytał texture selfilumination należy przed ponownym exportem zamknąć gmax'a i zedytować plik
(directory name)\GMAX\gamepacks\Trainz\Plugins\JetExporter.cfg w notatniku.
Zmianie w nim ulegają dwie wartości 1 na 0.
Tak wygląda po zmianie:
Cytat:

enableWarnings = 1

[gamepacks\Trainz\plugins\IndexedMeshExport.dll]
{
buildNeighborArray = 0
forceTxtOverwrite = 0
defaultMaterialColor = 0
disableautobillboard = 1
}
[gamepacks\Trainz\plugins\ProgressiveMeshExport.dll]
{
buildNeighborArray = 0
forceTxtOverwrite = 0
defaultMaterialColor =0
disableautobillboard = 1
}
[gamepacks\Trainz\plugins\AnimationExport.dll]
{

}


Taki off!!!
Na sam koniec należy pamiętać że po zmianie tego pliku możemy exportować pliki tylko z selfilumination i by znów wysyłać zwyczajnie otexturowane modele do .im należy go przywrócić go do stanu przed zmianą!

Teraz ponownie włazimy do GMax'a do pliku z wkładkami swiateł , następnie do Material editora odpowiedniej textury, którą zastosowaliśmy i w "Bllin basic parameters" ustawiamy color w selfilumination na 255,255,255 (biały).
Exportujemy znów każda siatke do plików pb0.im pb1.im itd z tym ze nie nadpisujemy tamtych.

Na koniec zostało wszystko uwzglednic w configu.
Pokaże to na podstawie wpisów z EU06-01 z tym że akurat w niej końcówki czerwone to dalej corony!
Cytat:
mesh-table
{
default
{
mesh "4e_body/4e.lm"
auto-create 1

effects
{
pc0
{
kind "corona"
att "a.corona0"
texture-kuid <kuid:202789:101>
directional 1
object-size 0.1
}

pc1
{
kind "corona"
att "a.corona1"
texture-kuid <kuid:202789:101>
directional 1
object-size 0.1
}

tc0
{
kind "corona"
att "a.corona2"
texture-kuid <kuid:202789:101>
directional 1
object-size 0.1
}

tc1
{
kind "corona"
att "a.corona3"
texture-kuid <kuid:202789:101>
directional 1
object-size 0.1
}
}
}

pb0
{
mesh "4e_lamp/pb0.im"
}

pb1
{
mesh "4e_lamp/pb1.im"
}

pb2
{
mesh "4e_lamp/pb2.im"
}

tb0
{
mesh "4e_lamp/tb0.im"
}

tb1
{
mesh "4e_lamp/tb1.im"
}

tb2
{
mesh "4e_lamp/tb2.im"
}

l_pb0
{
mesh "4e_body/pb0.im"
auto-create 1
}

l_pb1
{
mesh "4e_body/pb1.im"
auto-create 1
}

l_pb2
{
mesh "4e_body/pb2.im"
auto-create 1
}

l_tb0
{
mesh "4e_body/tb0.im"
auto-create 1
}

l_tb1
{
mesh "4e_body/tb1.im"
auto-create 1
}

l_tb2
{
mesh "4e_body/tb2.im"
auto-create 1
}

shadow
{
mesh "shadow/shadow.im"
}

kabina
{
mesh "4e_body/4e_kab.IM"
auto-create 1
}

night
{
mesh "night/4e_kab.IM"
night-mesh-base "default"
}
}

... i tak... wpisy bez " l_ " to siatki meshów załączonych lamp natomiast zawierające "l_" np l_pb0 to siatki lamp zgaszonych.

Był to sposób jak to zrobić dla TC i niższych wersji Trainz. W TS2009 rozwiązano to dużo sympatyczniej i łatwiej. Tam sprawa wygląda tak że nie ma potrzeby exportować siatek z selfilumination. Wystarczy pierwszy export "czystych" lamp, a selfilumination zajmie się skrypt jaki dołącza się do modelu (np ten z mojego modelu SM31-050)
- 11-02-2010, 20:28
:
Interesuje mnie następująca rzecz. Ile poly mają tak wymodelowane lampy? (tzn. wszystkie submeshe + to z reflektorów co jest w siatce głównej). Mógłbyś przedstawić to na przykładzie cytowanego już modelu? Bo jeśli dobrze rozumiem to rozwiązanie jest typu "ciężkie" (względem tradycyjnego sposobu z coronami).
zgred - 11-02-2010, 20:37
:
W EU06-01 na wszystkie wkładki lamp przypada liczba 660 trójkątów. Same ich obudowy to już liczba 504 poly, czyli razem ponad 1100, więc nie powiem że jest to lekki sposób

To mocno zależne od autora jak tam sobie wymodeluje michy... wiec co model to bedzie inaczej.