همکاری در ساخت پلاگین SnowSim BETA

LinkinForEver

مسئول بخش برنامه ها و مسائل گرافیک سه بعدی
سلام به همه ی دوستان عزیز
شروع کردم به نوشتن یک پلاگین برای تری دی مکس که میشه با اون برف رو شبیه سازی کرد .
خوب میرسیم به توضیح این پلاگین :
کار این پلاگین اینه که یک سطح برفی رو انیمیت کنه مثل قدم گذاشتن روی برف یا شن یا قل خوردن یک گلوله برف روی زمین برفی .
یک پلاگین به اسم SnowPrint این کارو انجام میداد اما :
1 . به سختی گیر میاد .
2 . قدرت انیمیت خیلی ضعیفه و خیلی خیلی سنگینه چون میاد قسمت های برخورد جسم رو با یک مپ Displacement درست میکنه و کلا بدرد نمی خوره .

تا لان تایه جاهاییش رو نوشتم ولی از دوستان کمک میخوام تا اگه کسی برنامه نویسی بلده حالا یا C++ یا مکس اسکریپت بیاد و کمک کنه این پلاگین رو کامل و در اختیار دیگران
قرار بدیم تا استفاده کنند .

یک نمونه فیلم از شبیه سازی این پلاگین رو می زارم ( تاجای که نوشته شده اینجوریه )
 

پیوست ها

  • _scene.rar
    525.3 کیلوبایت · بازدیدها: 122

nc_hamid

Member
سلام
من تا حدودی مکس اسکریپت کار کردم شاید بتونم کمک کنم.
تستت رو دیدم به نظرم که خیلی خوب بود. چه مشکلی هست ؟
از ابزاری توی مکس می خوای استفاده کنی (مثلا FFD , Displace ,Noise) یا نه کلا داری Collision Detection کار می کنی ؟ ( محاسبه بر اساس فاصله Vertex ها)
 

LinkinForEver

مسئول بخش برنامه ها و مسائل گرافیک سه بعدی
سلام
من تا حدودی مکس اسکریپت کار کردم شاید بتونم کمک کنم.
تستت رو دیدم به نظرم که خیلی خوب بود. چه مشکلی هست ؟
از ابزاری توی مکس می خوای استفاده کنی (مثلا FFD , Displace ,Noise) یا نه کلا داری Collision Detection کار می کنی ؟ ( محاسبه بر اساس فاصله Vertex ها)

محاسبه ی ارایه های ورتکسیه ، میاد محاسبه میکنه که توی هر فریمی جسم های برخورد کننده کجان و بعد اون ها رو با حالت منفی رو جسم یا سطج Conform میکنه بعد میاد تک تک فریم هارو Cache میگره
و در آخر اون هارو باهم Vetex Blend میکنه .
هنوز خیلی نقص داره و لی قابلیت های زیادی گذاشتم مثل Noise و Diplacement اما این ها ماکرو نیستند خودم نوشتم یعنی اماده نبودن و اینکه از نظر کاری هم ماکرو نیست پلاگینه Dlo ....
شما میتونی اینکار هایی که گفتم رو با ماکرو انجام بدی چون کار خیلی سبک میشه و تو هر ورژن مکس کار میکنه ؟؟؟
 

nc_hamid

Member
من فقط با مکس اسکریپت کار کردم .
ایده ای که گفتی رو می شه با مکس اسکریپت کار کرد .
شما خودت با c++ کار کردی ؟
 

LinkinForEver

مسئول بخش برنامه ها و مسائل گرافیک سه بعدی
من فقط با مکس اسکریپت کار کردم .
ایده ای که گفتی رو می شه با مکس اسکریپت کار کرد .
شما خودت با c++ کار کردی ؟
تا حدودی تا همین جاش رو با c++ نوشتم .
اره میشه شما میتونی ؟
 

nc_hamid

Member
به نظرم شدنیه .
خیلی عالیه که با C++ کار می کنی . کارت درسته
شما که اینقدر مسلطی فکر کنم آموزش Advanced MaxScript مال CG Academy رو یه دور نگاه بندازی همه چیز میاد دستت .
کار Game می کنی ؟
 

LinkinForEver

مسئول بخش برنامه ها و مسائل گرافیک سه بعدی
به نظرم شدنیه .خیلی عالیه که با C++ کار می کنی . کارت درستهشما که اینقدر مسلطی فکر کنم آموزش Advanced MaxScript مال CG Academy رو یه دور نگاه بندازی همه چیز میاد دستت . کار Game می کنی ؟
واسه بازی اره رفیق با چند موتوری کار کردم .بیشتر تو زمینه ی هوش مصنوعی و شیدر و ...اما نه اصلا تسلط ندارم اصلی ترین مشکل الان اونجاست که هر کار میکنم فقط میتونم واسه مکس 4 قدیمی پلاگینمو بیلد کنم .
 
آخرین ویرایش:

LinkinForEver

مسئول بخش برنامه ها و مسائل گرافیک سه بعدی
دوستان این کار خیلی جالبیه ولی قبل از اینکه شروع کنید اینو دیدید که ؟ http://www.scriptspot.com/3ds-max/scripts/snowflow-make-snow-with-the-click-of-a-buttonیه وقت کاری که قبلا انجام شده رو انجام ندید ! SnowFlow پلاگین محشریه و فکر نمیکنم چیزی کم داشته باشه
سلام بر استاد گرامی خیر وجود ندارهمن تا ته این پلاگین رو رفتم و بالا هم گفتم SnowPrint که بخشی از همین SnowFlow محسوب میشه چجوریه و ضعیفه !!!من چون خودم اینکارو نیاز داشتم خیلی تحقیق کردم دیدم چیزی نیست بنابراین تصمیم گرفتم که خودم یک پلاگین با این ایده بسازم .اگر خدا بخواد و کامل بشه میتونم واسه انتشارش روی شما حساب کنم ؟؟؟
 

