Contacts
صفحه اصلی پورتال | صفحه اصلی تالار | ثبت نام | اعضاء | گروه ها | جستجو | پرسش و پاسخ | فروشگاه الکترونیکی | خرید پستی بازی های کامپیوتری





صفحه اول انجمنها -> ساخت بازی با نرم افزار 3D Game Studio -> مقالات آموزشي
 

ارسال يك موضوع جديد   پاسخ به يك موضوع ديدن موضوع قبلي :: ديدن موضوع بعدي
برو به صفحه قبلي  1, 2, 3, 4, 5, 6, 7, 8  بعدي

نويسنده
پيغام
mamoor_619
کاربر جدید
کاربر جدید


تاريخ عضويت: 5 شنبه 19 ارديبهشت 1387
تعداد ارسالها: 2
محل سكونت: Kermanshah


5 شنبه 19 ارديبهشت 1387 - 18:46
پاسخ بصورت نقل قول
ممنون . خیلی خوب بود

_________________
www.MAMOOR.com
نقد و بررسی بازیهای کامپیوتری
ارسال  بازگشت به بالا
ديدن مشخصات كاربر ارسال پيغام خصوصي ارسال ايميل ديدن وب سايت كاربر نام كاربري در پيغامگير Yahoo
 

نويسنده
پيغام
Reza Azimy_RW
در حال رشد
در حال رشد


تاريخ عضويت: شنبه 18 خرداد 1387
تعداد ارسالها: 56


1 شنبه 27 مرداد 1387 - 00:46
پاسخ بصورت نقل قول
با سلام
یک سایت هست که مقالات اموزشی خوبی رو فعلا در مورد Game Maker و به زودی تری دی گیم استادیو میده (.............)
http://reza-azimy-rw.blogfa.com/
Question
ارسال  بازگشت به بالا
ديدن مشخصات كاربر ارسال پيغام خصوصي ارسال ايميل
 

نويسنده
پيغام
omidgl
کاربر جدید
کاربر جدید


تاريخ عضويت: 2 شنبه 6 خرداد 1387
تعداد ارسالها: 10


5 شنبه 31 مرداد 1387 - 11:43
پاسخ بصورت نقل قول
جدا دستتون درد نكنه .
كارتون خيلي درسته ...
ايشالا كه يك بازي مهمون من باشيد
ارسال  بازگشت به بالا
ديدن مشخصات كاربر ارسال پيغام خصوصي
 

نويسنده
پيغام
MahanGM
پیر بازی سازی
پیر بازی سازی


تاريخ عضويت: 3 شنبه 20 شهريور 1386
تعداد ارسالها: 1846
محل سكونت: USS Terra Nova


شنبه 2 شهريور 1387 - 17:19
پاسخ بصورت نقل قول
توي مقاله ساخت يك بازي اول شخص كه آقا شهروز داده يه مشكلي دارم.

اون آدرسي كه تو مقوله هست براي گرفتن مدل ها و چيزاي ديگه فيلتر شده Rolling Eyes

لطفا اگه كسي ميتونه كمك كنه آرش خوان فكر كنم شايد شما فايلش رو داشته باشي

_________________
I have a dream that little children will one day live in a nation where they will not be judged by the color of their skin but by the content of their character. I have a dream today
هیچ راه فراری نیست!
http://www.dreamfactory.ir
ارسال  بازگشت به بالا
ديدن مشخصات كاربر ارسال پيغام خصوصي
 

نويسنده
پيغام
arashdj71
مدیر انجمن
مدیر انجمن


تاريخ عضويت: 5 شنبه 30 شهريور 1385
تعداد ارسالها: 1347
محل سكونت: ايران-->سرزمين سركوب!


شنبه 2 شهريور 1387 - 23:35
پاسخ بصورت نقل قول
MahanGM نوشته:
توي مقاله ساخت يك بازي اول شخص كه آقا شهروز داده يه مشكلي دارم.

اون آدرسي كه تو مقوله هست براي گرفتن مدل ها و چيزاي ديگه فيلتر شده Rolling Eyes

لطفا اگه كسي ميتونه كمك كنه آرش خوان فكر كنم شايد شما فايلش رو داشته باشي

بله دارمش ولي الان امكان آپلودش نيست باشه فردا انشا ا...! Arrow

_________________
ارسال  بازگشت به بالا
ديدن مشخصات كاربر ارسال پيغام خصوصي نام كاربري در پيغامگير Yahoo
 

نويسنده
پيغام
MahanGM
پیر بازی سازی
پیر بازی سازی


تاريخ عضويت: 3 شنبه 20 شهريور 1386
تعداد ارسالها: 1846
محل سكونت: USS Terra Nova


1 شنبه 3 شهريور 1387 - 08:39
پاسخ بصورت نقل قول
arashdj71, ممنون.

احتمالا تو اين مدت كه تالار گيم ميكر سوتو كوره و پروژه اخراجي ها در دست ساخته اين جا فعاليت دارم. Surprised

_________________
I have a dream that little children will one day live in a nation where they will not be judged by the color of their skin but by the content of their character. I have a dream today
هیچ راه فراری نیست!
http://www.dreamfactory.ir
ارسال  بازگشت به بالا
ديدن مشخصات كاربر ارسال پيغام خصوصي
 

نويسنده
پيغام
MahanGM
پیر بازی سازی
پیر بازی سازی


تاريخ عضويت: 3 شنبه 20 شهريور 1386
تعداد ارسالها: 1846
محل سكونت: USS Terra Nova


1 شنبه 3 شهريور 1387 - 12:21
پاسخ بصورت نقل قول
ببخشد دوبار شده بود.

_________________
I have a dream that little children will one day live in a nation where they will not be judged by the color of their skin but by the content of their character. I have a dream today
هیچ راه فراری نیست!
http://www.dreamfactory.ir


اين نامه توسط MahanGM در 1 شنبه 3 شهريور 1387 - 12:23 ويرايش شده است.
ارسال  بازگشت به بالا
ديدن مشخصات كاربر ارسال پيغام خصوصي
 

نويسنده
پيغام
MahanGM
پیر بازی سازی
پیر بازی سازی


تاريخ عضويت: 3 شنبه 20 شهريور 1386
تعداد ارسالها: 1846
محل سكونت: USS Terra Nova


1 شنبه 3 شهريور 1387 - 12:21
پاسخ بصورت نقل قول
arashdj71, راستي يه مقوله در باره ساخت مدل براي 3dgs داري ؟؟

من وقتي مدل رو تو مكث(بدون انيميشن) طراحي ميكنم با تكسچر و وقتي ميارمش تو Med و بصورتmdl ذخيره ميكنم مودلم رو توي Wed ميارم بعد از اجرا اصلا هيچ اثري از مودل نيست تازه بعضي اوقات هم ميومد بدون تكسچر و يه مودت با Skin Editor خود med باسشون تكسچر رديف ميكردم ولي با اون اصلا نميشه كار كرد بايد تكسچرت اونجا بصورت نقشه اي باشه تازه هرچي دنبال پلاگين براي مكث 9 گشتم كه از همونجا بصورت mdl بده پيدا نكردم. Surprised

_________________
I have a dream that little children will one day live in a nation where they will not be judged by the color of their skin but by the content of their character. I have a dream today
هیچ راه فراری نیست!
http://www.dreamfactory.ir
ارسال  بازگشت به بالا
ديدن مشخصات كاربر ارسال پيغام خصوصي
 

نويسنده
پيغام
MJAsoftware
کاربر جدید
کاربر جدید


تاريخ عضويت: 4 شنبه 15 آبان 1387
تعداد ارسالها: 1


4 شنبه 15 آبان 1387 - 13:54
پاسخ بصورت نقل قول
با تشكر از جناب گل آقا اميد وارم بتونم زحماتتون جبران كنم
مرسي
ارسال  بازگشت به بالا
ديدن مشخصات كاربر ارسال پيغام خصوصي
 

نويسنده
پيغام
hz
بازی ساز
بازی ساز


تاريخ عضويت: 5 شنبه 28 آذر 1387
تعداد ارسالها: 220
محل سكونت: I live in...


1 شنبه 2 فروردين 1388 - 11:46
پاسخ بصورت نقل قول
آموزش اوّل

3d Game studio يك نرم افزار ساخت بازي جالب به صورت دو بعدي و سه بعدي است





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


var video_mode = 6 ;


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

حال براي چه 6 ؟

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


320x200 - 1
320x240 - 2
320x400 - 3 (not supported by some graphics adapters)
400x300 - 4 (not supported by some graphics adapters)
512x384 - 5
640x480 - 6 (default mode)
800x600 - 7
1024x768 E - 8
1280x960 P - 9
1400x1050 P - 10
1600x1200 P - 11


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


var video_depth = 16 ;


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


16 - 16 Bit Farbetiefe (65536 Farben)
32 - 32 Bit Farbtiefe P /16,7 Millionen Farben


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


function main () {
level_load('level1.wmb');
}


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


level1.wmb نه level.wmp


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

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


var Name = Integer ;
يا
var name ;


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

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


function Name () {
دستورات
}


name :
نام تابع

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


action Name {
دستورات
}


name :

نام اكشن

متغير چيست ؟

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

اكشن چيست ؟

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

تابع چيست ؟

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

Main

خوب ... !

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

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


Mohsen.x = 25 ;


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

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


My.x = 25 ;


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


My.pan گردش دور خود
My.tilt چرخش به بالا و پايي
My.roll چرخش به چپ و راست
My.flare براق كردن شي
My.x كنترل محور x
My.y كنترل محور Y
my.z كنترل محور Z


و ... !

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

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

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


While ( *) {
دستورات
}


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

توجه :

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

مثال :


action Mohsen{
while(1) {
My.pan +=1 ;
}
}


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

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



My.pan +=1 ;


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

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


action Mohsen{
while(1) {
Wait(1) ;
My.pan +=1 ;
}
}


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

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

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

جملات شرطي :

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

if (*) {
دستورات
}


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


While(1) {
wait(1) ;
if ( U ==20) {
mohsen.pan +=1 ;
}
}


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

حال براي چه ؟

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

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

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


if ( U == 25) {
}


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

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

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


if (*) {
دستوراتي كه در صورت درست بودن شرط مي خواهيد اجرا شوند .
}else{
دستوراتي كه در صورت اشتباه بودن شرط مي خواهيد اجرا شوند .
}


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

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

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


while (1) {
wait (1) ;
if (key_any == on ) {
دستورات ;
}
}


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


While (1) {
wait(1);
if (key_m == on ){
دستورات ;
}
}


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

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

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

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

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

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


ent_create(*,#,%) ;


* :

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


String Mohsen = <Mohsen.mdl>;


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

# :

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


Vector(x,y,z) ;


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


% :


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


Null



حال يك مثال :


ent_create(Mohsen,vector(20,50,70),Null);


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

_________________
خدایا من در کلبه تنهایی خویش چیزی دارم که تو در بارگاه کبریایی خود نداری که من چون تويی دارم و تو چون خودی نداری . . . !
ارسال  بازگشت به بالا
ديدن مشخصات كاربر ارسال پيغام خصوصي ارسال ايميل
 

نمايش نامه هاي ارسال شده قبلي:   
ارسال يك موضوع جديد   پاسخ به يك موضوع    صفحه 5 از 8 تمام ساعات و تاريخها بر حسب 3.5+ ساعت گرينويچ مي باشد
برو به صفحه قبلي  1, 2, 3, 4, 5, 6, 7, 8  بعدي


 
پرش به:  


شما نمي توانيد در اين انجمن نامه ارسال كنيد.
شما نمي توانيد به موضوعات اين انجمن پاسخ دهيد
شما نمي توانيد نامه هاي ارسالي خود را در اين انجمن ويرايش كنيد
شما نمي توانيد نامه هاي ارسالي خود را در اين انجمن حذف كنيد
شما نمي توانيد در نظر سنجي هاي اين انجمن شركت كنيد


unity3d

بازگردانی به فارسی : علی کسایی @ توسعه مجازی کادوس 2004-2011
Powered by phpBB © 2001, 2011 phpBB Group
| Home | عضويت | ليست اعضا | گروه هاي كاربران | جستجو | راهنماي اين انجمن | Log In |