بازی های سبك پلتفرم (ساده)
بازیکننده در این نوع بازی مجبور به پرش از روی موانع مختلف یا بالا رفتن از سدهای فیزیکی است، مانند بازی سوپر ماریو یا بازی سونیك
گرافیك | آماده |
---|---|
تعداد مراحل | 2 |
منوی ورود | ساده |
حركات | حركت به طرفین- پرش- دشمن ثابت |
سورس كد | |
خروجی ویندوز | |
خروجی اندروید | |
صدا گذاری | |
درج اطلاعات شما در بازی | |
درج اطلاعات درخواستی |
بازی های سبك پلتفرم (متوسط)
بازیکننده در این نوع بازی مجبور به پرش از روی موانع مختلف یا بالا رفتن از سدهای فیزیکی است، مانند بازی سوپر ماریو یا بازی سونیك
گرافیك | آماده |
---|---|
تعداد مراحل | 5 |
منوی ورود | نیمه حرفه ای |
حركات | حركت به طرفین- پرش- شلیك- دشمنان متحرك |
سورس كد | |
خروجی ویندوز | |
خروجی اندروید | |
صدا گذاری | |
درج اطلاعات شما در بازی | |
درج اطلاعات درخواستی |
بازی های سبك پلتفرم (حرفه ای)
بازیکننده در این نوع بازی مجبور به پرش از روی موانع مختلف یا بالا رفتن از سدهای فیزیکی است، مانند بازی سوپر ماریو یا بازی سونیك
گرافیك | آماده-حرفه ای |
---|---|
تعداد مراحل | 10 |
منوی ورود | حرفه ای |
حركات | حركت به طرفین- پرش- شلیك- دشمنان متحرك- دشمن تیر انداز- دشمن دارای هوش مصنوعی- حركات خاص كاراكتر- تغییر اصلحه |
سورس كد | |
خروجی ویندوز | |
خروجی اندروید | |
صدا گذاری | |
درج اطلاعات شما در بازی | |
درج اطلاعات درخواستی |
بازی های جنگی (ساده)
محوریت اصلی این نوع بازی ها بر روی پیروزی در جنگ استوار است و شما باید با غلبه بر دشمنان مراحل را به پایان برسانید. مانند جنگ هوایی یا جنگ تانكی
گرافیك | آماده |
---|---|
تعداد مراحل | 2 |
منوی ورود | ساده |
حركات | حركت به طرفین- شلیك- دشمن ثابت |
سورس كد | |
خروجی ویندوز | |
خروجی اندروید | |
صدا گذاری | |
درج اطلاعات شما در بازی | |
درج اطلاعات درخواستی |
بازی های جنگی (متوسط)
محوریت اصلی این نوع بازی ها بر روی پیروزی در جنگ استوار است و شما باید با غلبه بر دشمنان مراحل را به پایان برسانید. مانند جنگ هوایی یا جنگ تانكی
گرافیك | آماده |
---|---|
تعداد مراحل | 5 |
منوی ورود | نیمه حرفه ای |
حركات | حركت به طرفین- شلیك- دشمنان متحرك- جوایز حین جنگ |
سورس كد | |
خروجی ویندوز | |
خروجی اندروید | |
صدا گذاری | |
درج اطلاعات شما در بازی | |
درج اطلاعات درخواستی |
بازی های جنگی (حرفه ای)
محوریت اصلی این نوع بازی ها بر روی پیروزی در جنگ استوار است و شما باید با غلبه بر دشمنان مراحل را به پایان برسانید. مانند جنگ هوایی یا جنگ تانكی
گرافیك | آماده-حرفه ای |
---|---|
تعداد مراحل | 10 |
منوی ورود | حرفه ای |
حركات | حركت به طرفین- شلیك- دشمنان متحرك- دشمنان ثابت- هوش مصنوعی- جوایز حین جنگ- ارتقا- تغییر صلاح |
سورس كد | |
خروجی ویندوز | |
خروجی اندروید | |
صدا گذاری | |
درج اطلاعات شما در بازی | |
درج اطلاعات درخواستی |
بازی های مسابقه ای (متوسط)
محوریت اصلی این نوع بازی ها پیروزی بر رقبا در مسابقات است معمولا مسابقات با وسایل نقلیه انجام میپذیرد.
گرافیك | آماده |
---|---|
تعداد مراحل | 5 |
منوی ورود | نیمه حرفه ای |
حركات | حركت- مسابقه با رقبای كامپیوتری- |
سورس كد | |
خروجی ویندوز | |
خروجی اندروید | |
صدا گذاری | |
درج اطلاعات شما در بازی | |
درج اطلاعات درخواستی |
بازی های مسابقه ای (حرفه ای)
محوریت اصلی این نوع بازی ها پیروزی بر رقبا در مسابقات است معمولا مسابقات با وسایل نقلیه انجام میپذیرد.
گرافیك | آماده-حرفه ای |
---|---|
تعداد مراحل | 10 |
منوی ورود | حرفه ای |
حركات | حركت- مسابقه با رقبای كامپیوتری- ماژول های خاص در حین مسابقه- ارتقا و شخصی سازی وسیله |
سورس كد | |
خروجی ویندوز | |
خروجی اندروید | |
صدا گذاری | |
درج اطلاعات شما در بازی | |
درج اطلاعات درخواستی |
بازی های آموزشی ای (متوسط)
محوریت اصلی این نوع بازی ها آموزش است. مانند آموزش الفبا فارسی یا انگلیسی و آموزش ریاضی
گرافیك | آماده |
---|---|
تعداد مراحل | 0 |
منوی ورود | نیمه حرفه ای |
حركات | آموزش جزئی بحث |
سورس كد | |
خروجی ویندوز | |
خروجی اندروید | |
صدا گذاری | |
درج اطلاعات شما در بازی | |
درج اطلاعات درخواستی |
بازی های آموزشی ای (حرفه ای)
محوریت اصلی این نوع بازی ها آموزش است. مانند آموزش الفبا فارسی یا انگلیسی و آموزش ریاضی
گرافیك | آماده-حرفه ای |
---|---|
تعداد مراحل | 0 |
منوی ورود | حرفه ای |
حركات | آموزش كلی- ثبت امتیاز |
سورس كد | |
خروجی ویندوز | |
خروجی اندروید | |
صدا گذاری | |
درج اطلاعات شما در بازی | |
درج اطلاعات درخواستی |
دسته بندی
آموزشهای مبتدی
حالت های blend در گیم میکر 2 قسمت اول
اگر از گیم میکر استدیو 2 استفاده می کنید حتما به حالت های blend بر خواهید خورد. حالت های blend در گیم میکر راه خوبی برای دادن افکت های گرافیکی خاص و جالب هنگام رسم هستند. در این مقاله ما عملکرد blend را در گیم میکر برای شما شرح می دهیم.
نگاه کلی
به طور کلی حالت های blend در بازی باعث رسم چیز های مخلوط به همراه چیز هایی که از قبل در حال رسم هستند می شود. هر چیزی که شما در صفحه رسم می کنید از چهار عنصر تشکیل شده است: قرمز، سبز، آبی و آلفا. این عناصر به صورت پیشفرض و یا با استفاده از bm_normal رسم می شوند. این حالت blend همه پیکسل های صفحه را به همراه رنگ هایشان و مقادیر آلفا را بدون تغییر رسم می کند. در گیم میکر 2 ما چندین حالت پیش ساخته blend داریم که باعث می شود رفتار رسم چیزها دچار تغییر شود.
در گیم میکر استدیو 2 هنگامی که یک پیکسل رسم می شود رنگ منبع و رنگ مقصد وجود دارد. رنگ مبدا، رنگی است که قرار است رسم شود و رنگ مقصد، رنگی است که از قبل در پیکسلی که قصد رسم آن را داریم وجود دارد.
زمانی که رنگ جدیدی برای یک پیکسل تعیین می کنید، گیم میکر رنگ مقصد و مبدا را با توجه به رفتار blend ترکیب می کند. چهار عنصر نامبرده در بالا هر کدام در یک متغیر نوع float با مقادیر بین 0 تا 1 ذخیره می شوند. مقادیر جدید این عناصر با ضرب هر عنصر در مقدار رنگ عنصر مبدا و ضرب کردن هر عنصر مقصد و لحاظ کردن چند فاکتور و جمع زدن همه آنها به دست می آید.
حالت های اولیه blend
گیم میکر استدیو 2 از تابع gpu_set_blendmode() برای تغییر حالت blend مورد استفاده در بازی شما استفاده می کند. برای استفاده از حالت های blend باید قبل از رسم چیزی که قصد تغییر رنگش را دارید ابتدا از این تابع استفاده کنید و پس از پایان رسم دوباره blend را به حالت عادی بازگردانید. به مثال زیر دقت کنید
gpu_set_blendmode(bm_add); draw_self(); gpu_set_blendmode(bm_normal);
کد بالا اسپرایت یک instance را در حالت additive رسم می کند. این حالت یکی از چهار حالت اولیه blend در گیم میکر است: حالت های اولیه blend به شرح زیر هستند:
bm_normal
bm_add
bm_subtract
bm_max
همه ما میدانیم در حالت bm_normal چیز ها همانطور که هستند رسم می شوند بنابراین نگاهی به سایر حالت های اولیه blend در گیم میکر استدیو 2 می اندازیم.
حالت bm_add
این حالت رنگ های منبع و مقصد پیکسل ها را با هم جمع می کند(اما تغییری در مقادیر الفا اعمال نمی کند). به عنوان مثال، اگر تصویر پس زمینه یک رنگ جامد(یکپاچه یک رنگ) است و از ترکیب رنگ RGB (120،25،35) استفاده می کند، پس از اعمال bm_add مقدار نهایی RGB برای هر رنگ پیکسل چیزی شبیه به (220،20،100) خواهد بود. به خاطر داشته باشید در ترکیب رنگ RGB مقادیر بین 0 تا 255 هستند، از این رو این مقدار بالاتر از 255 یا کمتر از 0 نخواهد شد.
استفاده از این حالت blend برای ایجاد درخشش نئون مناسب است، اغلب از این حالت برای افکت های نوری یا لیزر استفاده می شود. به طور کلی برای هر چیزی که نیاز به درخشش یا نورانی بودن دارید این حالت blend مناسب است.
حالت bm_subtract
این حالت نسبت به قبلی کمی متفاوت است. به جای استفاده از مقادیر این حالت برپایه درصد کار می کند. این درصد از مقدار رنگ مقصد کسر می شود. برای اینکه بهتر این حالت را درک کنید به مثال زیر توجه کنید.
تصور کنید قصد دارید مقدار رنگ قرمز همه پیکسل هایی که در یک منطقه از اتاق رسم می شوند را به میزان 25% کاهش دهید. در اولین قدم باید مقدار 25% از 255 را محاسبه کنید و سپس آن را به مقدار RGB تبدیل و سپس آن را در حالت bm_subtract استفاده کنید. چیزی مثل کد های زیر:
var red = (25 / 100) * 255; var col = make_colour_rgb(red, 0, 0); gpu_set_blendmode(bm_subtract); draw_rectangle_colour(0, 0, 128, 256, col, col, col, col, false); gpu_set_blendmode(bm_normal);
با دنبال کردن همین قاعده، اگر بخواهید روشنایی پس زمینه را 50%درصد کاهش بدهید کافی است همه مقدار های RGB را کسر کنید. مثلا (255،255،255) به (128،128،128). از این حالت blend برای رسم سایه یا خلق افکت های fade out استفاده می شود.
حالت bm_max
این حالت بسیار پیچیده تر است. اساسا این حالت مقادیر منبع را در مقدار الفا ضرب می کند و سپس آنها را به مقدار رنگ مقصد که معکوس ضرب مقادیر رنگ منبع محاسبه شده اند اضافه می کند. نتیجه این حالت تصاویر با رنگ روشن تر و اشباع شده بدون حالت bm_add است که باعث درخشش تصویر می شد خواهد بود.
از این حالت برای زمانی که نیاز به رسم تصاویری که تداخل دارند استفاده می شود. روشنایی این حالت باعث نمی شود که تصاویر دیدن نشوند. سطح رنگ و مقدار hue همچنان باقی می مانند. به یاد داشته باشید که مقدار الفا مبدا تصویر بر مقدار نهایی blend تاثیر دارد.
نکته نهایی که باید در مورد حالت های blend بدانید این است که آن ها vertex batch را می شکنند. از این رو شما نباید از آن ها به صورت مختلط و به صورت همزمان بر روی چندین instance استفاده کنید. روش بهینه این است که یک آبجکت controller ایجاد کنید حالت blend را تنظیم و سپس از with() یا روش های دیگر برای رسم تصاویر مورد نیاز در instance مقصد قبل از تنظیم مجدد حالت blend به bm_normal استفاده شود.
نویسنده:
hadi eb