.[ ČeskéHry.cz ].
3DSmax::reference::maxscript

 
odeslat nové téma   Odpovědět na téma    Obsah fóra České-Hry.cz -> Grafika
Zobrazit předchozí téma :: Zobrazit následující téma  
Autor Zpráva
VODA



Založen: 29. 07. 2007
Příspěvky: 1721
Bydliště: Plzeň

PříspěvekZaslal: 9. červenec 2008, 16:45:26    Předmět: 3DSmax::reference::maxscript Odpovědět s citátem

Ahoj lidi, řeším teď takový malý problém v maxu. Dejme tomu, že si 10x zkopíruji model jako REFERENCE. Což znamená, že někde v paměti je uložen jeden objekt a ty co vidím já ve scéně se na něj jen odkazují...
Zkrátka rád bych napsal exportní script scény, ale nechci exportovávat každý objekt zvlášť...to by zabralo moc času...
Pouze bych potřeboval na začátek vyexportovat referenční modely a potom se na ně pouze odkazovat...
Doufám, že mi rozumíte...neumím to moc vysvětlit... Wink
Díky za radu...
_________________
Opravdovost se pojí s trýzní...
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
tom.drin



Založen: 28. 07. 2007
Příspěvky: 65

PříspěvekZaslal: 9. červenec 2008, 19:55:07    Předmět: Odpovědět s citátem

Tak jsem hledal a zkoušel a přišel jsem na toto:
Maxkovi je celkem jedno jestli to kopíruješ jako instanci nebo referenci.
A samotný instance dostaneš takhle
kód:

InstanceMgr.GetInstances $pozadovany_objekt &instances

To ti vyplivne pole instances kde poslední objekt je ten prvně vytvořený.
Ono je to dost nešikovné, protože když to hodně pomícháš tak vlastně nepoznáš kterej objekt je ten první a který kopie.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
VODA



Založen: 29. 07. 2007
Příspěvky: 1721
Bydliště: Plzeň

PříspěvekZaslal: 10. červenec 2008, 06:00:22    Předmět: Odpovědět s citátem

Děkuji...
Jenom nevíš pro jakou verzi 3DS maxe to funguje...já mám doma starší Max a nějak tam tento instanceMgr chybí... Crying or Very sad
_________________
Opravdovost se pojí s trýzní...
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
VODA



Založen: 29. 07. 2007
Příspěvky: 1721
Bydliště: Plzeň

PříspěvekZaslal: 10. červenec 2008, 06:38:40    Předmět: Odpovědět s citátem

Tak taky jsem trochu pohledal a tato varianta fuguje i v GMAXu...

kód:
obj = $foo
bobj = obj.baseobject
robjs = refs.dependents bobj


No a robjs je pole všech instancí a referencí daného objektu ($foo)...
_________________
Opravdovost se pojí s trýzní...
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
tom.drin



Založen: 28. 07. 2007
Příspěvky: 65

PříspěvekZaslal: 10. červenec 2008, 16:09:36    Předmět: Odpovědět s citátem

Já to zprovoznil v Maxovi 9 - bohužel v helpu jsem se nedočet odkdy to tam je.
Každopádně tvoje řešení je elegantnější Wink
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
VODA



Založen: 29. 07. 2007
Příspěvky: 1721
Bydliště: Plzeň

PříspěvekZaslal: 11. červenec 2008, 06:31:05    Předmět: Odpovědět s citátem

No já používám GMAX a ten vychází asi z verze 3 nebo 4...
Ale na 3DS max mám Maxscript reference a zatím většina věcí je stejných jak v 3DSmaxu tak v GMAXu...

Jen pokud hledám nějakou radu na NETu musím upřesňovat na jakou verzi Maxe to potřebuji... Wink

Jinak jsem ten kók trochu upravil, takže pokud by se to někomu hodilo, zde je funkce vracející pole instancí (referencí) daného prvku:

kód:
fn getinstances obj =
(
      baseobj = obj.baseobject
      depobjs = refs.dependents baseobj
      objs = for Eobj in depobjs where
      (
            (iskindof Eobj node) and (baseobj == Eobj.baseobject) and (obj != Eobj)
      ) collect Eobj
      return objs
)



Ono to totiž může vrátit i instance na controllery a to mi nepotřebujeme...
_________________
Opravdovost se pojí s trýzní...
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Zobrazit příspěvky z předchozích:   
odeslat nové téma   Odpovědět na téma    Obsah fóra České-Hry.cz -> Grafika Časy uváděny v GMT + 1 hodina
Strana 1 z 1

 
Přejdi na:  
Nemůžete odesílat nové téma do tohoto fóra
Nemůžete odpovídat na témata v tomto fóru
Nemůžete upravovat své příspěvky v tomto fóru
Nemůžete mazat své příspěvky v tomto fóru
Nemůžete hlasovat v tomto fóru


Powered by phpBB © 2001, 2005 phpBB Group


Vzhled udelal powermac
Styl "vykraden" z phpBB stylu MonkiDream - upraveno by rezna