nc_hamid

Member
واسه بازی اره رفیق با چند موتوری کار کردم .بیشتر تو زمینه ی هوش مصنوعی و شیدر و ...اما نه اصلا تسلط ندارم اصلی ترین مشکل الان اونجاست که هر کار میکنم فقط میتونم واسه مکس 4 قدیمی پلاگینمو بیلد کنم .
متاسفانه منم اصلا چیزی از c++ و sdk نمی دونم اما با توضیحاتی که در مورد نحوه عملکرد ش گفتی می دونم که این کار تو مکس اسکریپت شدنیه . مکس اسکریپتم دیگه مشکل ورژن نداره ماکرو کردنشم که یه خط اضافه کردن به برنامست.
اما فکر کنم پردازشش سنگین باشه .
 

LinkinForEver

مسئول بخش برنامه ها و مسائل گرافیک سه بعدی
متاسفانه منم اصلا چیزی از c++ و sdk نمی دونم اما با توضیحاتی که در مورد نحوه عملکرد ش گفتی می دونم که این کار تو مکس اسکریپت شدنیه . مکس اسکریپتم دیگه مشکل ورژن نداره ماکرو کردنشم که یه خط اضافه کردن به برنامست.
HTML:
اما فکر کنم پردازشش سنگین باشه .

عالیه پس شروع میکنیم شما اماده ای که بگم قضیه چیه ؟
 

LinkinForEver

مسئول بخش برنامه ها و مسائل گرافیک سه بعدی
آره حتما
خوشحال میشم بتونم کمک کنم

خوب اول باید بتونیم یک اسکریپت بنویسیم که موقعیت هر کدوم از ورتکس ها رو توی هر فریم توی یک فایل سیو کنه و بتونه دوبار فراخوانیش کنه . ( به عبارتی از جسم کش بگیره)
 

nc_hamid

Member
روش کار می کنم انشا الله بتونم کمک کنم .
خواستم با خود Point Catch خود max کار کنم اما فکر نکنم به جایی برسم..
 

LinkinForEver

مسئول بخش برنامه ها و مسائل گرافیک سه بعدی
روش کار می کنم انشا الله بتونم کمک کنم .
خواستم با خود Point Catch خود max کار کنم اما فکر نکنم به جایی برسم..

هیچ اشکالی نداره رفیق خودم با چند تا فرمول ریازی ساختم !!!

موفقیــــت !!!!!!!! هـــــــــــــــــورااااا !
حالا دارم رو فرا خوانیش کار میکنم
 

LinkinForEver

مسئول بخش برنامه ها و مسائل گرافیک سه بعدی
تا یک ربع دیگه اولین نسخه ی MeshBaker رو که نوشتم میذارم .
 

LinkinForEver

مسئول بخش برنامه ها و مسائل گرافیک سه بعدی
بفرما رفیق یه تستی بزن باگ هاش رو رفع کنیم .

فایل های خروجی این رو اینجوری تنظیم کردم ببین خوبه :


------------------------------------------------
H13 MeshBaker For SnowSim BETA
------------------------------------------------

Frame Number : 8f

Time From : 0
Time To : 100

Animation Name : Walk - Animation

Vertex Count : 8

------------------------------------------------

Vetex Data :
[-13.4131,-33.3531,0.843954]
[20.3843,-26.1703,0.0897176]
[-12.4287,6.64267,-0.187019]
[22.0783,8.33665,0.0849018]
[-12.0161,-38.0982,31.5543]
[56.2011,-29.2981,33.1462]
[-14.0929,14.7975,35.3325]
[19.9093,6.16769,34.5919]​
 

پیوست ها

  • MeshBuilder BETA Version 0.14 By H13.zip
    4.3 کیلوبایت · بازدیدها: 15

nc_hamid

Member
سلام
من تو مکس 2013 Run کردم فایل ها ساخته شد اما آخرش یه Error داد فکر کنم وقتی Loop رو بستی برای فریم آخر یه اشکال هست فکر کنم باید تا یه فریم قبلتر انجام بدی .
به جای یک فایل به تعداد فریم ها فایل ساخت همه هم مثل هم . اینم فکر کنم باید از تو Loop در بیاد آخر درست شه .اما فایل ها رو که نگاه کردم درست ذخیره شده بود.
یه اشکال دیگه : برا من Range رو نمی گرفت تا 500 فریم می رفت ! اینجا هم یه اشکال کوچیک هست .
سرعت کار خیلی پایین بود . من کار مشابه اینو با مکس اسکریپت خیلی خیلی سریعتر انجام می دم. اما مشکل من زمانی ایجاد می شه که یه Modifier به جسم اضافه بشه که دیگه اعداد درست نیستند.
یه نکته خیلی خیلی مهم : خروجی رو Xml بگیر تا 10 برابر سریعتره.
خیلی هم سادست فقط یه Root داره با یه سری زیر مجموعه .
http://paulneale.com/tutorials/dotNet/xml/xmlReading.htm
در مجموع OK ه . به هدف اصلی رسیدی . تبریک !
 
آخرین ویرایش:

جدیدترین ارسال ها

بالا