بازی سازی در اندروید – آشنایی با مراحل ساخت بازی در اندروید و معرفی ابزارهای لازم
گسترش بازار بازیهای موبایل و بازی سازی در اندروید یا iOS بر هیچ کس پوشیده نیست. با انداختن نگاهی به اطراف خود، تعداد زیادی ار افراد را مشاهده میکنید که در گوشیهای هوشمند خود مشغول بازی هستند. کاربران زیادی اوقات فراغت خود و حتی زمانهایی را که در مترو یا اتوبوس سپری میکنند به بازی با گوشی اختصاص میدهند. در واقع مهمترین مزیت بازی موبایل نیز همین است، این که بتوانید در هر جایی که هستید بازی خود را اجرا کرده و از آن لذت ببرید. اگر سری به مارکتهای دانلود اپلیکیشن بزنید، مشاهده میکنید که تعداد زیادی از اپلیکیشنهایی که بیشترین دانلود را تجربه کردهاند، بازیها هستند. پیش بینی میشود که تا سال ۲۰۲۵، ۷۱ درصد از درآمد گوگل پلی از دانلود بازیها به دست بیاید. کشورهای چین، آمریکا و ژاپن دارای بزرگترین بازارهای بازیهای موبایل در سال ۲۰۲۱ بودند. درآمد بازار بازی موبایل در این کشورها به ترتیب ۵۶، ۴۳ و ۲۰ میلیارد دلار بوده است.
تاریخچه بازی سازی در اندروید
بازار بازیهای موبایل، شکستن رکوردهای زیادی را به خود دیده است و میلیاردها دلار سود را نصیب توسعه دهندگان بازی موبایل کرده است. هر روز به تعداد کاربرانی که از بازیهای موبایل استفاده میکنند افزوده میشود. حتی شرکتهای سازنده تلفن همراه نیز اقدام به تولید گوشیهایی کردهاند که دارای مشخصات سخت افزاری مناسب اجرای بازیهای به شدت گرافیکی باشد و در واقع از این گوشیها با عنوان گوشی گیمینگ یاد میشود. مشتری اصلی این گوشیها افرادی هستند که ساعات زیادی را به بازی کردن اختصاص میدهند.
از طرفی توسعه دهندگان بازی موبایل، با توسعه بازیهای به شدت معتاد کننده که نیاز به سخت افزار قوی برای اجرا ندارد نیز، سعی کردهاند بازیهایی بسازند که هر شخص صاحب یک گوشی هوشمند قادر به اجرای آن باشد و از این طریق بازار بازیهای خود را به شدت گسترش دادهاند. در واقع یکی دیگر از مزایای بازیهای موبایل این است که شما برای انجام بازی موبایل، میتوانید با اختصاص بودجهای معقول، یک گوشی هوشمند را تهیه کرده و به بازی بپردازید. اما برای انجام بازیهای کامپیوتری و کنسولی، باید بسیار بیشتر هزینه کنید.
بسیاری از توسعه دهندگان بازی موبایل، بازیهای خود را برای دو پلتفرم پرکاربرد آی او اس و اندروید منتشر میکنند. طبق آمار، اندروید در بازار جهانی سهمی حدود ۷۳ درصد را به خود اختصاص داده است. این آمار نشان دهنده سهم بزرگ بازار اندروید و تعداد زیادی کاربران آن است. بنابراین طبیعی است که بسیاری از توسعه دهندگان بازی، بازیهای خود را تنها برای این پلتفرم منتشر کنند. این آمار در کشور عزیز ما ایران نیز صدق میکند. تعداد زیادی از کاربران صاحب یک گوشی اندرویدی هستند. با توجه به محدودیتهای توسعه بازی برای کامپیوتر و کنسولها در ایران، بسیاری از توسعه دهندگان به توسعه بازی اندرویدی روی آوردهاند. در این سالها، توسعه بازیهای اندرویدی در ایران با رشد قابل توجهی همراه بوده است و میتوانید بازیهای بسیار سرگرم کننده و جذابی را در ژانرهای مختلف پیدا کنید که توسط توسعه دهندگان ایرانی ساخته شدهاند.
بعضی از این بازیها عبارتاند از:
- بازی آمیرزا در ژانر کلمات و دانستنیها
- بازی کوویز آو کینگز در ژانر کلمات و دانستیها
- بازی نبرد پادشاهان در ژانر استراتژی
- بازی دنده دو در ژانر رانندگی
- بازی دریفت در ژانر رانندگی
- بازی اسپلش تون در ژانر امتیازی
- بازی انتقام کرگدن در ژانر رانر (Runner)
میتوانید به مارکتهای دانلود و خرید اپلیکیشن ایرانی سری زده و این بازیها را دانلود کنید و از آنها لذت ببرید. با خواندن این مقدمه درباره بازیهای موبایل، ممکن است به فکر توسعه بازی اندرویدی و کسب درآمد از این طریق افتاده باشید. در ادامه این مطلب قصد داریم راهنماییهای لازم برای بازی سازی در اندروید را به شما ارائه دهیم. در واقع شما را با ابزار و دانش لازم برای توسعه بازی اندرویدی آشنا خواهیم کرد.
برای توسعه بازی اندرویدی، باید با برنامه نویسی اندروید آشنا باشید. اگر با برنامه نویسی اندروید آشنایی ندارید، به شما توصیه میکنیم مجموعه آموزش برنامه نویسی اندروید را از فرادرس تهیه و مشاهده کنید.
مراحل کلی بازی سازی در اندروید
قبل از پرداختن به ابزار لازم برای ساخت بازی در اندروید، بهتر است با مراحل کلی توسعه بازی اندرویدی آشنا شوید.
۱. برنامه ریزی کنید
باید مشخص کنید که میخواهید چه چیزی را بسازید. ژانر بازی شما چه خواهد بود؟ آیا بازی شما سه بعدی است یا دو بعدی؟ زمانی را به بررسی ایدههای خود اختصاص دهید. کاراکترهای منحصربفردی را برای بازی خود طراحی کنید. گیم پلی بازی را حتماً مدنظر قرار دهید. گیم پلی بازی شما باید جذاب بوده و خسته کننده نباشد. اگر به خوبی برای ساخت بازی برنامه ریزی نکنید، بازی شا با شکست روبرو خواهد شد.
۲. ابزار خود را انتخاب کنید
ساخت بازی اندرویدی به خودی خود سخت است. پس بهتر است با استفاده نکردن از ابزار و نرم افزارهای مناسب آن را سختتر نکنید. تصمیم بگیرید که میخواهید از یک موتور بازی سازی استفاده کنید یا از یک محیط توسعه مانند اندروید استودیو. هر یک از این ابزار مزایا و معایبی دارند که در ادامه این مطلب به آنها خواهیم پرداخت.
۳. زبان برنامه نویسی لازم را یاد بگیرید
هر چقدر هم ابزار مناسبی برای بازی سازی در اندروید در اختیارشما باشد، باز هم باید با برنامه نویسی آشنا باشید. بهترین زبانی که میتوانید آن را برای شروع انتخاب کنید، سی شارپ است. زبانهای کاتلین و جاوا را نیز برای یادگیری برنامه نویسی اندروید در نظر بگیرید.
- آموزش کاربردی برنامه نویسی سی شارپ #C
- آموزش برنامه نویسی کاتلین – توسعه اندروید با Kotlin
- آموزش برنامه نویسی جاوا Java
۴. پروژه خود را آغاز کنید
سعی کنید ابتدا مفاهیم ساده و قوانین اصلی بازی خود را پیاده سازی کنید، پیاده سازی جژئیات را برای بعد بگذارید. پس از طراحی و پیاده سازی قوانین و مکانیزمهای اصلی بازی، اولین مرحله بازی را طراحی کنید. عناصر گرافیکی را در محیط بازی قرار داده و بازی را تست کنید. پس از طراحی سایر مراحل، رابط کاربری بازی شامل منوها، گزینهها و غیره را پیاده سازی کنید.
۵. محیط گرافیکی بازی را بسازید
برای ساخت عناصر گرافیکی، دو راه پیش رو دارید:
- استفاده از فوتوشاپ یا سایر نرم افزارهای مشابه و طراحی گرافیک توسط خودتان
- سپردن طراحی عناصر گرافیکی به یک گرافیست
میتوانید هر راهی که برای شما بهتر است را انتخاب کنید و در پیش بگیرید.
۶. سطح بازی را ارتقا دهید
دانستن نحوه ساخت بازی در اندروید، برای موفقیت آن کافی نیست. بازی کنندگان باید به انجام بازی ترغیب شوند، به همین منظور موارد زیر را در نظر بگیرید:
- از واضح بودن بازی و زیبا بودن عناصر گرافیکی اطمینان حاصل کنید
- کنترل بازی را راحت و نوآورانه کنید
- یک خط داستانی جذاب را به بازی اضافه کنید
- از موسیقی مناسب در بازی خود استفاده کنید
- بازی را بارها و بارها و بارها تست کنید!
۷. بازی خود را منتشر کنید
یکی از اشتباهاتی که از توسعه دهندگان تازه کار بازی اندرویدی سر میزند، تلاش برای بی نقص بودن بازی است. این تلاش، منجر به عقب افتادن انتشار بازی خواهد شد. بهتر است بازی را در زمان مناسب منتشر کنید. اگر بازی شما مخاطبان خود را پیدا کند، آنها شما را از عیبهای بازی باخبر میکنند تا بتوانید بازی خود را بهبود ببخشید.
بازی سازی در اندروید – پیش نیازها و ابزار لازم
اولین چیزی که باید برای توسعه بازی اندرویدی در نظر بگیرید، نوع آن بازی است. بعد از آن باید ابزارهای لازم برای توسعه را انتخاب کنید. نرم افزارها، زبانهای برنامه نویسی و رویکردهای مختلفی وجود دارند که میتوانید از آنها برای ساخت اولین بازی اندرویدی خود استفاده کنید. این که از کدام ابزار برای توسعه بازی اندرویدی استفاده کنید، بستگی به اهداف شما و نوع بازی دارد. در این قسمت، محبوبترین انتخابها برای بازی سازی در اندروید را با هم مرور خواهیم کرد.
یونیتی (Unity)
برای توسعه اکثر بازیهای اندروید، استفاده از یونیتی توصیه میشود. یونیتی، یک موتور بازی سازی یا گیم انجین (Game Engine) است. موتور بازی سازی، ابزارهای لازم برای نورپردازی محیط بازی، ساخت محیط فیزیکی بازی، نحوه کنترل و جلو بردن بازی و سایر عناصر مربوط به بازی را برای شما به صورت یکجا فراهم میکند. استفاده از یونیتی به صورت پیش فرض رایگان است. اما زمانی که محصول شما تعداد بسیار زیادی دانلود را تجربه کند، باید مبلغی را در ازای استفاده از یونیتی پرداخت کنید.
استفاده از موتور بازی سازی، فرآیند طراحی بازی اندرویدی را بسیار سرراست و ساده خواهد کرد. یونیتی از یک رابط کاربری قدرتمند و در عین حال ساده بهره میبرد که میتوانید عناصر موجود در دنیای بازی را با کشیدن و رها کردن (Drag and Drop) به بازی اضافه کنید. ویژگیهای منحصر بفرد یونیتی، آن را تبدیل به یک ابزار بهینه و مناسب برای ساخت بازی اندرویدی کرده است. میتوانید بسیاری از عناصر گرافیکی نظیر نوشتههای سه بعدی را به راحتی به بازی خود اضافه کنید.
یونیتی به صورت پیشفرض از واقعیت مجازی پشتیبانی میکند و میتوانید با استفاده از آن برای پلتفرمهای مختلف بازی بسازید. شما میتوانید یک بازی را در یونیتی توسعه داده و همان بازی را برای پلتفرمهای اندروید، پی سی و آی او اس منتشر کنید. بنابراین از حجم کار شما برای انتشار بازی به منظور اجرا در پلتفرمهای مختلف کاسته خواهد شد. توجه داشته باشید که یونیتی، یک ابزار تمام و کمال برای ساخت بازی نیست. در نهایت برای ساخت بازی و انتشار نهایی آن به مقداری کدنویسی احتیاج دارید. یادگیری زبان سی شارپ (C#) برای توسعه بازی در یونیتی لازم است. بسیاری از تیمهای حرفهای از یونیتی برای توسعه بازی اندرویدی استفاده میکنند و اعضای تیم به زبان سی شارپ تسلط کافی را دارند.
برای توسعه بازیهای اندرویدی دو بعدی یا سه بعدی، یونیتی ابزار بسیار مناسبی است. البته به شرطی که علاقه داشته باشید تا زبان سی شارپ را نیز یاد بگیرید.
- آموزش پروژه محور یونیتی – ساخت بازی ماجرایی اندرویدی در Unity
- آموزش پروژه محور یونیتی – طراحی سطوح سه بعدی در بازی سازی در Unity
برای شروع کار با یونیتی، به صفحه رسمی آن مراجعه و یونیتی را دانلود کنید. همچنین باید کیت توسعه اندروید یا Android SDK (Android Software Development Kit) را از این لینک دانلود و نصب کنید.
اندروید استودیو (Android Studio)
اندروید استودیو، ابزار رسمی توسعه اپلکیشنهای اندرویدی محسوب میشود. اندروید استودیو شامل ابزار توسعه گیم اندروید نیز میشود. اندروید استودیو مستقیماً توسط گوگل توسعه داده شده و پشتیبانی میشود. اندروید استودیو از زبانهای جاوا و کاتلین به عنوان زبانهای اصلی توسعه اپلیکیشن اندرویدی پشتیبانی میکند. اندروید استودیو را میتوان یک محیط توسعه یکپارچه یا IDE در نظر گرفت. محیط توسعه یکپارچه، نرم افزاری است که ابزارهای لازم برای برنامه نویسی، تست برنامه و رفع خطا را به صورت یکجا در اختیار شما قرار میدهد.
با دانلود و نصب اندروید استودیو، کیت توسعه نرم افزاری اندروید نیز برای شما فراهم میشود. علاوه بر آن از یک شبیه ساز اجرای اپلیکیشنهای اندرویدی نیز بهره مند خواهید شد. ابزارهای قدرمندی برای تست و رفع خطای اپلیکیشن نیز در اختیار شما قرار خواهد گرفت. اگر تجربهای در برنامه نویسی ندارید، توسعه بازی با استفاده از اندروید استودیو میتواند برای شما چالشهای زیادی را ایجاد کند.
مقایسه یونیتی و اندروید استودیو
یونیتی محیطی کاربرپسند را برای بازی سازی در اندروید در اختیار شما قرار میدهد و میتوانید از عناصری که از قبل طراحی شدهاند در بازی خود استفاده کنید. این در حالی است که اندروید استودیو یک IDE سنتی محسوب شده و هنگامی که آن را برای اولین بار نصب میکنید با تعدادی فایل و کدهای از قبل نوشته شده مواجه خواهید شد و انجام بقیه کارها به عهده شماست. به همین علت استفاده از اندروید استودیو برای توسعه دهندگان تازه کار مقداری چالش برانگیز خواهد بود.
برای استفاده از اندروید استودیو باید مهارتهای زیر را از قبل کسب کرده باشید و با آنها به اندازه کافی آشنا باشید:
- آشنایی با زبانهای کاتلین یا جاوا
- آشنایی با XML به منظور ساخت فایلهای layout
- آشنایی با چرخه حیات اپلیکیشن اندرویدی
- آشنایی با ساختار فایلها و منابع مختلف در یک اپلیکیشن اندرویدی
- آشنایی با وابستگیها (Dependency) و مانیفست اندروید
گوگل به طور پیوسته مشغول توسعه اندروید استودیو و اضافه کردن ویژگیهای جدید به آن است. به همین علت باید همواره ویژگیهای جدید اندروید استودیو را یاد گرفته و اپلیکیشن خود را با آنها هماهنگ کنید. انجام این کار نیز به خودی خود میتواند چالش برانگیز باشد. درست است که احتیاجی به یادگیری تمامی ویژگیها و امکانات اندروید استودیو ندارید، اما با وجود این همه امکانات، دانستن این نکته که باید از کجا شروع کرد سختتر و سختتر میشود. علاوه بر این اندروید استودیو بر خلاف یونیتی به همراه ویژگیهای از پیش تعیین شده برای تعریف فیزیک بازی یا رندرینگ عرضه نمیشود.
اگر بخواهید یک بازی سه بعدی را با استفاده از اندروید استودیو توسعه دهید، یا باید از کتابخانهها و ابزار خارجی استفاده کنید یا تمام منطق و قیزیک بازی اندرویدی را توسط خودتان و از صفر طراحی و پیاده سازی کنید. این به معنای آن است که باید زمان بسیار بیشتری را باید برای طراحی هر نوعی از بازی اختصاص دهید. به همین علت است که حتی استودیوهای بازی سازی حرفهای نیز استفاده از یونیتی را در بسیاری از موارد ترجیح میدهند. اما تصور نکنید که استفاده از اندروید استودیو، هیچ فایدهای ندارد! با یادگیری توسعه بازی با استفاده از اندروید استودیو، میتوانید هر جنبه بازی خود را مطابق سلیقه خود طراحی کنید و بسازید. همچنین اندروید استودیو امکان همگام سازی اپلیکیشنهای شما با آخرین نسخههای اندروید و استفاده از متریال دیزاین را نیز برای شما فراهم میکند.
توصیه میکنیم تنها در موارد زیر از اندروید استودیو برای توسعه بازی اندرویدی استفاده کنید:
- بازی شما یک بازی معمایی که از صفحات ثابت به جای انیمیشن استفاده میکند باشد
- بازی شما یک بازی اکشن ساده دو بعدی باشد
- از پیش تجربه مناسبی در برنامه نویسی داشته باشید
- زمان و اراده کافی برای یادگیری امکانات پیچیده اندروید استودیو را داشته باشید
برای دانلود اندروید استودیو و شروع کار با آن به این لینک مراجعه کنید.
سایر گزینه ها برای بازی سازی در اندروید
اندروید استودیو و یونیتی تقریباً برای ساخت هر نوع بازی اندرویدی کافی هستند. اما گزینههای دیگری هم وجود دارند. برای مثال آنرییل انجین (Unreal Engine) جایگزین مناسبی برای یونیتی به منظور ساخت بازیهای دو بعدی و سه بعدی است. آنرییل انجین یک موتور بازی سازی قدرتمند برای ساخت بازیهای PC است، اما میتواند برای ساخت بازیهای موبایل هم به کار گرفته شود. اگرچه بازهم نمیتواند جای یونیتی را بگیرد.
گزینه دیگر را میتوانید در ویژوال استودیو و افزونه زامارین (Xamarin) آن پیدا کنید. زامارین، جایگزین مناسبی برای اندروید استودیو محسوب میشود. اگر نمیخواهید از یک موتور بازی سازی مانند یونیتی استفاده کنید و در عین حال میخواهید از پروژه خود برای هردوی پلتفرمهای آی او اس و اندروید خروجی بگیرید، زامارین گزینه قدرتمندی محسوب میشود. از نظر بسیاری از کاربران، کار با ویژوال استودیو از کار با اندروید استودیو راحتتر است. همچنین میتوانید در آن از یک زبان سادهتر از جاوا یعنی سی شارپ استفاده کنید.
استفاده از بازی سازها
اگر هیچ علاقهای به یادگیری برنامه نویسی ندارید، میتوانید از بازی سازها (Game makers) استفاده کنید. این بازی سازها یا نیازی به برنامه نویسی ندارند، یا نیاز بسیار کمی به برنامه نویسی دارند. قدرتمندترین بازی سازی که میتوانید از آن استفاده کنید گیم میکر استودیو ۲ (GameMaker Studio 2) است. این بازی ساز یک موتور بازی سازی و IDE قدرتمند است که فرآیند بازی سازی را تا حد بسیار زیادی برای شما ساده کرده است. البته در نظر داشته باشید که استفاده از این ابزار رایگان نیست. چرخه یادگیری کار با این ابزار بسیار کوتاهتر از یونیتی است، در حالی که امکانات قدرتمندی را برای شما فراهم میکند.
کلام آخر درباره بازی سازی در اندروید
در این مطلب تلاش کردیم تا توضیحات کاملی را درباره روند کلی بازی سازی در اندروید و همچنین ابزار لازم برای ساخت بازی اندرویدی را ارائه دهیم. اگر میخواهید با مباحث مربوط به ساخت بازی اندرویدی بیشتر آشنا شوید، پیشنهاد میکنیم به فرادرس مراجعه کنید. فرادرس یک مرجع آنلاین برای تهیه و مشاهده ویدیوهای آموزشی است که میتوانید دورههای آموزشی مناسبی برای برنامه نویسی و سایر مباحث مرتبط در آن پیدا کنید.