max script راهنمایی کنید

پرواز

Member
سلام به دوستان الاخصوص دوستان اسکریپت کار:rose::rose:
باز مثل همیشه مشکلم به دست شما باز میشه
من میخواهم که برنامه ای بنویسم که بوسیله ان در فریم اول اسپیلان (line01) از نقطه مورد نظر(point01) اغاز و مثلا در فریم 10 در نقطه مورد نظر (point01) به پایان برسد
یعنی بین دو نقطه مورد نظر انیمات شود

راههایی را رفتم اما به بن بست خوردم
در حالت اسپیلان که اصلا نتوانستم ورتکسهای مورد نظر رو انتخاب کنم
در خالتی هم پلانی ساختم و ورتکسهاشو جابه جا کردم ولی در تبدبل شدن به اسپیلاین انیماتشو از دست میداد و مشکلات دیگه....
چقدر داد بزنم اموزش اسکریپت رو تو مجید انلاین شروع کنید ..ای خداا:rose::rose:
 

arminAnim

کاربر متخصص
برای انیمیت از دستور زیر می تونی استفاده کنی
HTML:
animate on
(
at time 0 ( ... )
at time 20 ( ... )
)
برای انیمیت کردن ورتکس های اسپیلاین هم لازم نیست انتخاب بشن کافیه شماره ی ورتکست رو فراخوانی بکنی و دستور جابجایی ورتکس اسپیلانت رو روش اعمال کنی یا جای نقطه چینای بالا بذاری، که من الان پیدا نکردم ، پیدا کردم برمی گردم البته دوستان هم هستن الان میان کمکمون

 

پرواز

Member
برای انیمیت از دستور زیر می تونی استفاده کنی
HTML:
animate on
(
at time 0 ( ... )
at time 20 ( ... )
)
برای انیمیت کردن ورتکس های اسپیلاین هم لازم نیست انتخاب بشن کافیه شماره ی ورتکست رو فراخوانی بکنی و دستور جابجایی ورتکس اسپیلانت رو روش اعمال کنی یا جای نقطه چینای بالا بذاری، که من الان پیدا نکردم ، پیدا کردم برمی گردم البته دوستان هم هستن الان میان کمکمون

سلام:rose::rose::rose:
اگه منظورت فرمان move در مکس اسکریپته جای نقطه چین بزارم خب مشکل اینجاست که کل اسپیلاین حرکت میکنه نه اون ورتکسه باس کاری کرد که ورتکسه جابجا شه:cry:
یه کارایی رو کردم اما اخرش به بن بست خوردم سعی میکنم جم و جورشون کنم بعد بفرستم تا شما دوستان رفع عییبش کنید ولی
بازم راهنمایی کنید
 

پرواز

Member
راستی با سرچ کلمات کلیدی animate Vertex line تو هلپ اسکریپت مکس یه چیزایی میده ولی خب اعتراف میکنم چیزی نمیفهمم
این هلپ اسکریپت مکس برای من بر خلاف هلپ خود مکس خیلی نا مفهومه
 

arminAnim

کاربر متخصص
نه نباید کل لاین رو حرکت بدی.. نصف قضیه رو حل کردم،اینم دستور جابجایی ورتکس های شیپ:
HTML:
SetKnotpoint <shape> <spline_index_integer> <Knot_index_integer> <point3>
توضیح : بجای shape میذاری مثلا shape01 $، یا در صورتی که شیپت انتخابه می نویسی $

spline_index_integer شماره ی شیپ زیرمجموعه است، مثل المنت توی پلی، شیپ هم می تونه تیکه های مختلف باشه که شما اینجا شماره ی اون شیپ زیرمجموعتو می ذاری، اگر کل شیپت یه تیکه است کافیه فقط 1 رو بجاش بنویسی

Knot_index_integer هم شماره ی ورتکسیه که قراره جابجا بشه

point3 هم موقعیت جدید ورتکست هست ، مثلا [10,10,0]

حالا اگر بخوای ورتکس 1 و 2 شیپت رو جابجا کنی دستورش این می شه:
HTML:
SetKnotpoint  $shape01 1 1 [10,10,0]
SetKnotpoint  $shape01 1 2 [20,20,0]
updateshape $shape01
متاسفانه این دستور فقط ورتکس رو جابجا می کنه ولی انیمیتش نمی کنه... بازم دارم می گردم!!
 

