PDA

نسخه کامل مشاهده نسخه کامل : آموزش اسكريپت نويسي و ساخت بازي با نرم افزار 3d Game Studio



Moh3en_DDD
20-10-2006, 18:26
3d Game studio يك نرم افزار ساخت بازي جالب به صورت دو بعدي و سه بعدي است





اول از همه بايد تنظيمات صفحه ي نمايش را درست كنيم براي اين كار دستور زير را مي نويسيم :


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

اين دستور رزولشن 640 * 480 مي كند ... !

حال براي چه 6 ؟

مي توانيد از براي هر اندازه اي يك عدد بزنيد كه در ليست زير اندازه ها نوشته شده است :


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

حال با استفاده از اين دستور بيت هاي صفحه را به 16 تغيير بدهيد ( به هر چيزي كه مي خواهيد تغيير بدهيد ولي بهتر است همون 16 باشد  البته غير از 16 فقط 32 مي توانيد بگذاريد ) !


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

ليست بيت هايي كه مي توانيد بگذاريد همراه با توضيح  :


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

يك تابع هست كه مي گويد وقتي صفحه ي بازي باز مي شود چه اطفاقي بيفتد ... مثلا مي شه گفت كه مرحله اي كه در Level Editor ساخته ايم رل بيا ورد براي اين كار مثلا اسم مرحله اي كه درست كرديد Level 1 هست كه ما براي اينكه اين مرحله در اول بازي بيايد دستور زير را بدهيد :


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

دقت داشته باشيد :


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

اين را گفتم كه شايد خيلي ها دقت نكنند !

روش تعريف متغيير :


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

به جاي :
name :
نام متغيير
Integer :
مقدار متغيير

روش تعريف function يا همان تابع :


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

name :
نام تابع

روش تعريف اكشن :


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

name :

نام اكشن

متغير چيست ؟

متغير يا مي تونه يك عدد يا يك رشته باشه كه در طول برنامه مرتب عدد آن تغيير مي كند ... يعني ما مي توانيم به آن عدد دهيم و عدد داخل آن را تغيير دهيم ... ( در طول آموزش بشتر متوجه مي شوديد ) !

اكشن چيست ؟

اكشن يعني برنامه نويسي كه براي يك شي ء در LEVEL EDITOR مي كنيم ... براي نام اكشن بايد نام شي ء‌مورد نظر ما در LEVEL EDITOR باشد ... براي تعيين نام يك شي ء در level editor بايد روي شي راست كليك و گزينه ي Properties رفته و سپس به تب Behaviour كليك كرده و در قسمت Action براي شي يك نام بر گزينيد !
توجه : اگر نام اكشن درون Level editor نباشد برنامه پيغام خطا مي دهد !

تابع چيست ؟

تابع ها يك سري عوامل هستند كه قسمتي از آنها را خود برنامه تعريف كرده مثل تابع :

Main

خوب ... !

حال براي برنامه نويسي درون اكشن مورد نظرمان آماده مي شويم !

براي اين كه يك كاري را به يك شي نصب بدهيم اول بايد نام اكشن را در داخل اكشن مورد نظر به همراه يك نقطه ي كوچك همراه با مشخصات براي آن بنويسيم ... مثلا اسم اكشن ما محسن است :


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

اين دستور به برنامه مي گويد كه آبجكت محسن را در مختصات 25 بردار X قرار بده ... !

حال ما براي اينكه نخواهيم اسم اكشن را تايپ كنيم از پسوند MY استفاده مي كنيم كه My به جاي نام مي آيد مانند دستور زير !


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

بعضي از خصوصيات MY :


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

و ...  !

حلقه هاي تكرار :

آموزش دستور While :

اين دستور شرط يك نوع دستور شرطي مي باشد كه بوسيله ي آن مي توانيد يك حلقه ي تكرار درست كننيد كه به آن بگوييد تا شرط برقرار هست دستوري كه به آن داديد را اجرا كند ... روش تعريف كردن حلقه ي تكرار :


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

در پرانتز به جاي علامت * شرطي مورد نظر خود را قرار دهيد !

توجه :

اگر مي خواهيد حلقه ي شما بي نهايت باشد به معني اينكه حلقه اي كه برايش تعريف كرديد هيچ وقت تمام نشود به جاي * در داخل پرانتر يك عدد مثل 1 بگذاريد ... !

مثال :


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

اين دستور آبجكت محسن را تا بينهايت دور خود مي چرخاند !

دقت كنيد به دستور :



برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

اين دستور به برنامه مي گويد هر دفعه به مقدار X يكي اضافه كن !

در آخرين پست آموزشيم استفاده از حلقه ي While را درس دادم ولي يه چيز يادم رفت بگم :


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

