با سلام
می خواستم بدونم چطور می تونم بفهمم یه آبجکت مثلا یه مکعب نسبت به فریم قبل خودش چند درجه به صورت محلی حول سه محور چرخیده
Printable View
با سلام
می خواستم بدونم چطور می تونم بفهمم یه آبجکت مثلا یه مکعب نسبت به فریم قبل خودش چند درجه به صورت محلی حول سه محور چرخیده
مکس اسکریپت مبحث سختیه ...... من خودم خوب بلد نیستم اما یه چیزایی می دونم .... می خواستم بدونم چرا لازم داریش... ؟؟؟
اگه می شه با ابزارهای مکس این کار رو کرد لزوم نداره از اسکریپت استفاده کنی ....
میشه یکی توضیح بده که اصلا این مکس اسکریپت به چه دردی میخوره ؟
یکی میگفت جاهای پیچیده که طراح نمیتونه بسازه رو با برنامه نویسی میسازه !
این مکس اسکریپت چیزی است بسیار خفن که اگه نبود من خیلی کارایی که تا حالا کردم رو نمی تونستم انجام بدم
ببینید مطمئنا این کاری رو که من گفتم رو نمی شه بدون مکس اسکریپت نوشت
پسرم اگه اسکریپ زیادی یاد داری اینو برام بساز ................
یه اسکریپت بنویس که یه مجموعه ابجکت رو بصورت رندوم Rotate, move scale کنه ....... همین .. فک کنم از برات ساده باشه
مکس اسکریپت برای رفع نواقص و ساخت ابزارهای جدید یا حتی سرعت بخشیدن به کار طراحی شده
برای کار با اون باید برنامه نویسی یاد بگیرید ضمن اینکه هلپ مکس هم خیلی کامله
چه شئی رو بسازه؟
چی شد آقای برنامه نویس ...... ندادیش .... اسکریپتو...!!!!!!1
این مکس اسکریپت انقدر خفنه که خدا می دونه!!!
مثلا قسمت ریگینگ بد جوری با مکس اسکریپت کامل ویشه و خفنه و کسی نموتونه ادعای ریگ بکنه مگر اینکه مکس اسکریپت بلد نباشه!!!
فکر می کنم کلی پلاگین است که با مکس اسکریپت نوشته شده...
به هر حال هم خیلی خفنه و هم پیچیده!!!
استاد پرسیدم چه چیزی رو می خواید به صورت رندم بسازید یکم بیشتر توضیح بدید تا بنویسمنقل قول:
البته قرار بود یه نفر دیگه برای من یه اسکریپت بنویسه اما خوشحال میشم کمک کنم
سلام
والا من منظورتون رو نفهمیدم که چی گفتید شما می خواهید وقتی یه جسم رو روتیت یا موو یا اسکایل میکنه بدونید چقدر و در چه محوری حرکت کرده؟یا می خواهی یه اسکریپ بنویسی که بشه سه کار موو رتیت و اسکایل رو با هم انجام بده؟
باتشکر
خوب فکر کنم یه هم چین مدلی باشه:
آبجکت 1 به ابجکت 2 برخورد میکنه و باعث پرتاب شدن و چرخشه 2 میشه.
البته همه میدونن که این کار در سطوح بالای انیمیشن انجام میشه
ولی هر اوجی دارای یک نقطه شروع هست .
خوب فکر کنم اون دنباله راهنمایی و کمک برای شروع هست .اگه میتونی کمکش کن چون فکر کنم پشتکار داره بره دنبالش!
ببینید مثلا یه باکس تو مکس می کشیم بعد سیستم چرخش رو محلی انتخاب می کنیم و همینطور مقداری حول سه محور اون رو روتیت می دیم و می چرخونیم حالا می خوایم یه اسکریپت بنویسیم که ببینیم چند درجه چرخیده
جیگر مثلا من 100 تا بکس کنار هم کپی کردم به صورت 10 * 10 اون وقت میخوام این 100 تا باکس عین هم نباشن...... یعنی هر کدو به صورت رندم حول یه محور محلی rotate شن ...:11:
اگه میخوای فقط خودت بدونی چقدر تغییر کرده که نیازی به مکس اسکریپت نیست...ولی اگه میخوای تو تابع خاصی ازش استفاده کنی یکی از properties های هز جسم همین موقعیت مکانیش هست...کافیه یه متغیر تعریف کنی و مساوی با اون properties قرار بدی..تو هلپ مکس نشون داده چطوری میتنی بهش دسترسی داشته باشی....
ببنید اولا که من دارم یه مکس اسکریپت می نویسم که تو اون برنامه به این موضوع احتیاج دارمنقل قول:
دوما اینکه چیزی که تو مشخصات یه جسم هست میزان چرخش جهانیه اون هست چرخش محلی فقط در حالتی که داره تغییر می کنه نشون داده می شه و بعد صفر می شه
خوب بايد بگم كه مكث اسكريپت در حالت كلي كارها رو ساده مي كنه و خيلي از كارهايي كه با دست خيلي وقت گيره و نمي شه به طور دقيق در اورد رو مي شه با اون انجام دارد...............و در مبحث ريگينگ هم خيلي كاربرد داره..........مي توني با استفاده از اون و اسپيلاينها و ماديفاير به راحتي كاراكتر رو كنترل كني.............حتي در نور پردازي هم كاربرد داره و به طور كلي يك مكمل خيلي قوي واسه مكثه..........ولي حتي بدون اون هم ميشه همه كارهايي رو كه عقلانيه انجام داد..................مگه اينكه يه چيزي به ذهن خودت برسه كه مثلا يك سري ابزارهاي خاص تعريف كني..............مثلا همينطور كه فرزاد جان گفت گسترش رندومي يك سري اجسام........كه با دست خيلي خيلي وقت گيره و دقيق هم نمي شه.............و در اخر هم بايد بگم خيلي خيلي خوفه....دي
مثل اینکه اینجا کسی جواب سوال ما رو نمی دونه
بابا ما که ادعا اسکریپت نداریم........ شما چی می تونی جواب منو بدی..؟؟؟
اینم اسکریپتنقل قول:
rollout randombox "randomboxes" width:198 height:87198 87
(
label lbl1 "number of boxes:" pos:[7,13] width:85 height:15
edittext txt1 "" pos:[110,11] width:57 height:18
button btn1 "Button" pos:[43,47] width:104 height:28
on btn1 pressed do
(
for i=1 to txt1.text as integer do
(
x=random 1 100
y=random 1 100
z=random 1 100
Box lengthsegs:1 widthsegs:1 heightsegs:1 length:20 width:20 height:20 mapcoords:on pos:[x,y,z] isSelected:on
x=random 1 360
y=random 1 360
z=random 1 360
rotate $ (angleaxis x [1,0,0])
rotate $ (angleaxis y [0,1,0])
rotate $ (angleaxis z [0,0,1])
)
)
)
createDialog randombox 198 87
فکر کنم بلد باشی اجراش کنی مگه نه؟
خوب برای حرکتش یه راهی هست به اسم freez transform...دکمه alt رو نگه دار و روی جسمت کلیک راست کن....در این حالت ما دوتا چرخش داریم..یکیش که مبداش جهانیه..و دومی که مبداش هر جا که جسم باشه و به هر سمتی که باشه.........
حالا کافیه که تو مکس اسکریپت به دومی دسترسی پیدا کنی...فقط من نمیدونم چطوری میشه دسترسی پیدا کرد..فقط در حد ایده بهت گفتم..این کار رو برای ریگ کردن زیاد استفاده میکنم...چون اونجا هم مشکل چرخش بر اساس معیار جهانی مکس هست..ولی با این کار حل میشه.... بگرد از هلپ مکس احتمالا پیدا میکنی روش دسترسی بهش رو...
:31: یعنی با این حرفاتون می گید من می خوام برم تو مکس اسکریپت برای چرخش محلی برنامه بنویسم بعد نمی دونم چطور باید چطور سیستم چرخش یه شی رو تغییر بدم :41:نقل قول:
age mikhay cordinate ro avaz koni mitoni az dastorate zir estefade koni
in coordsys grid about coordsys rotate $ 45 Z_axix
in coordsys Local about coordsys rotate $ 45 Z_axix
dastorate bala jesme entekhab shode ro hole mokhtasate gride ya local micharkhonan
age mikhay hole mehvare morede nazare khodet jesm ro becharkhoni aval mitoni az direction estefade koni ( masalan $.dir=[0,1,0]) OOOOOOOOOOOOO
vali donestane direction morede nazar vaghti dar do jahat bashe sakhte, behtarin rah dar in mavaghe estefade az yek ya do jesm baraye dashtane direction ast. masalan do point ijad konid ta yek jesm ra dar rastaye in 2 point becharchonim
dir=normalize ($point01.pos - $point02.pos)
rotate $ 20 dir
hala harbar point haro jabeja konid va jomle akhar ro dobare ejra konid va natije ro bebinid
البته من می خواستم بدونم مثلا از فریم 40 تا 41 چند درجه چرخیده
از شما هم ممنونم بخاطر پاسختون
البته من خودم راهش رو پیدا کردم