پرواز

Member
واقعا دستت درد نکنه
اره تا اینجا طلسم حرکت ورتکس شکست
اما راست میگی چرا انیمات میشه
این اتو دسک کل هم غمش مدل و مدلسازی و پولی هست با دو بعدی چرا اینجوری میکنه خب
 

Elton John

Member
فعلا جایی هستم که زیاد به اینترنت دسترسی ندارم
اسکریپتهایی که آقا arminanim گذاشتن حالت ساختاری دارن نه انیمیشن

اسکریپت رو اینجا گذاشتم
موفق باشید

کد:
myOBJ1 = $line01
animateVertex myOBJ1  #all
num_point_sp1 = numKnots myOBJ1 1
my_point1 = [10,-100,5]
my_point2 = [105,-45,0]
for Young_animator = 1 to num_point_sp1 do
(--start for
 myst1 = Young_animator as string
 myst2="myOBJ1"
 
  execute (     (myst2 +".Spline_1___Vertex_" + myst1 + ".controller = Point3_XYZ ()" )    )
)--end for
animate  on
(--start anim
 at time 25 ( myOBJ1.Spline_1___vertex_1.controller.x =my_point1.x ; myOBJ1.Spline_1___vertex_1.controller.y =my_point1.y ; myOBJ1.Spline_1___vertex_1.controller.z =my_point1.z;)
 at time 25 ( myOBJ1.Spline_1___vertex_2.controller.x =my_point2.x ; myOBJ1.Spline_1___vertex_2.controller.y =my_point2.y ; myOBJ1.Spline_1___vertex_2.controller.z =my_point2.z;)
)--end anim
 

arminAnim

کاربر متخصص
ممنون انیماتور جوان، نتونستم این دستور دسترسی رو پیدا کنم
 

پرواز

Member
فعلا جایی هستم که زیاد به اینترنت دسترسی ندارم
اسکریپتهایی که آقا arminanim گذاشتن حالت ساختاری دارن نه انیمیشن

اسکریپت رو اینجا گذاشتم
موفق باشید

کد:
myOBJ1 = $line01
animateVertex myOBJ1  #all
num_point_sp1 = numKnots myOBJ1 1
my_point1 = [10,-100,5]
my_point2 = [105,-45,0]
for Young_animator = 1 to num_point_sp1 do
(--start for
 myst1 = Young_animator as string
 myst2="myOBJ1"
 
  execute (     (myst2 +".Spline_1___Vertex_" + myst1 + ".controller = Point3_XYZ ()" )    )
)--end for
animate  on
(--start anim
 at time 25 ( myOBJ1.Spline_1___vertex_1.controller.x =my_point1.x ; myOBJ1.Spline_1___vertex_1.controller.y =my_point1.y ; myOBJ1.Spline_1___vertex_1.controller.z =my_point1.z;)
 at time 25 ( myOBJ1.Spline_1___vertex_2.controller.x =my_point2.x ; myOBJ1.Spline_1___vertex_2.controller.y =my_point2.y ; myOBJ1.Spline_1___vertex_2.controller.z =my_point2.z;)
)--end anim
:oops::oops:
دستت طلا
مرسی
این پله اول
اما پله دوم باس اسکریپت شما رو مقداری تغییر بدم که تا اونی رو میخوام دقیقتر انجام بده
اما باس یه کار بشه
اینکه یکم در موردش بخصوص
at time 25 ( myOBJ1.Spline_1___vertex_1.controller.x =my_point1.x ; myOBJ1.Spline_1___vertex_1.controller.y =my_point1.y ; myOBJ1.Spline_1___vertex_1.controller.z =my_point1.z;)
توضیح بدین تا هم بفهممش هم تغییرش بدم
در هر صورت خیلی دوست دارم تا این اسکریپتهایی رو که کمکم میکنید اساسی یاد بگیرم فقط کوپی پیس نکنم
من از اسکریپت این کار رو میخوام

من میخواستم که دوتا پوینت از نوع هلپر point
creat/helper/ point
همونی که تو ویپورت به شکل بعلاوه است رو در محیط بزارم و با اجرا شدن اسکریپت لاین از نقطه و مختصات اول شروع بشه و در نقطه دو پایان بیابه
اسکریپت شما رو کمی بهش اضافه کردم خواستم اینو در بیارم اما

PHP:
mmm = $point01.pos
nnn = $point02.pos
myOBJ1 = $line01
animateVertex myOBJ1  #all
num_point_sp1 = numKnots myOBJ1 1
my_point1 = mmm--[10,-500,5]
my_point2 = nnn--[105,-545,0]
for Young_animator = 1 to num_point_sp1 do
(--start for
 myst1 = Young_animator as string
 myst2="myOBJ1"
 
execute ( (myst2 +".Spline_1___Vertex_" + myst1 + ".controller = Point3_XYZ ()" ) )--myOBJ1.Spline_1___Vertex_Young_animator.controller = Point3_XYZ ()
)--end for
animate  on
(--start anim
at time 25 ( myOBJ1.Spline_1___vertex_1.controller.x =my_point1.x ; myOBJ1.Spline_1___vertex_1.controller.y =my_point1.y ; myOBJ1.Spline_1___vertex_1.controller.z =my_point1.z;)
at time 25 ( myOBJ1.Spline_1___vertex_2.controller.x =my_point2.x ; myOBJ1.Spline_1___vertex_2.controller.y =my_point2.y ; myOBJ1.Spline_1___vertex_2.controller.z =my_point2.z;)

)--end anim
اما حرکت لاین اصلا صحیح نیست یعنی ورتکسهای لاین دقیقا رو نقاط مورد نظر متمرکز نمیشن ..چرا .نمیدونم:-?
به طوره کلی ایده ای که دنبال میکنم اینه که
مثلا لاینی رو در محیط دارم بعد میام دو تا پینت در دو نقطه میزارم و اسکریپتو اجرا میکنم
اتفاقی که باس بیفته اینه که از لاین یه کپی گرفیه شده و هر دو ورتکس اون لاین با استفاده از همین اسکریپت شما بر روی پوینت 01 متمرکز میشه بعد به 10 فریم جلوتر رفته و ورتکس شماره دو حرکت و بر روی پوینت شماره 2 میاستد با همین اسکریپت:cool:

البته اینکه چرا از لاین کوپی گرفته میشه اینه که هنوز نمیدونم چطوری با اسکریپت یک نیو لاین طراحی کنم یعنی اینکه چطوری اسکریپت خودش طراحی لاین رو از نقطه اول شروع و انیمات کنه و در نقطه دوم پایان برساند برای همین از ایده کپی لاین و متمرکز کردن ورتکسهای اون در یک نقطه میگم ..( اصلا من چی میدونم):green:
 
آخرین ویرایش:

پرواز

Member

متاسفانه این دستور فقط ورتکس رو جابجا می کنه ولی انیمیتش نمی کنه... بازم دارم می گردم!!
سلام

منابع خاصی رو دارین اگه دارین ادرس به ما هم بدین یا حداقل راهی رو نشونمون بدین که بتونم اسکریپتو بهتر یاد بگیرم:sad:
 

arminAnim

کاربر متخصص
سلام

منابع خاصی رو دارین اگه دارین ادرس به ما هم بدین یا حداقل راهی رو نشونمون بدین که بتونم اسکریپتو بهتر یاد بگیرم:sad:
هلپ خود مکس اسکریپت رو اگر بتونید ارتباط باهاش برقرار کنید کامل کامله- اما در مواردی که کار یکم ریاضی داره و پیچیده تره توی ُCGSociety در فرومای SDK and MAXSCRIPT چیزای مفیدی پیدا می شه و سوال هم بپرسید جواب می دن کسانی که حرفه ای هستن
 

پرواز

Member
حرکت لاین اصلا صحیح نیست یعنی ورتکسهای لاین دقیقا رو نقاط مورد نظر متمرکز نمیشن ..چرا .نمیدونم:shock:
 

پرواز

Member
pivot لاین رو align کن به 0 0 0 گرید شاید درست شد اگر البته ایرادش اونی باشه که فکر می کنم
مرررررررررررررررررررررررررر30:rose::rose:
دستت طلا:rose::rose:
مشکل از خودمون بود یا اتودسک:green:
گوش بزنگ باشین ها
ممکنه بازم جاییش گیر کنم:cool:
 

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

بالا