- Symulator MaSzyna -
Symulator EU07 (i nie tylko) => Pomoc w tworzeniu => Wątek zaczęty przez: BLE_Maciek w 26 Września 2009, 16:10:58
-
Witam.
Przy eksporcie do T3D w Gmaksie, następuje efekt podobny jak tu już opisywano, niektóre obiekty zostają dziwnie obrócone a czasem też i przesunięte. Znalazłem wątek (http://eu07.pl/forum/index.php/topic,1923.0.html) w którym opisane jest jak temu zaradzić w 3D Studio. Niestety w Gmaksie w menu "Graph Editors" nie ma opcji "New Schematic View". Jest jakiś sposób żeby ustawić tę hierarchię obiektów? W menu "hierarchy" po prawej stonie nie widać nic odpowiedniego do tego celu.
A tak swoją drogą to czy ktoś doszedł do tego co powoduje to dziwne rozsypywanie? Czy to wina gmax/3ds?
Mam też pytanie dotyczące samego formatu T3D: Co oznaczają parametry znajdujące się w sekcji "Transform:", zaraz po nagłówku obiektu? Czy zmieniając wartości w niej można dany obiekt obrócić, przesunąć, skalować w danej osi?
Z góry dzięki za odpowiedzi.
-
A tak swoją drogą to czy ktoś doszedł do tego co powoduje to dziwne rozsypywanie? Czy to wina gmax/3ds?
Symulator jest tak skonstruowany, ze w danym modelu pierwszy submodel ma miec Parent: none
a pozostale musza byc 'podpiete' pod niego.
Czy zmieniając wartości w niej można dany obiekt obrócić, przesunąć, skalować w danej osi?
Dokladnie tak.
-
A co do hierarchii to w gmaxie z tego co pamiętam używało się ikonki "Select and Link" czy coś takiego (symbol łańcuszka łączącego dwa kwadraciki na górze w menu) i po wybraniu tej opcji metodą "przeciągnij i upuść" przypisywało się do siebie poszczególne obiekty.
-
Faktycznie, pomogło, modele już się nie rozsypują, dzięki!
Dziwną rzeczą jest jednak że wtedy wszystkie części modelu robią się białe, ratuje je tylko teksturowanie. :-( Parametry ambient, diffuse i specular są ignorowane. No ale najważniejsze że wszystko jest w całości.
Co do "Transform:" to udało mi się odkryć że da się wykonać tylko skalowanie i przesuwanie. Obrotów nie, zresztą zawartość
1.0 0.0 0.0 0.0
0.0 1.0 0.0 0.0
0.0 0.0 1.0 0.0
0.0 0.0 0.0 1.0
jaka jest w zlinkowanych do głównego obiektach, sugeruje że jest to prawdopodobnie macierz przez którą mnożone są współrzędne verteksów.
Udało mi się odkryć co następuje:
- zmiana wartości na przekątnej głównej w pierwszych trzech rzędach skaluje obiekt odpowiednio w danej osi
- zmiana wartości w dolnym rzędzie w pierwszych trzech kolumnach powoduje odpowiednie przesuwanie obiektu
- zmiana wartości w rzędzie 4 kolumnie 4 powoduje skalowanie całego obiektu odwrotnie proporcjonalnie - mniejsza wartość to większy obiekt
- zmiana w dowolnym innym miejscu deformuje obiekt zupełnie - jest bezużyteczna
-
Odnosnie wartosci w rzedzie 4 kolumnie 4:
1.0 0.0 0.0 0.0
0.0 1.0 0.0 0.0
0.0 0.0 1.0 0.0
0.0 0.0 0.0 1.0
Niech pogrubiona wartosc to x. Wtedy kazda liczba z tej macierzy jest tak na prawde mnozona przez 1/x.
zmiana w dowolnym innym miejscu deformuje obiekt zupełnie - jest bezużyteczna
Nie, trzeba po prostu wiedziec co gdzie wpisac. Przykladowo w celu obrotu musisz ta macierz przemnozyc (ja robie to w Excelu) przez macierz obrotu i wpisac otrzymana macierz w miejsce starej. Mozesz takze laczyc rozne operacje. Na przyklad najpierw mozesz obrocic obiekt o 90* wokol osi OX, a potem przeskalowac go 2-krotnie wzdluz osi OZ. W tym celu musisz wymnozyc ta macierz:
1.0 0.0 0.0 0.0
0.0 1.0 0.0 0.0
0.0 0.0 1.0 0.0
0.0 0.0 0.0 1.0
przez macierz obrotu. Otrzymana macierz pomnoz przez macierz skalowania, a otrzymana tablice wpisz do pliku z modelem.