آموزش Unity Mobile Development Game: Enemy AI and Waypoints

Unity Mobile Game Development: Enemy AI and Waypoints

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: در این سری از آموزش‌های یونیتی، ما نشان می‌دهیم که چگونه نقاط بین راه را تنظیم کنیم تا به دشمنانمان اجازه دهیم بازیکن را جستجو کرده و از بین ببرند. نرم‌افزار مورد نیاز: Unity 3.4. در این سری از آموزش‌های Unity، نحوه راه‌اندازی ایستگاه‌های بین راه را نشان می‌دهیم تا به دشمنانمان اجازه دهیم بازیکن را جستجو کرده و از بین ببرند. همچنین در مورد چگونگی ایجاد یک هوش مصنوعی اولیه برای دشمنان خود بحث خواهیم کرد. داشتن رایانه ای که سطح ما را درک کند یکی از مهم ترین مشکلاتی است که هر توسعه دهنده بازی با آن مواجه است. نقاط راه راهی سریع و قدرتمند برای ایجاد یک مدل ساده از سطحی است که هوش مصنوعی بتواند آن را درک کند. هنگامی که ایستگاه‌های بین راه را راه‌اندازی و کار کردیم، یک هوش مصنوعی دشمن ایجاد می‌کنیم که می‌تواند بازیکن را پیدا کرده و به آن حمله کند. نرم افزار مورد نیاز: Unity 3.4.

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

معرفی و بررسی اجمالی پروژه Introduction and Project Overview

  • معرفی و بررسی اجمالی پروژه Introduction and Project Overview

Unity Mobile Development Game: Enemy AI and Waypoints Unity Mobile Game Development: Enemy AI and Waypoints

  • ترسیم مشکل موجودات در حال حرکت در سطح ما Mapping Out the Problem of Entities Moving Around Our Level

  • ایده های نقطه راه، مفاهیم و اجرای ما Waypoint Ideas, Concepts and Our Implementation

  • ایجاد یک پیش ساخته اولیه نقطه راه و تنظیم آن Creating an Initial Waypoint Prefab and Setting It Up

  • فیلتر کردن اشیاء نزدیک به سایر نقاط با ماسک لایه Filtering Nearby Objects to Other Waypoints with a Layer Mask

  • کدگذاری فاصله متغیر با حلقه while Coding a Variable Distance with a While Loop

  • ساخت و ساز در خط دید با ماسک های لایه ای Building in Line-of-sight with Layer Masks

  • انتقال اطلاعات به همسایگان بدون حلقه های بی نهایت Relaying Information to Neighbors Without Infinite Loops

  • راه اندازی یک لیست عمومی از نقاط راه برای رسیدن به بازیکن Initializing a Generic List of Waypoints to Get to the Player

  • ایجاد یک تابع Initialize و حذف شمارش معکوس Creating an Initialize Function and Removing the Countdown

  • استفاده از شرایط برای بررسی اینکه آیا می خواهیم لیست را به روز کنیم Using Conditionals to Check if We Want to Update the List

  • ایجاد یک اسکریپت کنترلر که تمام نقاط راه را جمع آوری می کند Creating a Controller Script That Gathers All the Waypoints

  • تعیین نزدیکترین نقطه راه به هر نقطه در فضا Locating the Closest Waypoint to Any Point in Space

  • کدگذاری یک تابع برای برگرداندن یک نقطه راه تصادفی Coding a Function to Return a Random Waypoint

  • استفاده از حلقه بازده واقعی while برای به روز رسانی هر چند ثانیه Using a While True Yield Loop to Update Every Few Seconds

  • ایجاد یک اسکریپت Spawner برای ایجاد دشمنان جدید Creating a Spawner Script to Create New Enemies

  • استفاده از کنترلر Spawn برای تخم ریزی تصادفی دشمنان Using a Spawn Controller to Randomly Spawn Enemies

  • کنترل تعداد دشمنان ایجاد شده Controlling the Number of Enemies Spawned

  • ایجاد یک اسکریپت اصلی دشمن برای استفاده از نقاط راه ما Creating a Basic Enemy Script to Use Our Waypoints

  • حرکت با روش Smooth Damp Moving with the Smooth Damp Method

  • تصمیم گیری برای رفتن به نقطه بعدی Deciding When to Go to the Next Waypoint

  • با استفاده از Rotate Towards and Look Rotation برای چرخاندن دشمن Using Rotate Towards and Look Rotation to Rotate the Enemy

  • تبدیل کد ما به یک تابع جدید Refactoring Our Code into a New Function

  • به روز رسانی لیست موقعیت بازیکن تا دشمنان متوقف نشوند Updating the Player Location List so the Enemies Don't Stop

  • Refactoring به یک تابع حلقه بی نهایت برای به روز رسانی نقاط راه Refactoring into an Infinite Loop Function to Update Waypoints

  • ایجاد یک ماشین حالت محدود اولیه برای اجرای هوش مصنوعی دشمن Creating a Basic Finite State Machine to Run Our Enemy AI

  • استفاده از یک دستور سوئیچ برای اجرای کد بر اساس دولت دشمن Using a Switch Statement to Run Code Based on the Enemy State

  • ایجاد یک تابع برای بررسی انتقال Creating a Function to Check for Transitions

  • اضافه کردن یک بررسی فاصله قبل از اینکه دشمن شروع به دنبال کردن کند Adding a Distance Check Before the Enemy Starts Following

  • تبدیل دشمن به جلو در حالت شروع Transforming the Enemy Forward in the Start State

  • وارد کردن هندسه نهایی ما و تقسیم انیمیشن ها Importing Our Final Geometry and Splitting Animations

  • به روز رسانی پیش ساخته دشمن ما با هندسه جدید Updating Our Enemy Prefab with the New Geometry

  • تغییر انیمیشن دشمن ما در کد با انیمیشن بازی Changing Our Enemy Animation in Code with Animation Play

  • کدگذاری یک تصمیم حمله در عملکرد انتقال ما Coding an Attack Decision into Our Transition Function

  • وقتی دشمنی مرده است به کنترل کننده تخم ریزی خود بگوییم Telling Our Spawn Controller When an Enemy Has Died

  • تغییر سرعت حرکت ما بر اساس وضعیت فعلی Changing Our Movement Speed Based on the Current State

  • کد ما را دوباره فاکتور می کنیم تا خواناتر و کاربرپسندتر باشد Refactoring Our Code to Be More Readable and User Friendly

  • بازی تست هوش مصنوعی دشمن ما و شکار اشکالات Playtesting Our Enemy AI and Hunting Down Bugs

  • استفاده از مقادیر تصادفی برای ایجاد حرکت واقعی تر Using Random Values to Create More Realistic Movement

  • افزودن یک برخورد دهنده به پیش ساخته ما برای تست ضربه Adding a Collider to Our Prefab for Hit Testing

  • آزمایش اینکه آیا ما مورد حمله یا ضربه قرار گرفته ایم Testing if We Have Been Attacked or Hit

  • کدنویسی برای سایر اعلان ها برای کار در بازی ما Coding for Other Notifications to Work in Our Game

  • توقف پخش انیمیشن ها در حالت توقف Stopping the Animations from Playing While Paused

  • توقف اجرای منطق پس از پایان بازی Stopping the Logic from Running When the Game Is Over

نمایش نظرات

آموزش Unity Mobile Development Game: Enemy AI and Waypoints
جزییات دوره
6h 24m
44
Pluralsight (پلورال سایت) Pluralsight (پلورال سایت)
(آخرین آپدیت)
از 5
دارد
دارد
دارد
Chris Glick
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Chris Glick Chris Glick

همراه با آموزش و ضبط آموزش ، او همچنین برای مدیریت تیم پشتیبانی و همکاری نزدیک با تیم توسعه تولید در Digital-Tutor ها ، اکنون یک شرکت Pluralsight است. او کار خود را با کار آزاد شروع کرد و به سرعت متوجه شد که می خواهد شرکتی را پیدا کند که بتواند با استفاده از استعدادهای خود به افراد در صنعت CG کمک کند. کریس به احتمال زیاد بیشتر از هر کس روی کره زمین آموزشهای خلاقانه Pluralsight را تماشا کرده است و این امر توسط مغز او و دانش دائرlopالمعارف آنیشتین در مورد همه چیزهای گرافیکی رایانه اثبات شده است. یکی از پروژه های مورد علاقه کریس در Pluralsight مشارکت وی در مجموعه خطوط تولید "Infiltrator": آهنگسازی در NUKE بوده است. اشتیاق کریس به دنبال یافتن راه های جدید و بهتر برای درک و استفاده از گرافیک رایانه ای او و کارش را سوق می دهد.