Cuneyt Ozdas Forum
Cuneyt Ozdas Forum
Home | Profile | Register | Active Topics | Members | Search | FAQ
Username:
Password:
Save Password
Forgot your Password?

 All Forums
 Türkçe - Genel
 Diger
 MaxScript propertyleri
 New Topic  Reply to Topic
 Printer Friendly
Author Previous Topic Topic Next Topic  

skate
Starting Member

Turkey
9 Posts

Posted - 13/10/2003 :  02:23:21  Show Profile  Visit skate's Homepage  Reply with Quote
Merhabalar,

MaxScript ile bir mesh exporter yazmaktayim. Birkaç sorum olucak.

Cylinder veya benzeri bir geometry'nin propertylerini inceledigimde radius, height v.s. bulabiliyorum. Ancak AngleAxis gibi bir property bulamadim. Daha dogrusu AngleAxis ile evirip çevirdigim bir objenin XYZ düzlemlerinde kaçar derece döndügünü bir türlü bulamadim. Vertexler üzerinden getVertexAngles'i bulabildim bir tek. Ondaki <vertlist> parametresini giremedigim için olsa gerek ondan da sonuç alamadim.

Soru 1 - Objenin world içerisindeki düzlemlerle yaptigi açilari nasil bulabilirim?

Bunlarin haricinde export ettigim datalar dogrudan getVert ile alinmis koordinatlar. Yani world koordinatlari.

Soru 2 - Ben objenin orta noktasini (ya da pivot noktasini) orijine tasiyarak export etmek istersem ne yapmam gerek? Daha açiklayici bir biçimde orta nokta ya da pivot noktayi nasil bulabilirim? Pivot classindan haberim var ancak tam olarak nasil kullanacagimi anlayamadim. Diyelim ki yarattim bir pivot nokta. Onu nasil mevcut objelerimden biriyle kullanacagim?

Bu arada MaxScript çok basit bir dil olmasina ragmen debug konusunda pek basarili gözükmüyor. (Sanki diger script dilleri çok basarili da). Listener haricinde step step çalistirma gibi bir sansim var mi?

skate
Starting Member

Turkey
9 Posts

Posted - 13/10/2003 :  17:41:32  Show Profile  Visit skate's Homepage  Reply with Quote
Klasik bir aceleci forum insani olarak kendi sorularimi yanitliyorum :)

1 - objelerin rotation propertysi varmis.

obj.rotation bir quad döndürüyor. [x,y,z,w] seklinde. Yani y ekseni üzerindeki rotasyonu "obj.rotation.y" seklinde alabiliyoruz.

2 - objelerin position ya da kisaca pos diye de kullanilabilen bir propertysi var. Bunu biliyordum ancak pivot noktalarina denk geldiginden emin degildim. Daha sonra baska neyine denk gelebilirki diye düsündüm ve... Uzatmaya gerek yok. obj.position ya da obj.pos [x,y,z] döndürüyor. Ayni sekilde "obj.position.x" x koordinati v.s.

Eger vertexleri orijine çekmek istersek mesh'e çevirip vertexlerin koordinatlarini tek tek alip onlardan objenin pozisyon koordinatlarini çikarmamiz yeterli olacaktir.

Debug konusundaki sorum hala geçerli yanit bekliyorum...
Go to Top of Page

Admin
Forum Admin

Turkey
649 Posts

Posted - 13/10/2003 :  18:05:04  Show Profile  Visit Admin's Homepage  Reply with Quote
Skate selam,
Senin cevabini okuduktan sonra ben de biraz baktim simdi max script'e..

rotation property'si aslinda rotation'i quaternion olarak veriyor. Quaternion dönüslerin animate (interpolate) edilebilmesi için 4D uzayda tanimlanan bir vektör aslinda. ilk üç deger (x,y,z) dönme eksenini veren bir 3D vektör. w ise bu eksen etrafinda ne kadar dönülecegini gösteriyor (ama açinin iki katinin kosinüsü seklinde).

