Symulator EU07 (i nie tylko) > Na warsztacie

 Skrypty do 3ds max

<< < (80/92) > >>

Siecool:

--- Cytat: ISDR w 10 Grudnia 2013, 19:54:25 ---Istnieje rozwiązanie. Wchodzimy w plik ScnExp.ms i odszukujemy linijkę dotyczącą eksportu "linii" - powinna być 591.
Przerabiamy funkcję na coś takiego:

--- Kod: ---pt= getKnotPoint splObj 1 1
Format ("% ") (formattedPrint (-pt.x) format:".3f" ) to:ostream
Format ("% ") (formattedPrint (pt.z) format:".3f") to:ostream
Format ("%  %  //point 1\n") (formattedPrint (pt.y) format:".3f") (getUserProp splObj "Roll1") to:ostream

--- Koniec kodu ---
Analogicznie reszta. Trzeba też poprawić eksport trakcji, mesh itd... wszystko.
Zrobiłbym to sam ale nie mam kompletnie czasu na to. Jakby się chętny znalazł to podrzucić.
--- Koniec cytatu ---
Czy ktoś ma koncepcję, czy i ewentualnie w jaki sposób dałoby się tą metodę wykorzystać do eksportu include i modeli z dokładnością do 0.001?

Benek:
A odnalazłeś funkcje, które eksportują te obiekty? Specyfikator

--- Kod: ---.3f
--- Koniec kodu ---
sugeruje, że będzie eksportowana liczba zmiennoprzecinkowa z trzema cyframi po przecinku.

Siecool:
Właśnie nie za bardzo. Nie mam pojęcia o składni skryptów i szczerze nie mam za bardzo czasu i chęci, aby ten temat zgłębiać - wolę pogrzebać zamiast tego przy scenerii. Szukałem w "scmexp" słowa "include" ale jedyne znajduje się przy eksporcie sieci trakcyjnej. Z kolei "ExportString" jest kilka i żadna nie wygląda podobnie, do tego co napisał ISDR, nie mówiąc o tym, że nie wiem co one dokładnie eksportują (include, modele czy diabli wiedzą co jeszcze). Stąd pytanie do kogoś, kto ma te skrypty w małym palcu i rozwiązanie problemu zajmie mu chwilę.

ISDR:
To nie jest takie skomplikowane. Bierzemy plik ScnExp.ms i otwieramy. Odszukujemy linijkę 1238:

--- Kod: ---str= (getUserProp ptObj "ExportString")
--- Koniec kodu ---
Tu skrypt pobiera do zmiennej str ciąg znaków od właściwości obiektu(User Defined), przykładowo:

--- Kod: ---include;otoczenie\obiekty_stacyjne\nastawnia_opuszczona.inc;%;%;%;%;%;;;;;end //Passive
--- Koniec kodu ---
Następnie w linijce 1244 podmienia % na konkretne dane:

--- Kod: ---ptObj.name (-ptObj.pos.x) ptObj.pos.z ptObj.pos.y ptObj.rotation.z_rotation
--- Koniec kodu ---
Na końcu zapisuje do pliku czyli to:ostream

Siecool:
Po naprowadzeniu przez ISDR udało się problem rozwiązać - w linijce 1244 trzeba zmienić te parametry na
--- Kod: ---ptObj.name (formattedPrint (-ptObj.pos.x) format:".3f" ) (formattedPrint (ptObj.pos.z) format:".3f") (formattedPrint (ptObj.pos.y) format:".3f") ptObj.rotation.z_rotation
--- Koniec kodu ---

Nawigacja

[0] Indeks wiadomości

[#] Następna strona

[*] Poprzednia strona

Idź do wersji pełnej
Powered by Advanced Topic Prefix Pro
Powered by SMFPacks Likes Pro Mod