دوره فشرده بازی چندنفره با سی پلاس پلاس در آنریل انجین 5
✅ سرفصل و جزئیات آموزش
آنچه یاد خواهید گرفت:
- یاد بگیرید بازی چندنفره در آنریل انجین 5 چگونه کار میکند.
- یاد بگیرید کلاسهای اصلی مختلف در این موتور مانند حالت بازی، State بازی، State بازیکن، کنترلر بازیکن، کاراکتر و غیره
- چگونه کار میکنند.
- چگونگی رپلیکیت متغیرها، ارسال توابع از راه دور، رپلیکیت حرکت و سفر به سطوح مختلف در بازی چندنفره را یاد بگیرید.
- پیوست، رپلیکیت کامپوننت، شرایط رپلیکیشن و رپلیکیشن سفارشی را یاد بگیرید.
- تلههای بازی چندنفره و چگونگی اجتناب از آنها را یاد بگیرید.
پیشنیازهای دوره
درک اولیه از آنریل انجین و سی پلاس پلاس الزامی است.
توضیحات دوره
زمان آن رسیده است که برنامهنویسی گیم پلی چندنفره در آنریل انجین را بیاموزید!
در این دوره فشرده، اصول بازی چندنفره در آنریل انجین را به سرعت یاد میگیرید. مهارتهای لازم برای برنامهنویسی گیم پلی چندنفره در هر ژانر بازی را کسب خواهید کرد!
برای برنامهنویسی بازیهای چندنفره، نیازی به تبدیل شدن به یک کارشناس ندارید. تنها باید مفاهیم اولیه پشت عملکرد بازیهای چندنفره را بیاموزید. این دوره خلاصهای فشرده از اصول اساسی است که باید برای برنامهنویسی بازیهای چندنفره درک کنید.
پس از پایان این دوره، اصول تئوری چندنفره، چگونگی پیادهسازیهای چندنفره در آنریل انجین و چگونگی ارتقاء بازیهای تکنفره به چندنفره و چگونگی ساختاردهی بازیهایتان برای چندنفره بودن را خواهید فهمید.
این دوره تئوری بازی چندنفره را عمیقاً بررسی میکند و چالشی برای سنجش درک شما درباره هر موضوع ارائه میدهد تا تجربه عملی پیادهسازی هر تکنیک را داشته باشید. پس از تلاش در حل هر چالش به صورت مستقل، مدرس راه حلهای آن را نشان داده و مراحل حل مسئله را به شما آموزش میدهد. هر قسمت در یک جمعبندی مختصر خلاصه شده است و در انتهای هر بخش آزمونی قرار دارد تا درک شما را محک بزند تا بتوانید با اعتماد به نفس به سمت موضوع بعدی بروید.
ساختار این دوره به صورت زیر ساختاردهی شده است:
اصول بازی چندنفره
در این بخش، اصطلاحات و مفاهیم اصلی بازی چندنفره را معرفی میکنیم که عبارتند از:
- مدل کلاینت-سرور - تفاوت آن با ارتباط Peer-to-Peer چیست و آنریل انجین چگونه از این مدل استفاده میکند؟
- تست بازی چندنفره - چگونه بازیهای standalone، سرور listen و سرور اختصاصی را در Play-In-Editor (PIE) این موتور به آسانی شبیهسازی کنیم؟
- اتصال LAN - یک بازی LAN ایجاد کنید و به کامپیوترهای دیگر در شبکه محلی خود متصل کنید.
- سرورهای Listen از طریق Steam - مدرس یک پلاگین ارائه میدهد که امکان اتصال سریع به بازیکنان دیگر از طریق سیستم فرعی آنلاین Steam را فراهم میکند.
رپلیکیشن اکتور
اکتورها قلب سطوح آنریل انجین هستند که قابلیت رپلیکیت را دارند.
- رپلیکیشن اکتور - شما خواهید دید فعالسازی رپلیکیشن برای اکتورها چقدر آسان است، چگونه این موضوع امکان رپلیکیشن متغیرها را فراهم میکند و چگونه حرکت را برای همگامسازی نسخههای سرور و کلاینت هر اکتور رپلیکیت کنید.
- اختیار و نقش شبکه - پس از درک این مفاهیم ساده اما حیاتی، درک خواهید کرد چگونه تعیین کنید یک اکتور معین روی کدام ماشین است که به شما قدرت تصمیمگیریهای مهم گیمپلی برای منطق را میدهد.
- پیوست - تمام بازیها شامل برخی پیوستها هستند. شما باید یاد بگیرید پیوست در بازی چندنفره برای اکتورها چگونه کار میکند. (یا نمیکند، اگر ندانید چه کار میکنید)
- رپلیکیشن متغیر - محور برنامهنویسی چندنفره - متغیرهای رپلیکیت شده نقش حیاتی در تمام بازیهای چندنفره ایفا میکنند و شما خواهید دید ساخت آنها چقدر آسان است. (و اینکه چقدر مسئولیتپذیر باید باشید)
- Rep Notifies - گاهی اوقات میخواهید پاسخ به رپلیکیشن یک متغیر را تریگر کنید. Rep Notifies برای تریگر شدن در پاسخ به رپلیکیشن یک متغیر طراحی شدهاند و میتوانند به مقدار قبل از رپلیکیشن نیز دسترسی داشته باشند.
- شرایط رپلیکیشن - متغیرها هنگام تغییر رپلیکیت میشوند. شما قدرت تصمیمگیری برای اتفاق افتادن یا نیفتادن این رپلیکیشن، اینکه چه زمانی اتفاق افتد، در چه ماشینهایی اتفاق افتد و تحت چه شرایطی اتفاق افتد را خواهید داشت. چگونگی این موضوعات را در درس یاد خواهید گرفت.
- شرایط رپلیکیشن سفارشی - بازیهای شما ممکن است پیچیده شوند. ممکن است به رپلیکیت فقط یک متغیر، بر اساس شرایط سفارشی که خودتان ترتیب میدهید، نیاز داشته باشید. شما چگونگی آن را یاد خواهید گرفت.
- مالکیت - برنامهنویسی بازی چندنفره بدون درک مالکیت در آنریل انجین ممکن نیست. این موضوع شامل مالکیت اتصال، اینکه کدام ماشین مسئول شیء مورد نظر است، میباشد. این درس از این موضوع ابهامزدایی میکند.
- کامپوننتهای اکتور - کامپوننتها را نیز میتوانید رپلیکیت کنید، اما باید درک کنید چگونه این اتفاق میافتد و چگونه اتصال شبکه مالکیت آنها به اکتور مالکیت آنها متصل است.
توابع راه دور
یکی از قدرتمندترین ابزارها در فریمورک چندنفره آنریل، توابع راه دور هستند که کاری را انجام میدهند که متغیرهای رپلیکیت شده نمیتوانند.
- اجرا روی کلاینت - زمانی که نیاز دارید تابعی را در سرور فراخوانی کنید و در کلاینت مالک اجرا کنید، RPCهای کلاینت بهترین گزینه هستند.
- اجرا روی سرور - در حالی که رپلیکیشن فقط از سرور به کلاینت کار میکند، RPCهای سرور برای انتقال اطلاعات از کلاینت به سرور استفاده میشوند.
- Multicast - با قدرت، مسئولیتهای بزرگی هم همراه است. برای فراخوانی تابع روی سرور و اجرای آن روی تمام کلاینتها، از RPCهای Multicast باید استفاده کنید.
- اعتبارسنجی RPC - برنامهنویسان بازی چندنفره به سرعت متوجه میشوند که نمیتوانند به کلاینتها اعتماد کنند که تقلب نکنند (یا حداقل تلاش نکنند). توابع اعتبارسنجی تضمین میکنند که داده صحیح است و در غیر این صورت بازیکن را اخراج میکنند.
- مرتبط بودن و اولویت - بروزرسانیهای شبکه همیشه در حال انجام نیستند؛ بعضی مواقع، اکتورها برای دیگر اکتورها اهمیت ندارند. علاوه بر این، بعضی اکتورها باید بیشتر از بقیع رپلیکیت شوند. این درس نشان میدهد مرتبط بودن و اولویت چگونه کار میکنند.
فریمورک کلاس
درک اینکه کدام کلاس برای چه وظیفهای طراحی شده، ساختار کلی پروژه شما را بسیار سادهتر میکند. باید بدانید هر کلاس اصلی موتور برای چه مواردی استفاده میشود تا بتوانید بازیهای چندنفره خود را برنامهنویسی کنید.
- حالت بازی - از اشتباهات تازهکاران مانند تلاش برای دسترسی به حالت بازی در سمت کلاینتها اجتناب کنید. یاد بگیرید چگونه حالت بازی قوانین بازی را مشخص میکند و کدام کلاسها به طور پیشفرض spawn میشوند.
- State بازی - اطلاعات مربوط به بازی که باید در کلاینتها رپلیکیت شود در این کلاس نگهداری میشود.
- State بازیکن - امتیازات بازیکنان و تیمهایشان را در کجا ذخیره کنیم؟ داده خاص هر بازیکن در این کلاس بسیار مهم نگهداری میشود.
- کنترلر بازیکن - نماینده شما به عنوان یک بازیکن، کنترلر مالک اتصال شبکه شما است و مالکیت Pawn یا کاراکتر شما به این کلاس برمیگردد.
- Pawn و کاراکتر - هر بازیکن نیاز به یک آواتار رویتپذیر دارد. این موارد در بازی چندنفره چگونه کار میکنند؟ این درس پاسخ میدهد.
- HUD و ویجتها - این عناصر بصری در بازی چندنفره چگونه مدیریت میشوند؟ آیا میتوانیم آنها را رپلیکیت کنیم؟ (پاسخ: نمیتوانید)
- توابع دسترسی استاتیک - چرا همیشه این توابع را فراخوانی میکنیم، یک 0 برای برای شاخص بازیکن انتقال میدهیم، وقتی واقعاً نمیدانیم چه چیزی انتقال دهیم؟ با تلهها در استفاده از این توابع accessor استاتیک آشنا شوید و جایگزینهای مناسب را در صورت نیاز یاد بگیرید.
سفر در بازی چندنفره
در یک مرحله، بازی شما نیاز به تغییر سطوح دارد. همه بازیکنان متصل در یک بازی چندنفره باید به سطح دیگری منتقل شوند. این فرآیند چگونه کار میکند؟ این موضوع را در این بخش خواهید آموخت.
- سفر - انواع سفر و چگونگی پیادهسازی آنها را توضیح میدهیم.
- پیادهسازی سفر روان - چالش نهایی این دوره، پیادهسازی سفر روان است که در آن هر کلاینت به یک نقشه دیگر منتقل میشود، بدون اینکه اتصال از دست برود.
پس از پایان این دوره، شما به طور کامل با اصول فریمورک چندنفره آنریل انجین آشنا خواهید بود. توانایی برنامهنویسی بازیهای چندنفره در هر ژانری را کسب میکنید. این دوره به عنوان یک مرجع قابل اعتماد برای آینده عمل میکند و شما میتوانید درسها را رد کنید و به هر موضوع خاص برای یادآوری مراجعه کنید.
توصیه میکنیم همه دانشجویان قبل از دورههای پیشرفتهتر، این دوره را بگذرانند!
این دوره برای چه کسانی مناسب است؟
- کسانی که میخواهند برنامهنویسی چندنفره در آنریل انجین را یاد بگیرند.
- کسانی که قصد دارند پروژههای تکنفره خود را به بازی چندنفره ارتقاء دهند.
- کسانی که میخواهند مفاهیم پیشرفته چندنفره در آنریل انجین مانند GAS را یاد بگیرند.
دوره فشرده بازی چندنفره با سی پلاس پلاس در آنریل انجین 5
-
مقدمه 02:28
-
مدل کلاینت-سرور 09:44
-
تست بازی چندنفره 08:00
-
اتصال LAN 27:05
-
سرورهای Listen از طریق Steam 11:23
-
بخش 2 - اصول بازی چندنفره None
-
رپلیکیشن اکتور 12:05
-
اختیار و نقش شبکه 20:15
-
پیوست 18:53
-
رپلیکیشن متغیر 18:57
-
Rep Notifies 11:45
-
شرایط رپلیکیشن 08:49
-
شرایط رپلیکیشن سفارشی 09:22
-
مالکیت 06:38
-
کامپوننتهای اکتور 11:11
-
بخش 3 - رپلیکیشن اکتور None
-
اجرا در کلاینتها 12:25
-
اجرا در سرور 06:43
-
Multicast 04:08
-
اعتبارسنجی RPC 04:51
-
مرتبط بودن و اولویت 04:24
-
بخش 4 - توابع راه دور None
-
حالت بازی 13:18
-
State بازی 15:22
-
State بازیکن 12:50
-
کنترلر بازیکن 03:24
-
Pawn و کاراکتر 03:28
-
HUD و ویجتها 19:53
-
توابع Accessor استاتیک 04:08
-
بخش 5 - فریمورک کلاس None
-
سفر 11:33
-
پیادهسازی سفر روان 09:17
-
بخش 6 - سفر در بازی چندنفره None
مشخصات آموزش
دوره فشرده بازی چندنفره با سی پلاس پلاس در آنریل انجین 5
- تاریخ به روز رسانی: 1404/09/07
- سطح دوره:همه سطوح
- تعداد درس:33
- مدت زمان :05:02:40
- حجم :3.67GB
- زبان:دوبله زبان فارسی
- دوره آموزشی:AI Academy