Senin istedigin her bir ana eksen atrafinda ne kadar dönüldügü degeri Euler rotation olarak biliniyor. $.rotation property'si ile gelen degeri QuadToEuler fonksiyonundan geçirirsen her bir eksendeki dönüs degerini derece olarak alabilirsin.

debug konusuda maalesef ben de step step gitmenin bir yolunu bilmiyorum.

/Cuneyt
Go to Top of Page

skate
Starting Member

Turkey
9 Posts

Posted - 14/10/2003 :  16:18:45  Show Profile  Visit skate's Homepage  Reply with Quote
Biz de arkadaslarla tartistik w nedir diye. Ancak henüz arastirmamistik. Sayende gerek kalmadi. Nasilsa bir sekilde dönüsüm yapilirdi fakat QuadToEuler fonksiyonunu söyledigin anda olay bitmis oldu. Çok tesekkür ediyorum. Zaten classlari incelerken ihtiyacim olan seyin Quad cinsinden olmadigini anlamistim ancak convertion hakkinda hiçbir fikrim yoktu. Sanirim yakin zamanda senin yolundan gidip olayi C'ye geçirecem MAX'de. Çünkü su anda yalnizca basit bir exporter yapiyorum ve o bile kasiyo makineyi. Nedenine gelince çok fazla polyden olusan objeleri XML seklinde export etmek demek yüzlerce kilobytelik hatta megabytelik dosyalar create etmek demekki hemen hemen tüm script dilleri bu konuda yetersiz. Pure C rulez...

Merak ettigim ufak bir ayrinti daha var. C'den plugin yazdigimiz zaman MAX'in user interfacelerini kullanmak mümkün oluyor mu yine? Ya da daha komplekslestiriim soruyu. Hem Windows hem MAX API'lerini kullanmak mümkün mü? Birinden biri mi? Yoksa.. çok uzattim, soru anlasilmistir tahmin ediyorum :)
Go to Top of Page

Admin
Forum Admin

Turkey
649 Posts

Posted - 14/10/2003 :  17:02:26  Show Profile  Visit Admin's Homepage  Reply with Quote
Max'in interface'inin büyük bir bölümü kendileri de birer plugin olan modüller tarafindan sunuluyor zaten. Yani C++ ile plugin yazdigin zaman max'in tüm user interface'inin benzerlerini yapabilirsin. Bunun için pek güzel bir API'si mevcut. Ayrica user interface handling konusunda Win32 GDI API'sini de istedigin kadar kullanabilirsin, dilersen UI için max API'sini bypass bile edebilirsin birçok yerde.

/Cuneyt
Go to Top of Page

skate
Starting Member

Turkey
9 Posts

Posted - 15/10/2003 :  10:36:14  Show Profile  Visit skate's Homepage  Reply with Quote
Süpermis ne diim. Su anda exporteri acil olarak guisiz bir biçimde bitirmeye çalisiyorum. Birçok detayi var isin. Bu bittigi gibi ilk pluginimi yazicam C'den. Interface'i de olacak. Checkboxlar v.s. Hatta hatta su konustugumuz olayi test etmek açisindan belki bir kismini GDI, bir kismini MAX APIleriyle yazarim. Bi daha düsündüm de salakça da olabilir tabii :) Herneyse, tüm yardimlarin için çok tesekkür ediyorum Cüneyt '3d Guitarist' Bey :D

Saygilarimla,

Emir 'SkAt3' AKAYDIN
Go to Top of Page

Admin
Forum Admin

Turkey
649 Posts

Posted - 15/10/2003 :  12:52:27  Show Profile  Visit Admin's Homepage  Reply with Quote
Rica ederim

/Cuneyt
Go to Top of Page
  Previous Topic Topic Next Topic  
 New Topic  Reply to Topic
 Printer Friendly
Jump To:
Cuneyt Ozdas Forum © 2000 - 2003 Cuneyt Ozdas Go To Top Of Page
This page was generated in 0.08 seconds. Snitz Forums 2000