آموزش Max Script

admiral

Member
max script help

ایجاد یک باکس با Max script
برای این کار ابتدا پنجره max script listener یا کلیدf11 رو باز کنین و در پنجره مذکور اینا رو تایپ کنین ...
mybox = box length:20 width:20 height:20
بعد save کنین و فایل ساخته شده رو از همون پنجره باز کنین و دکمه های Ctrl+e رو برای اجرا فشار دهید -
خروجی: یک باکس در نقاط 0,0,0 و با ابعاد فوق ایجاد می شود..
 

admiral

Member
camera

:wink: این اسکریپت هم برای رندر چند دوربین بدون مراجعه به video post بهتون می ده .
اینم توضیح انگلیسیش ....
This script creates a new animated camera that animates along the scene cameras. Every position and rotation is stored in an animation key. It lets you render a number of cameras without making numerous network renderjobs or having to set up the video post every time.
دانلود
 

vahidmj

Member
سلام اقا از این اسکیریپت رندر هم زمان چند دوربیین چطوری باید استفاده کرد
به من کار نداد چه طوریه؟؟/
 

hamed-ddd

Well-Known Member
ایجاد یک باکس با Max script
برای این کار ابتدا پنجره max script listener یا کلیدf11 رو باز کنین و در پنجره مذکور اینا رو تایپ کنین ...
mybox = box length:20 width:20 height:20
بعد save کنین و فایل ساخته شده رو از همون پنجره باز کنین و دکمه های Ctrl+e رو برای اجرا فشار دهید -
خروجی: یک باکس در نقاط 0,0,0 و با ابعاد فوق ایجاد می شود..
منظورم همینه دستت درد نکنه .....همینو ادامه بدید و هر دفعه کمی پیچیده تر
 

admiral

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

admiral

Member
یک دست صدا نداره

اقای عابدی
من میخام این تاپیک رو به یه تاپیک جامع تبدیل کنم ولی عزیزان فقط مصرف کننده اند
شما هم حتما اسکریپت های خوب دارین پس چرا به دوستانتون تو مجید آنلاین کمک نمی کنین ؟؟؟
 

hamed-ddd

Well-Known Member
اقای عابدی
من میخام این تاپیک رو به یه تاپیک جامع تبدیل کنم ولی عزیزان فقط مصرف کننده اند
شما هم حتما اسکریپت های خوب دارین پس چرا به دوستانتون تو مجید آنلاین کمک نمی کنین ؟؟؟

بنده خدا عابدی راست میگه دیگه
معرفی اسکریپت تو بخش مربوطه است
هدف آموزش چیزی است که خیلی ها توش ضعیف هستند یعنی اسکریپت
که در مراحل ساده هم کفایت نمیکنه
امیدوارم این تاپیک خوب منحرف نشه
 

ARAZ_88

New Member
سلام اگه max script آموزش بدید ممنون میشیم . کی می خواهید شروع کنید؟ مطالبتون رو از کجا باید بخونیم ؟ اگه از همین صفحه پس شروع کنید دیگه من خیلی مشتاقم مطالبتونو بخونم . البته برنامه نویسی بلد نیستم فقط یه کم pascal بلدم ولی نه زیاد . خواهش می کنم شروع کنید واگه ممکنه emai تون رو هم بگید . مرسی .
 

GATco

New Member
سلام به همگی
آقا من به علت منابع بسیار محدود آموزش مکس اسکریپت می خوام چیزهایی که بلدم در اختیار دوستان بزارم.
من 6 ماهه ک مکس اسکریپتو به صورت جدی دنبال میکنم و تا حالا چندین برنام نوشتم چون زبانم زیاد بد نیست از منابع هلپ استفاده میکنم اما به علاوه تجربه. روش من این صورت است ک من هر چیزی رو که در مورد مکس اسکریپت مفهمم روی کاغذ
می آرم و تا حالا مطالب زیادی رو نوشتم و دقیق برای خودم توضیح دادم.
اگر واقعا می خواهید مکس اسکریپتو یاد بگیری بهتر با این روش شروع کنید.
قبل از شروع مکس اسکریپت بای قوانین اونو که با مطاله و تجربه بدست آوردم بدانید...
 
آقا ما ايراني ها چشم پيشرفت همديگه رو نداريم، اين واقعيت رو قبول کنين
از اونايي که اين مطالب رو نوشتن خيلي ممنونم
من فعلا دارم هلپ تمرينات مکس را ترجمه مي کنم که سه و چهار فضلش رو حاضر کردم و واسه دانلود گذاشتم، وگرنه حتما کمکتون مي کردم
پس دانش خودتون رو به گور نبرين
 