ملاحظه مي كنيد كه درون حلقه ي While من دستور Wait را اضافه كردم و داخل () عدد يك را گذاشتم ... حال اين دستور چيست :

اگر اين دستور را نزنيد برنامه فقط آخر حلقه را به شما نمايش مي دهد ولي اگر اين دستور را بزنيد لحظه به لحظه ي حلقه و تغييرات آن را نمايش مي دهد ... !

استفاده از دستور Wait درون حلقه ي While ضروري است !

جملات شرطي :

براي تعريف يك شرط براي ايجاد يك دستور به شكل زير عمل مي كنيم :

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

در داخل پرانتز بالا به جاي علامت * يك شرط قرار دهيد ... براي مثال در دستور زير گفته ايم اگر متغيير U  مقدارش به 20 رسيد شكل شي محسن شروع كند دور خود بچرخد !


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

در دستور بالا دقت كرديد كه ما در اول جمله ي شرطي خود دستور While را به كار برديم !

حال براي چه ؟

براي اينكه اگر ما اين دستور را بزنيم به برنامه گفته ايم كه هر وقت كه U به 20 رسيد در غير اين صورت اگر ما از دستور While استفاده نمي كرديم برنامه ي ما هيچ وقت اجرا نمي شد !

در پست قبلي آموزش استفاده از دستور IF را  توضيح دادم و مجبور شدم اين نكته را در يك پست ديگه قرار بدم :

در مثال ديديد گه من دستور زير را دادم :


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

علامت == يعني مساوي !
علامت != يعني نامساوي !
علامت && يعني و !

يه نكته ي ديگر هم بگم :

براي اينكه به برنامه بگوييد اگر شرط اجرا شد اين كار و اگر شرط اجرا نشد كار ديگري انجام شود بايد از دستور زير استفاده كنيد :


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

خوب اين دستور به واضحي معلوم است و فقط بايد به جاي * شرط خود را بنويسيد !

آموزش كنترل توسط صفحه كليد :

براي اينكه بفهميم كليدي فشار داده شده است از دستور زير استفاده مي كنيم :


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

حال براي اينكه مثلا بخواهيم بگوييم اگر كليد M فشار داده شد دستورات اجرا شود بايد از دستور زير استفاده كنيد :


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

نكته : ديديد كه من براي هر دستور اولش حلقه ي While + Wait را تعريف كردم چون اگر تعريف نمي كردم اين دستورات فقط يك بار اجرا مي شدند .

مطابق دستور به جاي M مي توانيد كليد هاي ديگري را نيز جايگزين كنيد اما براي كليد ها ي بالا و پايين و چپ و راست بايد اين جمله ها را قرار دهيد :

كليد چپ : Key_cud
كليد راست : key_cuu
كليد بالا : Key_cur
كليد پايين : key_cul

خوب رسيديم به يكي از سخت ترين قسمت هاي بازي سازي يعني ايجاد يك شكل در طول بازي :

شما بعضي از وقت ها مثلا مي خواهيد از تفنگي تير شكليك شود  يا مثلا ايجاد يك سيستم ذره اي كنيد ... براي اين كار ها شما بايد ابتدا آموزش زير را بخوانيد :

براي ساختن اشياء در طول و در حين بازي بايد از دستور Ent_create استفاده كنيد :


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

* :

شما بايد به جاي اين علامت آدرس شي خود كه با فرمت Mdl در فولدر مخصوص بازي خودتان ذخيره كرديد بدهيد براي اين كار بايد اول يك رشته تعريف كنيد ( فرض مي گيريم فايل MDL شما محسن نام دارم و اسمي كه مي خواهيد براي رشته بگذاريد هم محسن نام دارد ) !


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

حال شما با تعريف كردن اين رشته به جاي علامت * فقط بايد اسم رشته اي كه تعريف كرديد و ما در اينجا محسن تعرفي كرده ايم را قرار دهيد !

# :

به جاي اين علامت بايد شما محله ساخته شدن شي خود را تعريف كنيد ... براي اين كار بايد از دستور زيد استفاده كنيد :


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

كه به آنها مقدار بدهيد ... مي توانيد از دستور بالا هم استفاده نكنيد و هرچي خودتان خواستيد بزنيد ... !


% :


شما در اين قسمت بايد نام تابع كنترل كننده ي اين شي ساخته شده را بگوييد ( در مورد تابع قبلا حرف زده شده بود ) ! اگر هم تابعي نداريد از دستور زير به جاي % استفاده كنيد :


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید


حال يك مثال :


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

اين مثال نيازي به توضيح ندارد چون كامل درس داده شده !

Saeed kmss-D
21-10-2006, 16:26
مرسی از توضیح کاملتون.
لینک دانلود این نرم افزار رو ندارید؟؟

Moh3en_DDD
21-10-2006, 17:00
لينك دانلود :


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید