تازه های سایت

ساخت بازی Peggle Nights – بخش اول

سلام دوستای عزیز

یادش بخیر اون روزایی که بازی هایی دوبعدی همه چیز ما بودند از سوپر ماریو گرفته تا سونیک و رامبو و کشتی کج و کمبات. ولی هنوز بازی های دوبعدی جایگاه خاصی در بین بازی ها دارند و در عین حالی که بازی های سه بعدی قول پیکری تولید شده اند در عین حال بازی های دوبعدی هنوز جایگاه خودشون رو بین قشر خاصی دارند. برای مثال بازی زیبای Angry Birds که در ابتدا برای Mac ارائه شد و بعد از آن نسخه تحت Windows و بعد از آن Android ارائه شد.

شاید برای تان جالب باشه که چطور این بازی ها نوشته میشند. خوب به زبون خیلی ساده این بازی ها یه موتور پشت سره شون هست که بیشتر کارای شبیه سازی بر عهده اون موتوره بد بخته !

یکی از این موتور های Open Source موتوری است به نام Box2D که وظیفه شبیه سازی حرکات دوبعدی را بر عهد داره. یعنی چی شبیه سازی حرکات دوبعدی !؟ ببینید برای مثال در این باکس تو دی کاری که ما انجام میدیم اینه که میایم و یه دنیا برای خودمون تعریف میکنیم و بعد برای این دنیامون یه بردار جاذبه تعیین میکنیم که مثلا مثلا جاذبه زمین مقدار ۱۰ و رو به پایین داره. بعدش نوبت میرسه به بیان مشخصات و اجسامی که در این دنیا هستند. خوب در این صورت یه سری اجسام هستند که حرکت میکنند و یه سری اجسام هستند که ثابت هستند.

بعد از اینکه اجسام و بردار شتاب مشخص شد حالا به باکس تو دی میگیم آقا شروع کن مثلا هر ۱/۶۰ ثانیه این دنیایی که ما به تو دادیم رو شبیه سازی کن و به ما نتایج رو بده.

نکته ای که هست Box2D وظیف ترسیم چیزی رو نداره . یعنی چی ؟ یعنی که شما یه مثلا جعبه ای رو در نقطه x, y می ذاری و بعد بهش یه نیرویی رو وارد میکنی و به باکس تودی میگی شبیه سازی کن . در این صورت باکس تو دی بعد از یه مرحله شبیه سازی بهت میگه که فلان جعبه با فلان اندازه در فلان !! موقعیت قرار داره هر جور که صلاح میدونی رسمش کن.

در این سری مجموعه آموزشی قصد داریم که با هم بازی زیبای Peggle Nights رو بسازیم:

بازی به این صورته که شما در نقش یک حیوان D: باید شروع کنید و چندین توپ به توپ های آبی و نارنجی وسط صفحه بزنید . بعد از اینکه توپ شما به این توپ ها خورد و به پایین صفحه رفت توپ های خورده شده حذف میشند. در پایان شما باید حتما تمام توپهای نارجی رو حذف کرده باشید تا برنده بشید . در غیر این صورت بازنده اید.

برای آشنایی با بازی بهتره یه سری به سایت سازندش بزنید.

 مواد لازم

  1. کتابخونه باکس تو دی: برای دانلود این کتابخونه باید به سایت رسمی باکس تو دی برید و از اونحا سورسش رو دانلود کنید. بعد متناسب با کامپایلر تون اونو کامپایل کنید و یه فایل کتابخونه استاتیک ازش بگیرید. مثلا اگه کامپایلرتون ویژوال استودیو هستش فایلهایی با پسوند .lib واگه mingw استفاده میکنید فایل هایی با پسوند .a خواهید داشت. این فایل در زمان کامپایل بازی مون به پروژه اضافه خواهد شد.
  2. آشنایی با گرافیکس ویو : همون طور که گفتم Box2D چیزی رو برای ما رسم نخواهد کرد بلکه وظیفه رسم با کتابخونه دیگری است. خوشبختانه کیوتی کتابخونه ای برای انجام کارهای گرافیکی دوبعدی به نام Qt Graphics View داره که کار رو برای ما راحت خواهد کرد.
  3. آشنایی با خود کیوتی : لازمه که آشنایی کافی با بخش های کیوتی داشته باشید.
  4. آشنایی با قواعد خیلی ساده فیزیکی در ضمن لازمه که با قواعد خیلی ساده ای از علم فیزیک هم آشنایی داشته باشید.

خوب ولی جای نگرانی نیست. اگه هیچ کدوم از موارد بالا رو هم نمیدونید بهتره این آموزش رو دنبال کنید زیرا در مورد هر قسمت توضیحاتی داده خواده شد که شما رو راه خواهد انداخت.

خوب این جلسه برای بیان مقدمات بود . لطفا مواد لازم رو آماده کنید تا بریم سراغ اصل مطلب.

در ضمن من از کتابخونه کیوتی ۴٫۷٫۳ و از محیط ویژوال استودیو برای توسعه استفاده خواهم کرد.

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

موفق باشید

۲,۱۲۵ total views, 3 views today

Print Friendly
Facebook0Google+0Twitter0LinkedIn0

درباره‌ی سعید دادخواه

دانشجوی سال آخر دانشگاه صنعتی اصفهان هستم. عاشق کیوت! خیلی ها بهم میگن QSaeed :) ولی در کل عاشق کامپیوترم ! سعی کردم هرچیزی رو توی دنیای بی انتهای کامپیوتر تجربه کنم! هر چیزی رو !

یک نظر

  1. سلام آیا این آموزش در مجموعه کیوت از صفر صفر هستش یانه؟

جوابی بنویسید

ایمیل شما نشر نخواهد شد.خانه های ضروری نشانه گذاری شده است. *

*


یک × 2 =

http://qtips.ir/wp-content/plugins/wp-monalisa/icons/wpml_bye.gif 
http://qtips.ir/wp-content/plugins/wp-monalisa/icons/wpml_good.gif 
http://qtips.ir/wp-content/plugins/wp-monalisa/icons/wpml_negative.gif 
http://qtips.ir/wp-content/plugins/wp-monalisa/icons/wpml_scratch.gif 
http://qtips.ir/wp-content/plugins/wp-monalisa/icons/wpml_wacko.gif 
http://qtips.ir/wp-content/plugins/wp-monalisa/icons/wpml_yahoo.gif 
http://qtips.ir/wp-content/plugins/wp-monalisa/icons/wpml_cool.gif 
http://qtips.ir/wp-content/plugins/wp-monalisa/icons/wpml_heart.gif 
http://qtips.ir/wp-content/plugins/wp-monalisa/icons/wpml_rose.gif 
http://qtips.ir/wp-content/plugins/wp-monalisa/icons/wpml_smile.gif 
http://qtips.ir/wp-content/plugins/wp-monalisa/icons/wpml_whistle3.gif 
http://qtips.ir/wp-content/plugins/wp-monalisa/icons/wpml_yes.gif 
http://qtips.ir/wp-content/plugins/wp-monalisa/icons/wpml_cry.gif 
http://qtips.ir/wp-content/plugins/wp-monalisa/icons/wpml_mail.gif 
http://qtips.ir/wp-content/plugins/wp-monalisa/icons/wpml_sad.gif 
http://qtips.ir/wp-content/plugins/wp-monalisa/icons/wpml_unsure.gif 
http://qtips.ir/wp-content/plugins/wp-monalisa/icons/wpml_wink.gif 
http://qtips.ir/wp-content/plugins/wp-monalisa/icons/wmpl_laughing.gif 
http://qtips.ir/wp-content/plugins/wp-monalisa/icons/wpml_angry.gif 
http://qtips.ir/wp-content/plugins/wp-monalisa/icons/wpml_bigsmile.gif 
http://qtips.ir/wp-content/plugins/wp-monalisa/icons/wpml_bigsup.gif 
http://qtips.ir/wp-content/plugins/wp-monalisa/icons/wpml_hopless.gif