مرورگر شما از این ویدیو پشتیبانی نمی کند.
نکته:
آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
(صرفا برای مشاهده نمونه ویدیو، ممکن هست نیاز به شکن داشته باشید.)
بارگزاری مجدد
توضیحات دوره:
آموزش اصول برنامه نویسی و توسعه بازی با C++ و Unreal Engine در این دوره برای مبتدیان کامل یادگیری اصول برنامه نویسی C++ از طریق مثال ها و تصاویر ساده مهارت های اشکال زدایی و حل مسئله یاد بگیرید که چگونه C++ در پروژه های دنیای واقعی استفاده می شود، با مثال هایی از پایگاه کد Unreal Engine درک کنید. چگونه می توان از ویژگی های C++ میانی مانند برنامه نویسی شی گرا، ارث و قالب ها به صورت ترکیبی استفاده کرد. فداکاری و مایل به کار سخت.اگر به دنبال برنامه درسی هستید تا شما را برای شغلی به عنوان توسعه دهنده ++C آماده کند، یا شاید جاه طلبی شما توسعه بازی های مستقل خود باشد، پس این دوره برای شما مناسب است!
موضوعات C++ متوسط مانند برنامه نویسی شی گرا، اشاره گرها، وراثت و الگوها می تواند برای برخی از دانش آموزان ترسناک باشد، اما من از مثال های ساده، خلاصه، تمرین ها و تصاویر گام به گام در سرتاسر استفاده می کنم.
یادگیری مفاهیم C++ به صورت مجزا با نوشتن برنامه های کاربردی کنسول ساده کافی نیست - باید یاد بگیرید که از ویژگی های متوسط در ترکیب استفاده کنید.
از طریق مثالهای پروژه Unreal Engine، توضیح میدهم که ویژگیهای زبانی خاص کجا در یک پروژه دنیای واقعی مفید هستند. این به شما درک عمیقتری از آن ویژگیهای زبانی میدهد و نه فقط نحوه استفاده از آنها، بلکه اینکه چرا یادگیری و به خاطر سپردن آنها مهم است و کجا مفید خواهند بود.
چه چیزی یاد خواهم گرفت؟
با پیروی از ماژولهای پایه، C++101 و C++102، یاد میگیرید که از ویژگیهای C++ میانی در ترکیب با برنامهنویسی منطق بازی در Unreal Engine استفاده کنید.
ماژول C++101 (مبانی):
در این ماژول متغیرها و انواع متغیرها را بررسی می کنیم (درک انواع در C++ بسیار مهم است).
من عبارات شرطی و عملگرهای منطقی (نحوه نوشتن منطق تصمیم گیری) را معرفی می کنم.
عبارات تکراری مانند حلقه while() و حلقه for() به ما امکان میدهند منطقی را بنویسیم که به طور مکرر اجرا میشود - و ما راههای زیادی برای کنترل حلقه/تکرار داریم.
آرایه ها (محفظه های متغیرها).
توابع، اصول اشکال زدایی، و ترفندهای نکات ویژوال استودیو برای سرعت بخشیدن به گردش کار شما.
ماژول C++102:
برنامه نویسی شی گرا: ساختارها، کلاس ها، وراثت و چند شکلی.
اشارهگرها و مراجع به تفصیل پوشش داده شدهاند.
کاراکترها با جزئیات پوشانده شده اند، و من همچنین کلاس رشته استاندارد را معرفی می کنم.
اشکالزدایی و نکات نکات ویژوال استودیو.
این ماژول همچنین شامل درسهای متوسطی در مورد الگوها، اشارهگرهای هوشمند، تماسها و موارد دیگر است.
C++ استانداردهای تحت پوشش:
این دوره همچنین شامل سخنرانی هایی در مورد ویژگی های زبان C است که در C++ استفاده می شود (یا می توان از آنها استفاده کرد).
دروس C++20 برای نسخه آینده برنامه ریزی شده است - این استاندارد هنوز به طور گسترده پذیرفته نشده است.
دروس بیشتری برای این دوره برنامه ریزی شده است، از جمله STL، مدیریت استثنا و بسیاری دیگر.
برای محتوای Unreal Engine 5، من با معرفی اصول اولیه موتور شروع میکنم، سپس یک پروژه ساده C++ را به کار میبریم که در آن اصول اولیه را اعمال میکنیم و همچنین چند چیز جدید را در طول مسیر یاد میگیریم.
چه تجربه برنامه نویسی ندارید، یا قبلاً با یک زبان برنامه نویسی آشنا هستید و می خواهید نحوه کدنویسی منطق بازی در Unreal Engine 5 با C++ را یاد بگیرید، این دوره برای شما مناسب است!
سرفصل ها و درس ها
C++101 - مراحل اول
C++101 - First Steps
چرا برنامه نویسی C++ را مطالعه کنیم؟
Why Study C++ Programming?
چه چیزی این دوره را متمایز می کند
What Sets This Course Apart
نکات جهت یابی و مطالعه
Orientation and Study Tips
امکانات توسعه نرم افزار
Software Development Facilities
نصب Visual Studio Community 2022
Visual Studio Community 2022 Installation
ایجاد پروژه های خالی کنسول C++ و افزودن فایل ها به پروژه ها
Creating Empty C++ Console Projects & Adding Files to Projects
تابع اصلی
The main Function
اپراتورها
Operators
دستورالعمل های پیش پردازنده، فضاهای نام و عملگر درج جریان - تئوری
Preprocessor Directives, Namespaces and the Stream Insertion Operator - THEORY
دستورالعمل های پیش پردازنده، فضاهای نام و اپراتور درج جریان عملی
Preprocessor Directives, Namespaces and the Stream Insertion Operator PRACTICAL
توقف اجرای برنامه
Pausing Program Execution
ویژوال استودیو - سفارشی سازی رابط پایه
Visual Studio - Basic Interface Customization
تغییر تم رنگ در ویژوال استودیو
Altering the Colour Theme in Visual Studio
ذخیره طرحبندی پنجرهها در ویژوال استودیو
Saving Window Layouts in Visual Studio
مراحل اول با C++ Quiz
First Steps with C++ Quiz
C++101 - متغیرها، نظرات و محاسبات
C++101 - Variables, Comments and Arithmetic
مقدمه درس متغیرها
Variables Lesson Introduction
مقدمه ای بر لفظ ها و متغیرها
An Introduction to Literals and Variables
اپراتور تخصیص و اعلام و مقداردهی متغیر
The Assignment Operator and Variable Declaration & Initialization
قوانین شناسه متغیر و کلمات رزرو شده
Variable Identifier Rules and Reserved Words
عملگرهای حسابی
Arithmetic Operators
نمونه های مقدار دهی و حسابی
Initialization and Arithmetic Examples
اپراتورهای واگذاری
Assignment Operators
ورودی کنسول
Console Input
نظرات
Comments
لیست وظایف و نشانک ها
The Task List and Bookmarks
گزینه های مقداردهی اولیه
Initialization Options
انواع عدد صحیح و اندازه اپراتور
Integer Types and the sizeof Operator
بخش و اپراتورهای مدول
The Division and Modulus Operators
اپراتورهای افزایش و کاهش
The Increment and Decrement Operators
آزمون متغیرها و حسابی
Variables and arithmetic Quiz
C++101 - انواع ممیز شناور و تبدیل
C++101 - Floating-Point Types and Conversions
انواع ممیز شناور
Floating-Point Types
ثابت ها
Constants
تبدیل ها و عبارات ترکیبی
Conversions and Mixed Expressions
نمایش و تبدیل ممیز شناور
Floating-Point Representation and Conversion
C++101 - اجرای شرطی و عملگرهای منطقی
C++101 - Conditional Execution and Logical Operators
نوع bool
The bool Type
اپراتورهای رابطه ای
Relational Operators
بیانیه if
The if Statement
تودرتو اگر...دیگر بیانیه ها
Nested if...else Statements
عملگرهای منطقی
Logical Operators
تمرین اپراتورهای رابطه ای
Relational Operators Exercise
ارزیابی مدار کوتاه
Short Circuit Evaluation
نوع کاراکتر و توالی فرار
The char Type and Escape Sequences
بیانیه اگر...دیگر...اگر
The if...else...if Statement
عبارات در مقابل عبارات
Expressions Vs Statements
C++101 - بیانیه های سوئیچ و عملگر مشروط
C++101 - Switch Statements and the Conditional Operator
بیانیه سوئیچ
The switch Statement
اپراتور مشروط
The Conditional Operator
نکات و ترفندهای ویژوال استودیو
Visual Studio Tips & Tricks
ویرایش Multi-Caret
Multi-Caret Editing
C++101 - بیانیه های تکرار
C++101 - Iteration Statements
حلقه while
The while Loop
حلقه do...while
The do...while Loop
حلقه های ضد، نگهبان و موقعیت رانده
Counter, Sentinel and Situation Driven Loops
متغیرهای بلوک، اعتبارسنجی ورودی و حلقههای محرکه بولی
Block Variables, Input Validation and Boolean Driven Loops
حلقه for
The for Loop
بیانیه های استراحت و ادامه
The break and continue Statements
حلقه های تو در تو
Nested Loops
C++101 - توابع
C++101 - Functions
مقدمه ای بر توابع
An Introduction to Functions
توابع برگردان ارزش
Value-Returning Functions
اصطلاحات و عملکرد پارامترها
Parameter Terminology and Function Comments
آرگومان های پیش فرض
Default Arguments
سرصفحه های کتابخانه استاندارد C++
The C++ Standard Library Headers
متغیرهای جهانی
Global Variables
توابع جمع بندی درس
Functions Lesson Wrap-Up
C++101 - آرایه ها و محدوده مبتنی بر حلقه ها
C++101 - Arrays and Range Based for Loops
مقدمه ای بر آرایه ها
An Introduction to Arrays
نمونه آرایه های تک بعدی
One-Dimensional Array Examples
حلقه مبتنی بر محدوده
The Range-Based for Loop
Inference را با auto و decltype تایپ کنید
Type Inference with auto and decltype
آرایه های چند بعدی
Multidimensional Arrays
C++101 - مبانی اشکال زدایی
C++101 - Debugging Fundamentals
مبانی اشکال زدایی
Debugging Foundations
هشدارها و سرکوب هشدارها
Warnings and Warning Suppression
اشکال زدایی در ویژوال استودیو
Debugging in Visual Studio
Refactoring
Refactoring
درایورها و خرد
Drivers and Stubs
نسخه ی نمایشی خرد
Stub Demo
اصول برنامه نویسی
Programming Principles
اشکال زدایی اردک لاستیکی
Rubber Duck Debugging
C++101 ماژول جمع بندی و سخنرانی های پاداش
C++101 Module Wrap-Up and Bonus Lectures
مکان پیش فرض پروژه را در ویژوال استودیو پیکربندی کنید
Configure the Default Project Location in Visual Studio
صفحه کلید برای برنامه نویسی - چیدمان و ارگونومی
Keyboards for Programming - Layouts and Ergonomics
نکات یادداشت برداری و یادگیری
Note Taking and Learning Tips
سفارشی کردن نوار ابزار در ویژوال استودیو
Customizing the Toolbars in Visual Studio
C++102 - ساختارها
C++102 - Structs
معرفی ماژول C++102
C++102 Module Introduction
مقدمه ای بر برنامه نویسی شی گرا
An Introduction to Object Oriented Programming
مقدمه ای بر ساختارها و دسترسی اعضا با استفاده از عملگر نقطه
An Introduction to Structs and Member Access using the Dot Operator
مقدمه ای بر توابع اعضا
An Introduction to Member Functions
نمونه های راه اندازی و ترکیب سازه
Struct Initialization and Composition Examples
ساختارهای حاوی اعضای آرایه و مقداردهی اولیه اعضا
Structs Containing Array Members and Member Initialization
مقدمه ای بر گترها و ستترها
An Introduction to Getters and Setters
آرایه های سازه ها
Arrays of Structs
اعلانات و تعاریف ساختار
Struct Declarations and Definitions
ساختار اشیاء به عنوان استدلال توابع
Struct Objects as Arguments to Functions
جمع بندی درس ساختار
Struct Lesson Wrap-Up
C++102 - اشاره گرها و مراجع
C++102 - Pointers and References
آدرس اپراتور
The Address-of Operator
مقدمه ای بر اشاره گرها
An Introduction to Pointers
پلتفرم های هدف
Target Platforms
اندازه اشاره گر
Pointer Size
نشانگرهای خالی
Void Pointers
نشانگرهای واجد شرایط
Qualifying Pointers
رابطه بین اشاره گرها و آرایه ها
The Relationship Between Pointers and Arrays
مقدمه ای بر مراجع
An Introduction to References
تخصیص و مقایسه اشاره گر
Pointer Assignment and Comparison
مقدمه ای بر محاسبات اشاره گر
An Introduction to Pointer Arithmetic
حساب اشاره گر - افزایش و کاهش
Pointer Arithmetic - Increment and Decrement
از مرجع عبور کنید
Pass by Reference
عملکرد بیش از حد
Function Overloading
تابع بارگذاری بیش از حد نوار کناری
Function Overloading Sidebar
L-values، R-values و Local Static Variables
L-values, R-values and Local Static Variables
تخصیص حافظه پویا
Dynamic Memory Allocation
آرایه های پویا
Dynamic Arrays
اپراتور دسترسی اعضای پیکان
The Arrow Member Access Operator
انتقال اشاره گر به توابع
Passing Pointers to Functions
انتقال آرایه به توابع
Passing Arrays to Functions
برگرداندن یک اشاره گر از یک تابع
Returning a Pointer from a Function
تعاریف را تایپ کنید
Type Definitions
اعلان های مستعار را تایپ کنید
Type Alias Declarations
مولد اعداد تصادفی
The Random Number Generator
توابع بازگشتی
Recursive Functions
اشاره و مراجع - خلاصه درس
Pointers and References - Lesson Summary
تمرین: بازی شماره مخفی را حدس بزنید
Exercise: Guess the Secret Number Game
C++102 - کلاس ها
C++102 - Classes
مقدمه ای بر کلاس ها
An Introduction to Classes
اعلان و تعریف عملکرد اعضا از هم جدا می شوند
Separating Member Function Declaration and Definition
مقدمه ای بر سازندگان
An Introduction to Constructors
نوار کناری بعدی چیست
What's Next Sidebar
ویرانگرها
Destructors
کلمه کلیدی ثابت
The static Keyword
این اشاره گر
The this Pointer
لیست های اولیه سازی سازنده
Constructor Initialization Lists
تفویض اختیار سازنده
Delegating Constructors
آرگومان های سازنده پیش فرض
Default Constructor Arguments
واجد شرایط بودن توابع عضو به عنوان const
Qualifying Member Functions as const
توابع درون خطی
inline Functions
ماکروها
Macros
شمارش ها
Enumerations
خلاصه لوازم جانبی
Accessors Summary
اپراتور کاما
The comma Operator
اپراتور کاما - تمرین
The comma Operator - Exercise
C++102 - بارگذاری بیش از حد اپراتور
C++102 - Operator Overloading
مقدمه درس Overloading اپراتور
Operator Overloading Lesson Introduction
مقدمه ای بر بارگذاری بیش از حد اپراتور
Introduction to Operator Overloading
افزایش و کاهش بارگذاری اپراتور
Increment and Decrement Operator Overloading
بارگذاری بیش از حد اپراتور حسابی باینری
Binary Arithmetic Operator Overloading
باینری رابطه و مقایسه اپراتور اضافه بار
Binary Relational & Comparison Operator Overloading
Copy Constructors و Shallow Vs Deep Copying
Copy Constructors and Shallow Vs Deep Copying
بارگذاری بیش از حد اپراتور تکلیف کپی
Copy Assignment Operator Overloading
سازندگان را حرکت دهید
Move Constructors
بارگذاری بیش از حد اپراتور واگذاری
Move Assignment Operator Overloading
دوستان
Friends
بارگذاری بیش از حد اپراتورها به عنوان توابع جهانی
Overloading Operators as Global Functions
بارگذاری بیش از حد اپراتورهای درج و استخراج جریان
Overloading the Stream Insertion and Extraction Operators
تبدیل
Conversion
بارگذاری بیش از حد اپراتور مشترک
Overloading the Subscript Operator
بارگذاری بیش از حد اپراتور فراخوانی تابع
Overloading the Function-call Operator
جمع بندی درس بارگذاری بیش از حد اپراتور
Operator Overloading Lesson Wrap-Up
C++102 - اشاره گر به اشاره گر و آرایه های دو بعدی پویا
C++102 - Pointers to Pointers and Dynamic Two-Dimensional Arrays
اشاره گر به اشاره گر
Pointers to Pointers
آرایه های اشاره گر
Arrays of Pointers
آرایه های دو بعدی پویا
Dynamic Two-Dimensional Arrays
تمرین آرایه های دو بعدی پویا
Dynamic Two-Dimensional Arrays Exercise
ارجاع به اشاره گر
References to Pointers
C++102 - وراثت
C++102 - Inheritance
مقدمه ای بر وراثت
An Introduction to Inheritance
مشتق عمومی و خصوصی
Public and Private Derivation
مقدار دهی اولیه با وراثت
Initialization with Inheritance
تعریف مجدد توابع اعضای کلاس پایه
Redefining Base Class Member Functions
دوستی با ارث
Friendship with Inheritance
فایل های رابط و پیاده سازی
Interface and Implementation Files
انواع ارث
Types of Inheritance
فضاهای نام
Namespaces
نوار پیمایش و حالت نقشه نوار پیمایش
The Navigation Bar and the Scroll Bar Map Mode
تقسیم و گروه بندی اسناد در ویژوال استودیو
Splitting and Grouping Documents in Visual Studio
C++102 - چند شکلی
C++102 - Polymorphism
مقدمه درس چندشکلی
Polymorphism Lesson Introduction
چند شکلی و کلمه کلیدی مجازی
Polymorphism and the virtual keyword
برش اشیاء با Upcasting و Downcasting
Object Slicing with Upcasting and Downcasting
توابع عضو مجازی
Virtual Member Functions
ویرانگرهای مجازی
Virtual Destructors
کلمه کلیدی لغو
The override Keyword
کلمه کلیدی نهایی
The final Keyword
کلاسهای انتزاعی و بتن
Abstract and Concrete Classes
کلاس های رابط
Interface Classes
توابع پیشفرض صریح
Explicitly Defaulted Functions
توابع صراحتاً حذف شده
Explicitly Deleted Functions
C++102 - الگوها
C++102 - Templates
مقدمه درس الگوها
Templates Lesson Introduction
مقدمه ای بر قالب های تابع
An Introduction to Function Templates
قالب های تابع با آرگومان های کلاس یا ساختار
Function Templates with Class or Struct Type Arguments
الگوهای کلاس
Class Templates
پارامتر نوع الگو آرگومان های پیش فرض و پارامترهای غیر نوع
Template Type Parameter Default Arguments and Non-Type Parameters
استفاده مجدد از پارامتر الگو
Template Parameter Reuse
متغیرهای استاتیک با الگوهای تابع و کلاس
Static Variables with Function and Class Templates
Class و Struct Templates را در Header Files تعریف کنید
Define Class and Struct Templates in Header Files
الگوهای کلاس یا ساختار به عنوان پارامترهای رسمی تابع
Class or Struct Templates as Function Formal Parameters
بارگذاری بیش از حد تابع با الگوهای تابع
Function Overloading with Function Templates
تخصص قالب
Template Specialization
الگوهای عملکرد اعضا
Member Function Templates
دوستان یک کلاس یا قالب Struct
Friends of a Class or Struct Template
تعاریف را با الگوهای کلاس تایپ کنید
Type Definitions with Class Templates
محدودیت های عددی
Numeric Limits
الگوها جمع بندی درس
Templates Lesson Wrap-Up
C++102 - Cast Operators
C++102 - Cast Operators
مقدمه درس اپراتورهای بازیگر
Cast Operators Lesson Introduction
اپراتور static_cast<>()
The static_cast<>() Operator
اپراتور dynamic_cast<>().
The dynamic_cast<>() Operator
اپراتور typeid
The typeid Operator
اپراتور const_cast<>()
The const_cast<>() Operator
ملاحظات ایمنی و کارایی در تعاریف کلاس
Safety and Efficiency Considerations in Class Definitions
C++102 - قابلیت تماس
C++102 - Callables
معرفی درس Calables
Callables Lesson Introduction
نشانگرهای تابع
Function Pointers
نشانگرهای تابع به عنوان پارامترهای رسمی
Function Pointers as Formal Parameters
آرایه های نشانگرهای تابع
Arrays of Function Pointers
نام مستعار نوع اشاره گر تابع
Function Pointer Type Aliases
کارکردها
Functors
اشیاء تابع از پیش تعریف شده
Predefined Function Objects
عبارات لامبدا
Lambda Expressions
بند ضبط بیان لامبدا
The Lambda Expression Capture Clause
گرفتن این اشاره گر
Capturing the this Pointer
لامبداهای بی تابعیت و دولتی
Stateless and Stateful Lambdas
تماس های تلفنی
Callbacks
C++102 - اشاره گرهای هوشمند
C++102 - Smart Pointers
مقدمه ای بر اشاره گرهای هوشمند
An Introduction to Smart Pointers
اشاره گرهای منحصر به فرد
Unique Pointers
جلوگیری از نشت حافظه با اشاره گرهای هوشمند
Avoiding Memory Leaks with Smart Pointers
عملکرد make_unique
The make_unique Function
اشاره گرهای منحصر به فرد به عنوان پارامترهای رسمی
Unique Pointers as Formal Parameters
بازگرداندن اشاره گرهای منحصر به فرد از توابع
Returning Unique Pointers from Functions
اشاره گرهای منحصر به فردی که آرایه های پویا را مدیریت می کنند
Unique Pointers that Manage Dynamic Arrays
اشاره گرهای منحصر به فرد به عنوان اعضای کلاس
Unique Pointers as Class Members
اشاره گرهای منحصر به فرد و چند شکلی
Unique Pointers and Polymorphism
مقدمه ای بر اشاره گرهای مشترک
An Introduction to Shared Pointers
اشاره گرهای مشترک به عنوان پارامترهای رسمی
Shared Pointers as Formal Parameters
تبدیل اشاره گر منحصر به فرد و اشاره گر مشترک
Unique Pointer and Shared Pointer Conversion
اشاره گرهای مشترکی که آرایه های پویا را مدیریت می کنند
Shared Pointers that Manage Dynamic Arrays
مقدمه ای بر نقاط ضعف
An Introduction to Weak Pointers
تکنیک های پیاده سازی اشاره گر مشترک
Shared Pointer Implementation Technicalities
تمرین موجودیت بی فایده
Useless Entity Exercise
حذف کننده های سفارشی برای اشاره گرهای هوشمند
Custom Deleters for Smart Pointers
C++102 - کاراکترها و رشته ها
C++102 - Characters and Strings
معرفی درس شخصیت ها و رشته ها
Characters and Strings Lesson Introduction
نوع کاراکتر و کدهای اسکی
The char Type and ASCII Codes
عملیات بر روی شخصیت ها
Operations on Characters
مقدمه ای بر رشته های C
An Introduction to C-Strings
تعیین اندازه یک آرایه و ارجاع به آرایه ها
Determining the Size of an Array and References to Arrays
توابعی که بر روی رشته های C عمل می کنند - قسمت 1
Functions that Operate on C-Strings - Part 1
توابعی که بر روی رشته های C کار می کنند - قسمت 2
Functions that Operate on C-Strings - Part 2
مقدمه ای بر کلاس رشته استاندارد - std::string
An Introduction to the Standard String Class - std::string
الحاق با رشته استاندارد
Concatenation with the Standard String
تعویض رشته های استاندارد
Swapping Standard Strings
دسترسی به کاراکترها در رشته استاندارد
Accessing Characters in the Standard String
ظرفیت رشته استاندارد
Standard String Capacity
توابعی که اندازه استاندارد استاندارد را تغییر می دهند
Functions that Alter Standard String Size
مقایسه رشته استاندارد
Standard String Comparisons
تبدیل های عددی رشته استاندارد
Standard String Numerical Conversions
کار بر روی رشته های فرعی استاندارد
Operating on Standard String Substrings
جستجوی رشته های استاندارد
Searching Standard Strings
لفظ رشته ای خام
Raw String Literals
ورودی با رشته ها - معرفی تابع getline().
Input with Strings - Introducing the getline() Function
ورودی کنسول دریافت و توابع عضو دریافت لاین
Console Input get and getline Member Functions
یک اشاره گر به آرایه کاراکتر که توسط یک رشته استاندارد مدیریت می شود، دریافت کنید
Get a Pointer to the Character Array Managed by a Standard String
C++102 - استریم ها
C++102 - Streams
مقدمه ای بر جریان ها
An Introduction to Streams
اشیاء جریان جهانی
The Global Stream Objects
دستکاری کاراکتر عرض، توجیه و پر کردن فیلد
Manipulating the Field Width, Justification, and Fill Character
علامت مثبت و نشان دادن نقطه اعشاری
Show the Positive Sign and Show the Decimal Point
تنظیم دقت برای مقادیر ممیز شناور
Setting the Precision for Floating-Point Values
تنظیم و حذف پرچم ها
Setting and Unsetting Flags
دستکاری های جریان با اعداد صحیح
Stream Manipulators with Integers
توجیه داخلی عرض میدان
Internal Justification of the Field Width
دستکاری کننده std::flush
The std::flush Manipulator
تابع printf().
The printf() Function
جریان ها - بخش 1 جمع بندی
Streams - Section 1 Wrap-Up
معرفی بخش File Streams
File Streams Section Introduction
باز کردن یک فایل متنی
Opening a Text File
خواندن از روی یک فایل
Reading from a File
خواندن مداوم از یک فایل
Continuously Reading from a File
نوشتن در یک فایل
Writing to a File
تمرین مجموع عدد صحیح ورودی و خروجی فایل
File Input and Output Integer Sum Exercise
باز کردن فایل های مشخص شده توسط کاربر
Opening User Specified Files
توابع عضو get()، put()، unget() و putback().
The get(), put(), unget(), and putback() Member Functions
حالت های باز کردن فایل
File Opening Modes
کلاس fstream
The fstream Class
جریان به عنوان استدلال توابع
Streams as Arguments to Functions
جریان ها و بارگذاری بیش از حد اپراتور
Streams and Operator Overloading
جریان های رشته ای
String Streams
جمع بندی ماژول CPP102
CPP102 Module Wrap-Up
استانداردهای کدگذاری
Coding Standards
تمرین استانداردهای کدگذاری
Coding Standards Exercise
جمع بندی ماژول Cpp102
Cpp102 Module Wrap-Up
پایه های Unreal Engine 5
Unreal Engine 5 Foundations
مدیریت نسخه موتور و نصب
Engine Version Management & Installation
ایجاد یک پروژه جدید در Unreal Engine 5
Creating a New Project in Unreal Engine 5
اصطلاحات موتور غیر واقعی
Unreal Engine Terminology
بررسی اجمالی رابط Unreal Engine 5 و سفارشی سازی اولیه چیدمان
Unreal Engine 5 Interface Overview and basic Layout Customization
UE5C++101: Unreal Engine 5 C++ Foundations
UE5C++101: Unreal Engine 5 C++ Foundations
ماژول های پیش نیاز UE5CPP101
UE5CPP101 Prerequisite Modules
مشخصات سخت افزاری و نرم افزاری برای توسعه در Unreal Engine
Hardware and Software Specifications for Developing in Unreal Engine
رفع خطاهای مولفه پیش نیاز
Resolving Prerequisite Component Errors
حلقه بازی
The Game Loop
ایجاد اولین پروژه Unreal Engine 5 C++ شما
Creating Your First Unreal Engine 5 C++ Project
پیکربندی ویژوال استودیو برای توسعه UE5
Visual Studio Configuration for UE5 Development
به روز رسانی پروژه ها به نسخه های جدیدتر موتور
Updating Projects to Newer Versions of the Engine
سلسله مراتب طبقه بازیگر
The Actor Class Hierarchy
مبانی ایجاد کلاس UE5 C++
UE5 C++ Class Creation Basics
استفاده از ماکروها در Unreal Engine
The Usage of Macros in Unreal Engine
استانداردهای کدگذاری موتور غیر واقعی
Unreal Engine Coding Standards
مشخص کننده های UPROPERTY برای دسترسی ویرایشگر
UPROPERTY Specifiers for Editor Accessibility
برنامه نویسی زنده
Live Coding
مشخص کننده های UPROPERTY برای دسترسی به طرح اولیه
UPROPERTY Specifiers for Blueprint Accessibility
مشخص کننده های UFUNCTION برای دسترسی به طرح اولیه
UFUNCTION Specifiers for Blueprint Accessibility
مشخص کننده های UFUNCTION برای مکان پیاده سازی
UFUNCTION Specifiers for Implementation Location
قالب بندی نوار کناری - حذف تورفتگی های ناخواسته
Formatting Sidebar - Removing Unwanted Indentations
مقدمه ای بر FString و ماکرو TEXT
An Introduction to FString and the TEXT Macro
ورود به سیستم با ماکرو UE_LOG
Logging with the UE_LOG Macro
بررسی اجمالی اجزای بازیگر
Actor Components Overview
کلاس های اجزای اصلی
The Major Component Classes
تعریف کامپوننت سفارشی
Defining a Custom Component
تخصیص کامپوننت و پیوست کامپوننت ریشه
Component Allocation and RootComponent Attachment
UStaticMeshComponent و تابع SetupAttachment
The UStaticMeshComponent and the SetupAttachment Function
بیشتر در راه است
More to come
UE5Cpp101 - پروژه Apple Picker
UE5Cpp101 - The Apple Picker Project
ایجاد پروژه Apple Picker
Apple Picker Project Creation
ایجاد مش درخت و مواد
Creating the Tree Mesh and Materials
تعریف کلاس پایه برای درخت سیب
Defining the Base-Class for the Apple Tree
تعریف حرکت اساسی برای درخت سیب
Defining Basic Movement for the Apple Tree
تعیین مرزهای حرکت برای درخت سیب
Defining Movement Boundaries for the Apple Tree
منطق حرکت نامنظم برای درخت سیب
Erratic Movement Logic for the Apple Tree
تعریف کلاس اپل
The Apple Class Definition
تخم ریزی سیب
Spawning Apples
تعریف پیاده سبد
The Basket Pawn Definition
استفاده مجدد از دارایی های موجود و BakeR ها و ابزارهای مدل سازی Pivot
Reusing Existing Assets and the BakeRs and Pivot Modeling Tools
مروری بر چارچوب بازی
The Gameplay Framework Overview
راه اندازی دوربین
Camera Setup
تنظیم View Target روی Player Controller
Setting the View Target on the Player Controller
تعریف اتصالات ورودی و حرکت پایه برای پیاده سبد
Defining Input Bindings and Basic Movement for the Basket Pawn
نابود کردن سیب "در حال ضربه"
Destroying Apples 'On Hit'
بهبود حرکت درخت سیب
Improving Apple Tree Movement
از بین بردن سیب هایی که خیلی دور می افتند
Destroying Apples that Fall too Far
پروژه Apple Picker - بخش 1 جمع بندی
Apple Picker Project - Section 1 Wrap-Up
پروژه Apple Picker - بخش 2 بررسی اجمالی
Apple Picker Project - Section 2 Overview
وصل کردن 3 پارو به سبد ما
Attaching 3 Paddles to our Basket
مدیریت تخریب اجزای دست و پا
Handling Paddle Component Destruction
مدیریت اپل از دست رفته در کلاس حالت بازی
Handling Apple Lost in a Game Mode Class
دست زدن به سیب گرفتار
Handling Apple Caught
تخمگذاری سیب را متوقف کنید و سیب های باقی مانده را نابود کنید
Stop Spawning Apples and Destroy Remaining Apples
پروژه Apple Picker - بخش 2 جمع بندی
Apple Picker Project - Section 2 Wrap-Up
پروژه Apple Picker - بخش 3 بررسی اجمالی
Apple Picker Project - Section 3 Overview
بازی به پایان رسید
Handling Game Over
مدیریت شروع بازی
Handling Game Start
اجرای ویجت تایمر شمارش معکوس
Countdown Timer Widget Implementation
منطق تایمر شمارش معکوس
Countdown Timer Logic
پیاده سازی ویجت C++ - Apples Collected و Game Over Text
C++ Widget Implementation - Apples Collected and Game Over Text
اپل ذرات نیاگارا را نابود کرد
Apple Destroyed Niagara Particles
Paddle Lost Niagara Particles
Paddle Lost Niagara Particles
محتوای Unreal Engine 4 آرشیو شده
ARCHIVED Unreal Engine 4 Content
لانچر Epic Games قسمت 2
The Epic Games Launcher Part 2
بررسی اجمالی رابط Unreal Engine 4
Unreal Engine 4 Interface Overview
نکات و ترفندهای غیرواقعی موتور برای مبتدیان
Unreal Engine Tips & Tricks for Beginners
مقدمه ای بر برنامه نویسی تصویری Blueprint
An Introduction to Blueprint Visual Scripting
کلاس ها و اجزای طرح اولیه
Blueprint Classes and Components
متغیرهای طرح اولیه و اتصالات گره
Blueprint Variables and Node Connections
مقدمه UE4 C++ Foundations
UE4 C++ Foundations Introduction
UObject قسمت 1: سیستم کلاس UE4 و ایجاد کلاس
UObject Part 1: The UE4 Class System and Class Creation
نوار کناری UObject قسمت 1
UObject Part 1 Sidebar
UObject قسمت 2: خواص و تنظیمات ساخت
UObject Part 2: Properties and Build Configurations
UObject قسمت 3: Object Instantiation و UCLASS Specifiers
UObject Part 3: Object Instantiation and UCLASS Specifiers
ایجاد یک AActor و USceneComponent
Creating an AActor and the USceneComponent
مشخصات UProperty
UProperty Specifiers
UStaticMeshComponent و ضمیمه کامپوننت
UStaticMeshComponent and Component Attachment
FVector و نحوه دریافت و تنظیم Actor Location.
FVector and how to get and set Actor Location.
FRotator و Actor Local & World Offset.
FRotator and Actor Local & World Offset.
پیوست و افست کامپوننت.
Component Attachment and Offset.
نوار کناری قوانین تبدیل پیوست
Attachment Transform Rules Sidebar
نیروها
Forces
وسیع
Sweeping
پیام های FString، UE_LOG و اشکال زدایی روی صفحه.
FString, UE_LOG, and On-Screen Debug Messages.
نابود کردن یک بازیگر
Destroying an Actor.
بازیگران فیلمنامه سطح و تخم ریزی
Level Script Actors and Spawning
حالت بازی در C++
Game Mode in C++
نوار کناری FTransform
FTransform Sidebar
تایمرها
Timers
به روز رسانی و ادامه مطالعات توسعه بازی شما
Updates and Continuing your Game Development Studies
به روز رسانی دوره
Course Updates
نمایش نظرات