GATco

New Member
میخام بعضی از قوانین یادگیری maxscript رو بگم ,البته برای اونایی که جدی میخان دنبال کنند.

.. یادگیری کتابهای ریاضی راهنمایی و دبیرستان :cool:
.. در عین حال بکار گیری اونا در maxscript

.. وتر مثلث به چه درد میخوره؟ خیلی خیلی مهمه برای maxscript :lol:فکرشو نمیکردید نه؟

.. مختصات xy...حتما توی کتابهای ریاضی مدرسه یه نگاهی بهش بندازید وگرنه تو maxscript کم میارید:cool:
.. هر چیزی تو maxscript یاد میگیرید حتما روی کاغذ اونو برای خود توضیح دهید
 

GATco

New Member
قبل از شروع جدی maxscript باید بعضی از قانونهای محاسباتی maxscript را توضیح بدم.
maxscript برای محاسبه یک معادله اتکا زیادی به پرانتزها داره ( maxscript) , پس باید در استفاده از پرانتزها
وحتی در استفاده نکردن از آنها کاملا مسلط باشید. خیلی خیلی مهم "به کتابهای درسی ریاضی مراجعه شود"

MS مثل یک ماشین حساب میمونه
پرانتزها مثل یک مرز محاسباتی میمونند

اگر در یک محاسبه پرانتزی یا مرزی مشخص نکرده باشیم به این صورت محاسبه میشود
... ابتدا توان محاسبه میشود ^
... سپس تقسیم محاسبه میشود /
... سپس ضرب محاسبه میشود *
... سپس جمع و تفریق محاسبه میشود + - "که در این مورد آخر ترتیب محاسباتی لازم نیست"
همچنین اگر هر کدام از این عملگراها نباشد دیگری برای محاسبه مقدم خواهد شد , یعنی مثلا در یک محاسبه توان نباشد پس تقسیم مقدمتر است .

کد:
[SIZE=1][COLOR=blue]2.0 ^ 5.0 - 6.0 * 4.0 + 7.0 / 8.0[/COLOR][/SIZE]

ابتدا 2 به توان 5محاسبه مشود
سپس 7 تقسیم بر 8محاسبه میشود
سپس6ضرب در 4 محاسبه میشود
در آخر سر جمع وتفریق میکنیم

جواب
8.875
 
آخرین ویرایش:

GATco

New Member
فرض کنیم می خواهیم در یک معادله ابتدا جمع انجام گیرد سپس ضرب وبعد بقیه معادله , در اینجاست که از پرانتزها استفاده میکنیم, یعنی یک مرز محاسباتی تعیین میکنیم.

مثال:

کد:
[/font][font=times new roman][size=1]2 ^ ( (5+6) * 2 )
[/size][/font][font=times new roman][size=1][color=#0000ff]4194304
[/color][/size][/font][font=times new roman]

توضیحات بیشتر:

کد:
5+6=11
2*11=22
2^22=[/font][font=times new roman][size=1][color=#0000ff]4194304
[/color][/size][/font][font=times new roman]
 

GATco

New Member
خواندن کدها در MS دارای شرایطی است , که دانستن این مطلب بسیار مهم است

... Ms شروع بخواندن کد از خط اول می کند و هر حرف را می خواند تا خط تمام شود
سپس بررسی میکند آیا این خط دارای یک عبارت منطقی بوده تا جواب آن را بدهد

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

... این شرایط برای خطهای بعدی نیز تکرار خواهد شد

... MS دارای سرعت فوق العاده بالایی در خواندن کدها میباشد
برای مثال: شما می خواهیدیک فضای بزرگ از ستارگان درخشان بسازید و نیاز به 4000 کره دارید با سایزهای گوناگون و قرار گرفتن آنها در مکانهای تصادفی,تاحالا فکر کردید به صورت دستی چقدر طول میکشه؟؟؟

اما این کار برای MS فقط چند لحظه است

برای درک بیشتر مطالب, بعضی توضیحات را با مثال می گم

مثال1
کد:
[/FONT]
[FONT=Times New Roman]a=10[/FONT]
[FONT=Times New Roman]a*5[/FONT]
[FONT=Times New Roman]

MS ابتدا متغیر a را برابر 10 قرار میدهد( پس خواندن خط اول تمام شد) جواب خط اول 10 است
سپس a را که همان مقدار 10 است در 5 ضرب کرده (پس خواندن خط دوم تمام شد) جواب خط دوم 50 است
10
50

مثال2
کد:
[/FONT]
[FONT=Times New Roman]b*2[/FONT]
[FONT=Times New Roman]b=15[/FONT]
[FONT=Times New Roman]

MS ابتدا میخواهد b را در 2 ضرب کند مشکل اینجاست ک حرف b برای MS بی معنی است و عدد 2 در یک حرف مجهول قابل ضرب نیست( پس خواندن خط اول تمام شد) جواب خط اول یک خطا است -- No ""*"" function for undefine

متغیر b را برابر 15 قرار میدهد (پس خواندن خط دوم تمام شد) جواب خط دوم 15 است

بیایید مثال دوم را برای بار دوم اجرا کنیم , چه اتفاقی می افته ؟

کد:
b*2
b=15

کد بدون مشکل برای بار دوم اجرا خواهد شد, چرا؟؟
جواب خط اول 30
جواب خط دوم 15
ok
علت این است که زمانی که کد را برای بار اول اجرا کردیم خط اول با خطا مواجه شد اما در خط دوم مقدار b تعیین شد

زمانی که همین کد را برای بار دوم اجرا میکنیم چون مقدار b قبلا در اجرای بار اول تعیین شده در خط اول قرار خواهد گرفت و 15 در 2 ضرب میشود و جواب خط اول 30 است
------------------------------------------
پس می بینیم که هر کد باید در مکان مناسب خودش بکار برده شود تا نتیجه ای که میخواهیم را بما بدهد

برای آشنایی با سرعت وقدرت MS این کد را اجراکنید


از منوی maxscript گزینه newscript را انتخاب کنید,
کد را در پنجره باز شده کپی کنید
از منوی فایل پنجره بازشده evaluate all را بزنید

کد:
[SIZE=1][COLOR=#0000ff]for[/COLOR][/SIZE][SIZE=1] i = 1 [/SIZE][SIZE=1][COLOR=#0000ff]to[/COLOR][/SIZE][SIZE=1] 500 [/SIZE][SIZE=1][COLOR=#0000ff]do
[/COLOR][/SIZE][SIZE=1](
s=sphere()
s.radius=random 5 14
s.segs = 16
s.pos=random [-400,-400,0] [400,400,0]
s.slice = [/SIZE][SIZE=1][COLOR=#0000ff]on
[/COLOR][/SIZE][SIZE=1]s.sliceFrom =random 246 340
s.dir=random [50,0,70] [400,200,170]
[/SIZE][SIZE=1][COLOR=#0000ff]animate[/COLOR][/SIZE][SIZE=1] [/SIZE][SIZE=1][COLOR=#0000ff]on[/COLOR][/SIZE][SIZE=1] (
[/SIZE][SIZE=1][COLOR=#0000ff]at[/COLOR][/SIZE][SIZE=1] time 0 s.pos.z=0
[/SIZE][SIZE=1][COLOR=#0000ff]at[/COLOR][/SIZE][SIZE=1] time 30 s.pos.z = random 10 100
)

)
[/SIZE]

:cool:

 

DIMO

Active Member
دوست عزیز خیلی ممنون بابت آموزش ها ولی فکر کنم اگه مراحل آموزشی رو با توجه به این تاپیک پیش ببرین فکر کنم بهتر باشه:
آموزش MaxScript

پیروز باشید
 

AVGHH

Member
آقا ما ايراني ها چشم پيشرفت همديگه رو نداريم، اين واقعيت رو قبول کنين

شما شاید ولی من و کسایی که میشناسمشون اینطوری نیستیم.
نمیخواستم چیزی بگم ولی وقتی اینجور حرف زدن بعضیا رو میبینم خونم به جوش میاد. متاسفانه اینجور اهانت به خود هم داره باب میشه.
تا یه مشکل اخلاقی کوچیک تو یکی میبینن سریع بسطش میدن به همه ایرانیا!!
مگه شما چند درصد ایرانیا و خارجیا رو دیدی که انقد راحت و سریع نتیجه گیری میکنی که ایرانیا اینجورین؟!

چرا بعضی از ماها انقد راحت به خودمون اهانت میکنیم؟! فرهنگ و اخلاقی که ما داریم و ملتای دیگه آرزوشو دارن.

از همه دوستان که بحث و منحرف کردم معذرت میخوام :rose:
 

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

بالا