آموزش ساخت بازی‌های 2 بعدی با Ebitengine در زبان برنامه‌نویسی Go (گولنگ) - آخرین آپدیت

دانلود Building 2D Games with Ebitengine in Go (Golang)

نکته: ممکن هست محتوای این صفحه بروز نباشد ولی دانلود دوره آخرین آپدیت می باشد.
نمونه ویدیوها:
توضیحات دوره:

آموزش ساخت بازی با Go: از دسکتاپ تا وب با Ebitengine

با Go بازی بسازید: برای دسکتاپ (ویندوز، macOS، لینوکس و FreeBSD)، مرورگرهای وب، دستگاه‌های موبایل و حتی استیم.

در این دوره، یاد می‌گیرید چگونه یک بازی دوبعدی ساده در Go بسازید:

  • ساخت یک بازی 2D ساده در Go
  • انیمیشن‌سازی اسپرایت‌ها در بازی
  • پیاده‌سازی موتور برخورد (Collision Engine)
  • افزودن افکت‌های صوتی
  • استقرار بازی به عنوان یک اپلیکیشن یا صفحه وب با استفاده از WASM

پیش‌نیازها

آشنایی با زبان برنامه‌نویسی Go الزامی است.

در این دوره عملی، یاد می‌گیرید چگونه یک بازی شوتر فضایی کلاسیک 2D به نام Asteroids را با استفاده از کتابخانه قدرتمند و سبک Ebitengine در Go بسازید. چه مبتدی در توسعه بازی باشید و چه به دنبال گسترش مهارت‌های خود در یک زبان و فریم‌ورک جدید باشید، این دوره شما را در کل فرآیند ساخت نسخه خودتان از این بازی آرکید نمادین راهنمایی می‌کند.

API آسان Ebitengine به شما امکان می‌دهد بازی‌های 2D را به سرعت و به آسانی توسعه دهید. بازی‌ها را می‌توان در پلتفرم‌های مختلف از جمله ویندوز، مک، لینوکس، FreeBSD، وب، iOS و Android مستقر کرد. حتی می‌توانید بازی خود را در Steam مستقر کنید!

Go سریع است، و Ebitengine نیز همینطور. در حالی که API ترسیم Ebitengine بسیار ساده است، بازی‌های توسعه یافته در آن با قدرت GPU بسیار سریع اجرا می‌شوند.

در این دوره، یاد خواهیم گرفت چگونه:

  • معرفی Ebitengine: با اصول اولیه نحوه تنظیم Go و استفاده از Ebitengine برای توسعه بازی‌های 2D آشنا شوید.
  • مبانی طراحی بازی: مکانیک‌های اصلی بازی مانند حرکت بازیکن، برخورد اشیاء، حالات بازی و رندرینگ را درک کنید.
  • ایجاد دنیای بازی: یاد بگیرید چگونه میدان سیارکی، کنترل‌های سفینه فضایی و فیزیک فضایی - مانند چرخش، رانش و لختی - را طراحی کنید.
  • رندرینگ و انیمیشن: با نحوه ترسیم و انیمیشن‌سازی سفینه فضایی، سیارک‌ها، گلوله‌ها و انفجارها با استفاده از توابع ترسیم قدرتمند Ebitengine آشنا شوید.
  • منطق بازی: حلقه بازی، سیستم امتیازدهی، سطوح و مکانیک‌های ایجاد سیارک‌ها را پیاده‌سازی کنید. یاد بگیرید چگونه دشمنان را ایجاد کرده و سلامت بازیکن را مدیریت کنید.
  • صدا و موسیقی: جلوه‌های صوتی برای شلیک، انفجار و موسیقی پس‌زمینه را برای بهبود تجربه بازیکن اضافه کنید.
  • ساخت یک بازی قابل بازی: همه چیز را ادغام کنید تا یک بازی تعاملی و کاملاً کاربردی ایجاد کنید که در مرورگر یا در پلتفرم‌های دسکتاپ اجرا شود.

در پایان این دوره، کلون قابل بازی Asteroids خود را توسعه خواهید داد و دانش و اعتماد به نفس لازم برای ایجاد بازی‌های پیچیده‌تر 2D در Go را به دست خواهید آورد. چه بخواهید ویژگی‌های جدیدی اضافه کنید یا بازی خود را از ابتدا بسازید، این دوره شما را با مهارت‌های اساسی مورد نیاز برای توسعه بازی در Go با استفاده از Ebitengine مجهز می‌کند.

پیش‌نیازها:

  • دانش اولیه زبان برنامه‌نویسی Go.

ابزارهای مورد استفاده:

  • Go
  • Ebitengine (یک موتور بازی 2D برای Go)
  • Visual Studio Code (یا IDE مورد علاقه شما)

اولین قدم خود را در دنیای توسعه بازی با Go بردارید!


سرفصل ها و درس ها

مقدمه Introduction

  • مقدمه Introduction

  • کمی درباره من A bit about me

  • نصب Go Installing Go

  • نصب Visual Studio Code Installing Visual Studio Code

  • اطمینان از آماده بودن محیط توسعه برای Ebiten Ensuring our development environment is ready for Ebiten

  • درخواست کمک Asking for help

شروع کار با بازی Getting Started With Our Game

  • آنچه در این بخش خواهیم ساخت What we'll build in this section

  • یادداشت مهم برای کاربران Windows WSL Important note for Windows WSL users

  • شروع کار با بازی Getting started with our game

  • شروع کار با اسپرایت‌ها Getting started with sprites

  • ایجاد یک شیء Player با اسپرایت Creating a Player object with our sprite

  • رسم بازیکن روی صفحه Drawing the player to the screen

  • چرخاندن اسپرایت بازیکن Rotating the player sprite

  • حرکت دادن بازیکن روی صفحه Moving the player on the screen

  • نگه داشتن بازیکن روی صفحه Keeping the player on the screen

تنظیم صحنه‌ها Setting Up Scenes

  • آنچه در این بخش خواهیم ساخت What we'll build in this section

  • ساخت یک مدیر صحنه Building a scene manager

  • اصلاح نوع Game برای استفاده از مدیر صحنه Modifying the Game type to use a scene manager

  • تنظیم یک صحنه بازی Setting up a Game Scene

  • به‌روزرسانی نوع Player برای استفاده از مدیر صحنه Updating the Player type to use a scene manager

  • امتحان کردن پروژه به‌روزرسانی شده Trying out our updated project

  • اضافه کردن یک صحنه عنوان ساده Adding a simple title scene

  • به‌روزرسانی نمایش متن برای استفاده از text/v2 Updating text display to use text/v2

اضافه کردن شهاب سنگ‌ها به بازی Adding Meteors to our Game

  • آنچه در این بخش خواهیم ساخت What we'll build in this section

  • بارگیری دارایی‌های شهاب سنگ Loading meteor assets

  • شروع کار با meteor.go Getting started with meteor.go

  • اضافه کردن متدهای Update، Draw و keepOnScreen به نوع Meteor Adding the Update, Draw, and keepOnScreen methods to our Meteor type

  • رسم چند شهاب سنگ روی TitleScene Draw some meteors on the TitleScene

  • رسم شهاب سنگ‌ها روی GameScene Drawing meteors on the GameScene

تشخیص برخورد Collision detection

  • آنچه در این بخش خواهیم ساخت What we'll build in this section

  • اضافه کردن solarlune/resolv به پروژه برای فعال کردن تشخیص برخورد Add solarlune/resolv to our project to allow for collision detection

  • به‌روزرسانی شهاب سنگ‌ها برای ایجاد اشیاء برخورد Updating meteors to create collision objects

  • به‌روزرسانی بازیکن برای ایجاد شیء برخورد Updating the player to create collision object

  • ایجاد فضایی برای برخوردها در صحنه بازی Creating a space for collisions in the Game Scene

  • تست تشخیص برخورد Testing collision detection

پیاده‌سازی گیم‌پلی پایه Implementing Basic Gameplay

  • آنچه در این بخش خواهیم ساخت What we'll build in this section

  • شروع اضافه کردن لیزرهای بازیکن Getting started adding player lasers

  • اضافه کردن لیزرها به Player و Game Scene Adding lasers to the Player and Game Scene

  • شلیک واقعی لیزرها Actually firing lasers

  • نابود کردن شهاب سنگ‌ها با لیزرها Destroying meteors with lasers

  • نابود کردن شهاب سنگ‌ها با لیزرها II Destroying meteors with lasers II

  • نابود کردن بازیکن با شهاب سنگ‌ها Destroying the player with meteors

اضافه کردن صدا Adding Sound

  • آنچه در این بخش خواهیم ساخت What we'll build in this section

  • بارگیری دارایی صدای شتاب Loading acceleration sound asset

  • اضافه کردن صدای شتاب Adding acceleration sound

  • اضافه کردن خروجی اگزوز هنگام شتاب Adding exhaust while accelerating

  • اجازه دادن به بازیکن برای حرکت به عقب Allowing the player to move backwards

  • اضافه کردن صداهای لیزر Adding laser sounds

  • اضافه کردن صداهای انفجار Adding explosion sounds

  • اضافه کردن صداهای پس زمینه Adding background sounds

  • اضافه کردن ستاره‌های پس زمینه Adding background stars

  • اضافه کردن ستاره‌های پس زمینه به صحنه بازی Adding background stars to the Game Scene

اضافه کردن مراحل Adding Levels

  • آنچه در این بخش خواهیم ساخت What we'll build in this section

  • اضافه کردن صحنه پایان بازی Adding a Game Over Scene

  • اضافه کردن نشانگرهای تعداد جان باقی مانده Adding Lives Remaining indicators

  • اضافه کردن نشانگرهای تعداد جان باقی مانده II Adding Lives Remaining indicators II

  • نمایش امتیاز فعلی، بالاترین امتیاز و مرحله Displaying the current score, high score, and level

  • ذخیره بالاترین امتیاز Persisting the high score

  • رفتن به مرحله بعدی Moving to the next level

اضافه کردن سپر و هایپراسپیس Adding Shields and Hyperspace

  • آنچه در این بخش خواهیم ساخت What we'll build in this section

  • تنظیم دارایی‌های سپر، نوع و رسم سپر Setting up the Shield assets, type, and drawing the shield

  • نمایش و به‌روزرسانی سپر Displaying and updating the shield

  • تنظیم نشانگرهای سپر Setting up Shield Indicators

  • منحرف کردن شهاب سنگ‌ها از سپر Bouncing meteors off of the shield

  • تنظیم هایپراسپیس و نشانگر هایپراسپیس Setting up Hyperspace and the Hyperspace indicator

اضافه کردن فیزیک ساده بازی Adding Simple Game Physics

  • آنچه در این بخش خواهیم ساخت What we'll build in this section

  • تنظیم اینرسی پایه Setting up basic inertia

اضافه کردن موجودات فضایی Adding Aliens

  • آنچه در این بخش خواهیم ساخت What we'll build in this section

  • تنظیم نوع موجود فضایی Setting up the Alien Type

  • تنظیم نوع لیزر موجود فضایی Setting up the AlienLaser Type

  • به‌روزرسانی GameScene برای ایجاد موجودات فضایی Updating the GameScene to spawn aliens

  • اجازه دادن به موجودات فضایی برای شلیک لیزر Allowing the aliens to fire lasers

  • مدیریت برخورد بین موجودات فضایی، لیزرهای موجود فضایی و بازیکن Handling collisions between Aliens, Alien Lasers and the Player

استقرار برنامه Deploying the application

  • آنچه در این بخش خواهیم ساخت What we'll build in this section

  • ساخت یک فایل اجرایی با یک آیکون سفارشی برای Mac Building an executable with a custom icon for a Mac

  • ساخت یک فایل اجرایی با یک آیکون سفارشی برای Windows Building an executable with a custom icon for Windows

  • استقرار بازی به وب به عنوان یک فایل WASM Deploying our game to the web as a WASM file

نمایش نظرات

آموزش ساخت بازی‌های 2 بعدی با Ebitengine در زبان برنامه‌نویسی Go (گولنگ)
جزییات دوره
11 hours
77
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
387
4.7 از 5
دارد
دارد
دارد
Trevor Sawler
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar