آموزش دوره پیشرفته رابط کاربری گودو: ساخت سیستم پویا برای مدیریت موجودی کالا - آخرین آپدیت

دانلود Godot UI Masterclass: Build a Dynamic Inventory System

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

یادگیری ساخت رابط کاربری گسترده (UI) و سیستم‌های داده پویا در گودو با ساخت صفحه موجودی!

  • آموزش پیاده‌سازی سیستم موجودی و شخصیت و رابط کاربری از ابتدا
  • رابط‌های کاربری پیچیده با گودو، همه چیز درباره ساخت رابط کاربری با گودو
  • برنامه‌نویسی پیشرفته رابط کاربری با GDScript
  • مبانی گره‌ها و صحنه‌های گودو. درک عمیق اشیاء بازی و کامپوننت‌های گودو.
  • گره‌های کنترلی گودو و مبانی رابط کاربری شامل مارجین‌ها، لنگرها، چیدمان‌ها، چیدمان‌های واکنش‌گرا، نسبت ابعاد و موارد دیگر
  • نحوه ایجاد شبکه اسکرول نامحدود آیتم‌ها، نحوه تقسیم آن به صفحات و متحرک‌سازی پویا
  • نحوه ساخت مدل داده برای سیستم موجودی و تجهیزات، تفکیک آیتم‌ها بر اساس دسته‌بندی و ایجاد گروه‌های دسته‌بندی
  • درک گره‌های کانتینر گودو، قرارگیری خودکار رابط کاربری و پرچم‌های اندازه
  • نحوه ایجاد اسلات‌های آیتم قابل تجهیز که دسته‌بندی‌های قابل تنظیم آیتم‌ها را می‌پذیرند و آیتم‌های مجهز شده در این اسلات‌ها را نمایش می‌دهند
  • نحوه ایجاد و گسترش اشیاء قابل اسکریپت (منابع گودو سفارشی) با ویژگی‌های مختلف برای آیتم‌ها و تجهیزات
  • زبان اسکریپت‌نویسی گودو، GDScript، شامل الگوی ناظر با سیگنال‌های گودو به تفصیل، همراه با پروژه نمونه چراغ راهنمایی
  • نحوه مدیریت و همگام‌سازی آیتم‌های یک دستی و دو دستی، و همچنین خلع تجهیز خودکار آیتم‌ها در صورت مجهز بودن هر دو دست
  • نحوه ایجاد آیتم‌های قابل برداشتن، افزودن پویا آن‌ها به موجودی و لیست کردن آن‌ها در صفحه موجودی، در دسته‌بندی صحیح

پیش‌نیازها: گودو 3.5

  • منطق و مبانی برنامه‌نویسی پایه (جریان کنترل، متغیرها و غیره)
  • بدون نیاز به تجربه قبلی با گودو، همه چیز درباره گودو در این دوره آموزش داده می‌شود

در این دوره توسعه بازی با 98 ویدئوی کوتاه، مجموعاً 10 ساعت محتوای ویدیویی، یاد خواهید گرفت چگونه از موتور و ویرایشگر گودو برای ایجاد یک سیستم موجودی و رابط کاربری موجودی (UI) کاملاً پویا، با آیتم‌های شیء قابل اسکریپت و یک پایگاه داده مرکزی آیتم‌ها (با استفاده از منابع گودو) استفاده کنید. سیستم موجودی از دسته‌بندی‌های متعدد آیتم، گروه‌های دسته‌بندی، انیمیشن‌های اسکرول پویا، اسلات‌های قابل تجهیز (مثال: دست راست و دست چپ) و موارد دیگر پشتیبانی می‌کند.

سیستم موجودی که قصد دارید بسازید از صفحه موجودی بازی Zelda Breath of the Wild الهام گرفته شده است، و می‌تواند در بازی‌های RPG، FPS، ماجراجویی، Point-and-Click و غیره استفاده شود، اساساً در هر بازی که بازیکن بتواند آیتم‌ها را در دسته‌بندی‌های مختلف کسب کند و پیگیری کند.

این یک کلاس استادانه درباره ایجاد رابط کاربری، سیستم‌های سفارشی، داده‌های پویا سفارشی و رابط‌های پویا با گودو است. نه تنها داده‌ها، بلکه یک کلاس استادانه درباره سیستم منابع گودو است.

این دوره تمام دانش و قدرت لازم را برای ساخت رابط‌های کاربری واکنش‌گرا با گودو به شما می‌دهد، همچنین یاد می‌گیرید چگونه سیستم‌های پویایی بسازید که از داده‌های پویا با استفاده از مدل داده و اشیاء قابل اسکریپت خودتان استفاده می‌کنند.

همچنین یاد خواهید گرفت چگونه اشیاء بازی و کامپوننت‌های گودو قابل توسعه و گسترش سفارشی خود را با گره‌ها، صحنه‌ها و اسکریپت‌های سفارشی بسازید. یاد خواهید گرفت چگونه منابع گودو سفارشی ایجاد کنید و چگونه داده‌های پویا و ایستا را ترکیب و تطبیق دهید.

توجه! این دوره، دوره گودو 3.5+ است، دوره گودو 4 نیست! از گودو 4 با مسئولیت خود استفاده کنید. در هر صورت، کد منبع کاری و مهاجرت شده گودو 4 برای سیستم موجودی ایجاد شده در این دوره نیز در دسترس است و به دوره ضمیمه شده است، در صورتی که بخواهید مقایسه کرده و از آن در گودو 4 استفاده کنید [با مسئولیت خود].


در یک پاراگراف:

همه چیز را در مورد ساخت رابط‌های کاربری پیچیده با گودو، از ابتدا، و همچنین کدنویسی و افزودن رفتار به این رابط‌ها، ایجاد صفحات و کامپوننت‌های رابط کاربری واقعاً پویا یاد خواهید گرفت.


(تقریباً) همه چیزهایی که یاد خواهید گرفت:

  • مبانی گره‌ها و صحنه‌های گودو. درک عمیق اشیاء بازی و کامپوننت‌های گودو.
  • گره‌های کنترلی گودو و مبانی رابط کاربری شامل مارجین‌ها، لنگرها، چیدمان‌ها، چیدمان‌های واکنش‌گرا، نسبت ابعاد و موارد دیگر
  • نحوه درک گره‌های کانتینر گودو، قرارگیری خودکار رابط کاربری و پرچم‌های اندازه
  • نحوه ساخت صفحات رابط کاربری بزرگ با گودو که برای اندازه‌های مختلف صفحه و نسبت‌های ابعاد نیز واکنش‌گرا هستند.
  • نحوه ساخت ویجت‌های رابط کاربری سفارشی خود، گسترش و ارث‌بری از آن‌ها (گره‌های کنترلی و صحنه‌های سفارشی)
  • نحوه ایجاد یک کانتینر اسکرول نامحدود و شبکه‌هایی از آیتم‌ها، نحوه تقسیم آن به صفحات و متحرک‌سازی پویا
  • نحوه ساخت مدل داده برای سیستم موجودی و تجهیزات، تفکیک آیتم‌ها بر اساس دسته‌بندی و ایجاد گروه‌های دسته‌بندی، به عنوان مثال، لیست کردن سلاح‌های یک دستی و دو دستی زیر یک گروه سلاح، در حالی که طبقه‌بندی یک و دو دستی را حفظ می‌کنید
  • نحوه داشتن و لیست کردن چندین صفحه از آیتم‌ها زیر یک دسته
  • نحوه ساخت رابط کاربری که از داده‌های پویا و ایستا استفاده می‌کند
  • نحوه ایجاد اسلات‌های آیتم قابل تجهیز که دسته‌بندی‌های قابل تنظیم آیتم‌ها را می‌پذیرند و آیتم‌های مجهز شده در این اسلات‌ها را نمایش می‌دهند
  • نحوه نمایش ویژگی‌های آیتم و تجهیزات
  • نحوه ایجاد و گسترش اشیاء قابل اسکریپت (منابع گودو سفارشی) با ویژگی‌های مختلف برای آیتم‌ها و تجهیزات
  • زبان اسکریپت‌نویسی گودو، GDScript، شامل الگوی ناظر با سیگنال‌های گودو به تفصیل، همراه با پروژه نمونه چراغ راهنمایی
  • نحوه نوشتن سیگنال‌های GDScript سفارشی، اتصال به آن‌ها و انتشار آن‌ها
  • کدنویسی پیشرفته رابط کاربری با GDScript
  • نحوه مدیریت و همگام‌سازی آیتم‌های یک دستی و دو دستی، و همچنین خلع تجهیز خودکار آیتم‌ها در صورت مجهز بودن هر دو دست
  • نحوه ایجاد آیتم‌های قابل برداشتن، افزودن پویا آن‌ها به موجودی و لیست کردن آن‌ها در صفحه موجودی، در دسته‌بندی صحیح
  • و موارد دیگر!

ساختار دوره

این دوره به شرح زیر تقسیم شده است:

  • 98 ویدئوی کوتاه، مجموعاً 10 ساعت
  • مبانی گودو
  • ساخت رابط کاربری با ویرایشگر گودو
  • برنامه‌ریزی مدل داده سیستم موجودی
  • دوره فشرده GDScript
  • برنامه‌نویسی همه چیز با GDScript

در بخش برنامه‌نویسی، دلیل پشت هر خط کد را توضیح می‌دهم، بنابراین انتظار طرح‌های زیاد را داشته باشید.


نسخه گودو

این دوره از گودو 3.4.3 استفاده می‌کند. از آنجایی که گودو 4 بر مبانی گودو 3 بنا شده است، این دوره ماندگاری بالایی دارد، چیزی دریافت نخواهید کرد که منسوخ شود. تمام دانش قابل انتقال است، به خصوص در مورد نحوه ساخت رابط کاربری و ساختار مدل‌های داده.

گودو 4 هنوز بیش از حد ناپایدار و مستعد تغییرات مخرب است. هنگامی که نسخه پایدار گودو 4 منتشر شود، ویدئوهای ارتقاء و مهاجرت را ضبط خواهم کرد، به این ترتیب دو برابر یاد خواهید گرفت.


مخاطبان هدف

این دوره برای همه مخاطبان در نظر گرفته شده است، تنها پیش‌نیاز دانستن کمی منطق برنامه‌نویسی است. قبل از شروع این دوره نیازی به دانستن گودو ندارید.


موسیقی تریلر از ZapSplat


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

راه اندازی و مفاهیم گودو Setup and Godot Concepts

  • نصب و راه اندازی پروژه Installation and Project Setup

  • دانلود منابع Assets Download

  • رابط کاربری ویرایشگر گودو Godot Editor Interface

  • تنظیمات ویرایشگر Editor Settings

  • صحنه ها و گره ها Scenes and Nodes

  • کنترل ها، لنگرها، حاشیه ها و طرح بندی ها Controls, Anchors, Margins and Layouts

ساخت رابط کاربری با ویرایشگر گودو Creating the UI with the Godot Editor

  • مقدمه Introduction

  • راه اندازی صحنه موجودی UI Starting the UIInventory Scene

  • گره های کنترل کانتینر Container Control Nodes

  • قرار دادن HBoxContainer Placing a HBoxContainer

  • درک لنگرها و حاشیه ها Understading Anchors and Margins

  • اضافه کردن ستون های آیتم و اطلاعات Adding the Items and Info Columns

  • هدر دسته بندی و گرید Categories Header and Grid

  • صحنه دکمه دسته بندی Category Button Scene

  • تنظیمات دکمه دسته بندی Category Button Adjustments

  • گرید برای آیتم های موجودی Grid for Inventory Items

  • صحنه فریم دکمه قابل استفاده مجدد Reusable Button Frame Scene

  • صحنه دکمه آیتم موجودی Inventory Item Button Scene

  • تنظیم فلش های ناوبری Aligning the Navigation Arrows

  • ساخت جعبه اطلاعات آیتم Creating the Item Info Box

  • برچسب غنی برای توضیحات آیتم Rich Label for the Item Description

  • قالب سفارشی رابط کاربری Custom UI Theme

  • برچسب ها و آیکون های وضعیت آیتم و تجهیزات Item and Equipment Stats Labels and Icons

  • درک پرچم های اندازه Understanding Size Flags

  • مستندات درون گودو Documentation Inside Godot

  • اسلات های تجهیزات و موقعیت یابی پیچیده رابط کاربری Equipment Slots and Complex UI Positioning

  • رابط کاربری برای هر اندازه صفحه و حفظ نسبت تصویر UI to any Screen Size and Keep Aspect Ratio

  • منوی زمینه و پوسته سازی دکمه تنظیمات Context Menu and Setting Button Skinning

  • قرار دادن منوی زمینه Placing the Context Menu

  • درک پیمایش رابط کاربری در گودو Understanding UI Scrolling in Godot

  • قرار دادن ScrollContainer برای پیمایش آیتم های موجودی Placing the ScrollContainer to Scroll Inventory Items

  • سفارشی سازی و پنهان کردن نوارهای پیمایش Customizing and Hiding Scroll Bars

  • موجودی تمام صفحه و هدر عنوان Inventory Full Screen and Title Header

  • شمارنده طلا Gold Counter

  • نوار پیشرفت سطح شخصیت Character Level Progress Bar

  • فوتر موجودی و دکمه بستن Inventory Footer and Close Button

  • وارد کردن نمونه بازی و صحنه Tilemap Importing the Sample Game and Tilemap Scene

دوره فشرده GDScript GDScript Crash Course

  • مقدمه ای بر GDScript Intro to GDScript

  • سیگنال ها، کروتین ها و برنامه نویسی مبتنی بر رویداد Signals, Coroutines and Event-Based Programming

  • ساخت چراغ راهنمایی با گودو برای کاوش در تمام ویژگی های GDScript Building a Traffic Light with Godot to explore all features of GDScript

منابع گودو به صورت عمیق و مدل داده موجودی Godot Resources In-Depth and Inventory Data Model

  • منابع Resources

  • منابع به عنوان اشیاء قابل اسکریپت گذاری Resources as Scriptable Objects

  • چرا منابع سفارشی و اشیاء قابل اسکریپت گذاری ایجاد کنیم Why create custom Resources and Scriptable Objects

  • کدنویسی EntityItem و اولین منبع سفارشی ما Coding EntityItem and our First Custom Resource

  • ایجاد منابع آیتم بیشتر Creating More Item Resources

  • EntityPlayer و منبع بازیکن EntityPlayer and Player Resource

  • وضعیت بازی با تکینگی ها و پیش بارگذاری منابع Game State with Singletons and Preloading Resources

  • نمونه سازی منابع سفارشی، منابع منحصر به فرد و مشترک Instantiating Custom Resources, Unique and Shared Resources

  • موجودی با نمونه های منحصر به فرد آیتم و ارجاعات Inventory with Unique Item Instances and References

  • دسته بندی های آیتم متعدد در یک با نمایش های دسته بندی Multiple Item Categories in One with Category Displays

  • وارد کردن پایگاه داده نمونه و ایجاد موجودی بزرگ Importing the Sample Database and Creating a Big Inventory

  • بارگذاری پویا منابع از یک دایرکتوری Dynamically Loading Resources from a Directory

  • نمایه سازی آیتم ها بر اساس دسته بندی Indexing Items by Category

  • شمارش آیتم ها از دسته بندی های متعدد Counting Items from Multiple Categories

پر کردن پویا گرید های موجودی و انیمیشن های پیمایش Dynamically Populating Inventory Grids and Scroll Animations

  • برنامه ریزی پیمایش مبتنی بر صفحه بندی (پیمایش بی نهایت) Planning a Pagination Based Scrolling (Infinite Scrolling)

  • شروع پیاده سازی پیمایش Starting the Implementation of the Scrolling

  • نمونه سازی دکمه های گرید برای آیتم های موجودی Instantiating Grid Buttons for Inventory Items

  • اختصاص دادن EntityItem و اسپریت های آیتم به دکمه ها در گرید Assigning EntityItem and Item Sprites to Buttons in the Grid

  • تقسیم آیتم ها در صفحات گرید مختلف Splitting Items in Different Grid Pages

  • محاسبه اندازه صفحه و تعداد صفحات Calculating Page Size and Amount of Pages

  • پیمایش به چپ و راست با پرش به صفحات Scrolling Left and Right by Jumping to Pages

  • پنهان کردن دکمه های ناوبری در صفحات اول و آخر Hiding Navigation Buttons In the First and Last Pages

  • انیمیشن پیمایش پایه با انیمیشن پلیر Basic Scrolling Animation with an Animation Player

  • کدنویسی انیمیشن پیمایش به جلو Coding the Scroll Forward Animation

  • کدنویسی انیمیشن پیمایش به عقب Coding the Scroll Backwards Animation

  • به روز رسانی پارامترهای ناوبری هنگام اتمام انیمیشن Updating Navigation Params when the Animation Finishes

  • تقسیم آیتم ها بر اساس دسته بندی با گرید های پویا برای هر دسته بندی Splitting Items by Category with Dynamic Grids per Category

  • هک کد برای رفع مشکل انیمیشن پیمایش Code Hack to Fix the Scroll Animation Issue

دکمه های دسته بندی موجودی (نمایش های دسته بندی) Inventory Category Buttons (Category Displays)

  • نمونه سازی دکمه های دسته بندی Instantiating Category Buttons

  • اختصاص دادن آیکون های دسته بندی به دکمه ها Assigning the Icons of Categories to Buttons

  • ذخیره ارجاعات به صفحات نمایش دسته بندی و گره ها Saving References to Category Display Pages and Nodes

  • ناوبری به صفحه دسته بندی Navigate to Category Page

  • وضعیت دکمه دسته بندی و برجسته سازی هنگام قرار گرفتن ماوس روی آن Category Button States and Highlighting on Mouse Over

  • نمایش های دسته بندی فعال Active Category Displays

  • برچسب با نام دسته بندی فعال Label with the Name of the Active Category

  • برچسب در مرکز بالای دسته بندی فعال Label Centered on Top of the Active Category

  • حرکت برچسب دسته بندی با ماوس Category Label Movement with the Mouse

جعبه اطلاعات برای نمایش خواص و ویژگی های آیتم Info Box for Displaying Item Properties and Attributes

  • حاشیه برجسته سازی دکمه آیتم هنگام قرار گرفتن ماوس روی آن Item Button Mouse Hover Border

  • ارجاع به گره های جعبه اطلاعات Referencing the Nodes of the Info Box

  • اختصاص دادن خواص آیتم به جعبه اطلاعات Assigning Item Properties to the Info Box

  • نمایش خواص آیتم هنگام قرار گرفتن ماوس روی آن Displaying Item Properties on Mouse Hover

تجهیز و درآوردن آیتم ها Equipping and Unequipping Items

  • انیمیشن پلیر و توابع برای برجسته سازی دکمه های آیتم فعال AnimationPlayer and Functions to Highlight Active Item Buttons

  • برجسته سازی دکمه های آیتم با کلیک Highlighting Item Buttons on Click

  • نمایش منوی زمینه آیتم Showing the Item Context Menu

  • مدل داده برای آیتم های مجهز شده Data Model for Equipped Items

  • توابع پایه تجهیز و درآوردن آیتم ها Base Equip and Unequip Items Functions

  • سیگنال های سفارشی برای مدیریت رویدادهای تجهیز آیتم Custom Signals for Handling Item Equip Events

  • پس زمینه تجهیز آیتم Item Equipped Background

  • اتصال آیتم به منوی زمینه Binding an Item to the Context Menu

  • تجهیز و درآوردن آیتم ها با منوی زمینه Equip and Unequip Items with the Context Menu

  • اسلات های تجهیزات با انواع آیتم اختصاص داده شده Equipment Slots with Assigned Item Types

  • رفع فراخوانی اسلات درآوردن Fixing the Unequip Slot Callback

  • نمایش آیکون آیتم های مجهز شده Showing the Icon of the Equipped Items

  • به طور خودکار درآوردن یک دست هنگام تجهیز دو دست Automatically Unequip One Handed when Two Handed is Equipped

کسب و برداشتن آیتم ها Acquiring and Picking Up Items

  • اضافه کردن آیتم های جدید به موجودی Adding New Items Into The Inventory

  • بارگذاری مجدد صفحه موجودی با آیتم های جدید Reloading The Inventory Screen With New Items

  • پنهان و نمایش صفحه موجودی در بازی Hiding And Showing The Inventory Screen In The Game

  • مکث بازی هنگام باز بودن موجودی Pause The Game When The Inventory Is Open

  • گره های آیتم قابل جمع آوری و اضافه کردن به موجودی Collectable Item Nodes And Adding To The Inventory

نتیجه گیری Conclusion

  • پروژه تکمیل شده و کد منبع Completed Project and Source Code

نمایش نظرات

آموزش دوره پیشرفته رابط کاربری گودو: ساخت سیستم پویا برای مدیریت موجودی کالا
جزییات دوره
10 hours
100
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
652
4.4 از 5
دارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Alfred Reinold Baudisch Alfred Reinold Baudisch

همه کاره

اسم من آلفرد رینولد بادیش است و یک مهندس نرم افزار حرفه ای خودآموخته، معمار داده، خالق بازی و هنرمند سرگرمی هستم.

من از 8 سالگی برنامه نویسی را شروع کردم زیرا می خواستم بازی بسازم، از آن زمان تاکنون ده ها زبان برنامه نویسی مختلف، فریمورک، پلتفرم و موتور را یاد گرفته ام و در صدها پروژه مختلف در انواع و رده ها کار کرده ام. : وب سایت ها، برنامه های دسکتاپ، برنامه های موبایل، API ها، نرم افزارهای جاسازی شده، ابزارها و البته بازی های ویدیویی.

من به مدت 20 سال به عنوان یک توسعه دهنده فریلنسر کار کرده ام، تا اینکه در سال 2015 استارت آپ خود را تأسیس کردم: Fred (پلتفرم چت ربات خود را بسازید). علاوه بر این از سال 2018 من به عنوان مهندس ارشد نرم افزار با Elixir و Phoenix در یک استارتاپ فناوری کشاورزی در کپنهاگ، دانمارک کار می کنم.

من همچنین عاشق همه چیز در مورد هنر و توسعه بازی هستم و همچنین مشتاق ابزارهای منبع باز و منبع باز، به خصوص Blender، Krita و Godot هستم.

وقتی کار نمی‌کنم، یا در یک موزه، گالری هنری یا بیشتر اوقات در خانه هستم، طراحی، مدل‌سازی سه‌بعدی، ایجاد نمونه‌های اولیه بازی یا مشارکت در متن باز. من فقط نمی توانم از یادگیری و خلق کردن دست بکشم! این اشتیاق من است.