کتاب صوتی ساخت موتور بازی دو بعدی با C++ و SFML
دوره جامع ساخت موتور بازی دو بعدی با C++ و SFML دوره جامع و پروژه محور: ساخت موتور بازی دو بعدی با C++ و SFML از صفر تا صد آیا همیشه رویای ساخت بازیهای ویدیویی خودتان را در سر داشتهاید؟ آیا میخواهی...
🎓 دوره آموزشی جامع
📚 اطلاعات دوره
عنوان دوره: دوره ساخت موتور بازی دو بعدی با C++ و SFML
موضوع کلی: برنامه نویسی
موضوع میانی: سی پلاس پلاس (++C)
📋 سرفصلهای دوره
- 1. معرفی دوره و پیشنیازها
- 2. مروری بر اصول C++: ساختار برنامه
- 3. انواع دادهها و متغیرها
- 4. عملگرها و عبارات
- 5. ساختارهای کنترلی: شرطها (if/else, switch)
- 6. ساختارهای کنترلی: حلقهها (for, while, do-while)
- 7. توابع: تعریف، فراخوانی و Overloading
- 8. آرایهها و رشتهها
- 9. اشارهگرها (Pointers) و ارجاعها (References)
- 10. مدیریت حافظه: Stack و Heap
- 11. تخصیص دینامیک حافظه (new/delete)
- 12. کلاسها و اشیاء: معرفی OOP
- 13. سازندهها (Constructors) و مخربها (Destructors)
- 14. اعضای داده و توابع عضو
- 15. کپسولهسازی و Access Specifiers
- 16. وراثت (Inheritance)
- 17. پلیمورفیسم (Polymorphism) و توابع مجازی (Virtual Functions)
- 18. کلاسهای انتزاعی و رابطها
- 19. الگوها (Templates): توابع الگو
- 20. الگوها (Templates): کلاسهای الگو
- 21. مدیریت خطا: استثناها (Exceptions)
- 22. مفاهیم پایه توسعه بازی دو بعدی
- 23. آشنایی با موتورهای بازی و فریمورکها
- 24. معرفی SFML: اهداف و ویژگیها
- 25. نصب و راهاندازی SFML در محیط توسعه
- 26. ایجاد اولین پنجره با SFML
- 27. حلقه اصلی بازی (Game Loop)
- 28. مدیریت زمان و نرخ فریم (FPS)
- 29. کلاس sf::Vector2 و محاسبات برداری
- 30. سیستم مختصات در SFML و گرافیک 2D
- 31. بارگذاری و نمایش تصاویر (sf::Texture, sf::Sprite)
- 32. رسم شکلهای هندسی ساده (sf::Shape, sf::CircleShape)
- 33. کنترل ورودی: صفحه کلید (sf::Keyboard)
- 34. کنترل ورودی: ماوس (sf::Mouse)
- 35. رویدادها (Events) در SFML و مدیریت آنها
- 36. معماری کلی یک موتور بازی 2D
- 37. طراحی کلاس برای موجودیتهای بازی (Game Entities)
- 38. سیستم مدیریت منابع (Resource Manager): تصاویر و فونتها
- 39. پیادهسازی Singleton برای مدیریت منابع
- 40. مدیریت حالتهای بازی (Game States): معرفی
- 41. پیادهسازی پشته حالتها (State Stack)
- 42. طراحی پایه برای کامپوننتها (Components)
- 43. سیستم موجودیت-کامپوننت (ECS) برای بازیهای 2D
- 44. کلاس پایه برای کامپوننتهای گرافیکی
- 45. کلاس پایه برای کامپوننتهای ورودی
- 46. کلاس پایه برای کامپوننتهای فیزیکی
- 47. معماری Scene Graph (نمودار صحنه) و مزایا
- 48. مدیریت لایهها در Scene Graph
- 49. Transform Component: موقعیت، چرخش، مقیاس
- 50. پیادهسازی یک کلاس پایه قابل رسم (Drawable)
- 51. مدیریت و بهروزرسانی موجودیتها در حلقه بازی
- 52. مفهوم Delta Time و کاربرد آن در حرکت
- 53. سیستم رندرینگ: ترتیب رسم اشیاء
- 54. طراحی Camera 2D: حرکت و زوم
- 55. پیادهسازی Parallax Scrolling (پسزمینه متحرک)
- 56. Sprite Sheet و مدیریت انیمیشن
- 57. کلاس Animation و فریمهای انیمیشن
- 58. مدیریت وضعیتهای انیمیشن (Idle, Walk, Jump)
- 59. افکتهای گرافیکی پایه: Transparency و Blending
- 60. کار با متن (sf::Text) و فونتها (sf::Font)
- 61. ساخت سیستم ذرات (Particle System) پایه
- 62. طراحی کلاسهای ذرات و امیتر
- 63. Shaders در SFML: معرفی و کاربردهای پایه
- 64. اعمال افکتهای Post-processing ساده
- 65. Tilemap Rendering: رسم کاشیها
- 66. ساخت ادیتور پایه برای Tilemap (مفاهیم)
- 67. ابزارهای کمکی برای دیباگ گرافیکی (رسم Box Collider)
- 68. مفاهیم پایه فیزیک 2D: جرم، نیرو، سرعت، شتاب
- 69. تشخیص برخورد (Collision Detection): مقدمه
- 70. Collision Shape: دایره (Circle)
- 71. Collision Shape: مستطیل تراز با محورها (AABB)
- 72. الگوریتم تشخیص برخورد AABB-AABB
- 73. الگوریتم تشخیص برخورد Circle-Circle
- 74. پاسخ به برخورد (Collision Response) ساده
- 75. پیادهسازی Physics Component
- 76. مدیریت چندین برخورد در یک فریم
- 77. استفاده از Quadtree برای بهینهسازی تشخیص برخورد (مفاهیم)
- 78. سیستم مدیریت ورودی پیشرفته: Actions و Bindings
- 79. UI Framework پایه: طراحی دکمهها (Button)
- 80. طراحی نوار سلامتی (Health Bar)
- 81. کلاس Input Field برای ورود متن
- 82. طراحی منوی اصلی بازی
- 83. پیادهسازی منوی مکث (Pause Menu)
- 84. صفحه "بازی تمام شد" (Game Over Screen)
- 85. سیستم ذخیره و بارگذاری بازی (Serialization)
- 86. پخش صدا و موسیقی (sf::Sound, sf::Music)
- 87. مدیریت Sound Emitterها و Sound Bufferها
- 88. کنترل ولوم و افکتهای صوتی
- 89. SFML View: دوربین و مختصات جهانی/محلی
- 90. پیادهسازی یک دوربین با قابلیت فالو کردن آبجکت
- 91. مدیریت چندین View برای UI و دنیای بازی
- 92. الگوهای طراحی در توسعه بازی (Game Design Patterns)
- 93. مدیریت حافظه هوشمند (Smart Pointers) در C++
- 94. استفاده از STL (Standard Template Library): Vector, Map, Algorithms
- 95. Debugging و Profile کردن بازی در SFML
- 96. نکات بهینهسازی عملکرد (Performance Optimization)
- 97. مدیریت خطا و لاگنویسی (Logging)
- 98. ساخت فایل اجرایی و Deploy کردن بازی
- 99. مروری بر معماری موتور بازی و ارتقاء آن
- 100. گامهای بعدی و منابع آموزشی تکمیلی
برای آموختن، همیشه لازم نیست بخوانید
گاهی بهترین فرصت یادگیری زمانی است که در مسیر رفتوآمد هستید، قدم میزنید، استراحت میکنید یا کارهای روزمرهتان را انجام میدهید. محتوای صوتی کمک میکند از این لحظهها برای شنیدن، اندیشیدن و آشنایی با موضوعات تازه بهره ببرید.
◷
یادگیری در دل روزمرگی
از زمان رفتوآمد، پیادهروی یا استراحت برای شنیدن محتوای مفید استفاده کنید؛ بدون آنکه همیشه به کتاب چاپی یا صفحه نمایش نیاز داشته باشید.
◎
تجربهای شنیداری و دلنشین
با روایت صوتی، توضیحات گفتاری و فضای شنیداری هر محتوا همراه شوید و متناسب با سلیقه خود، شیوه تازهای برای دریافت مطالب تجربه کنید.
✦
گسترش دانش و دیدگاه
با موضوعات متنوع آشنا شوید، ایدههای تازه کشف کنید و فرصت بیشتری برای یادگیری مستمر و پرورش کنجکاوی خود بسازید.
♫
همراه با سبک زندگی شما
محتوای صوتی را متناسب با برنامه روزانه خود انتخاب کنید و در زمان مناسب، شنیدن را به بخشی از عادتهای شخصیتان تبدیل کنید.
کتاب صوتی یا پادکست؟
کتاب صوتی
راهی برای همراه شدن با محتوای یک کتاب از طریق شنیدن. بسته به اثر، میتوانید داستانها، آموزشها، مفاهیم تخصصی یا مطالب کاربردی را در قالب روایت و بیان صوتی دنبال کنید.
مناسب برای شنیدن و مرور محتوای کتابها
پادکست آموزشی
فرصتی برای دنبال کردن موضوعات مشخص در قالب گفتوگو، روایت، توضیح آموزشی یا مجموعهای از قسمتهای صوتی؛ مناسب برای کشف ایدهها و آشنایی با دیدگاههای گوناگون.
مناسب برای یادگیری موضوعی و شنیدن دیدگاههای تازه
هر جا که هستید، شنیدن را آغاز کنید
با دستگاه مناسب خود، محتوای صوتی را به آسانی دنبال کنید.
▯
گوشی هوشمند
اندروید و آیفون
▣
تبلت
برای شنیدن و دنبال کردن محتوا
▤
رایانه و لپتاپ
با پخشکننده صوتی سازگار
♫
هدفون و بلندگو
برای شنیدن متناسب با محیط
چطور از تجربه شنیدن بیشتر بهره ببریم؟
✦ زمان مناسبی برای شنیدن انتخاب کنید؛ زمانی که بتوانید با آرامش به محتوا توجه داشته باشید.
✦ برای مطالب آموزشی، نکتههای مهم را یادداشت کنید یا پس از پایان شنیدن، آنها را مرور کنید.
✦ اگر محتوا طولانی است، آن را در چند نوبت دنبال کنید تا فرصت بیشتری برای درک و مرور داشته باشید.
✦ هنگام رانندگی یا انجام کارهای نیازمند تمرکز، ایمنی را در اولویت قرار دهید و از شیوه شنیدنی استفاده کنید که حواس شما را مختل نکند.
هر شنیدن، فرصتی برای کشف است
با کتابهای صوتی و پادکستهای آموزشی، دنیای تازهای از ایدهها، روایتها و آموختنیها را به لحظههای خود اضافه کنید.
express24.ir
امکانات پخش، ادامه شنیدن و دسترسی آفلاین به نوع فایل، دستگاه و نرمافزار مورد استفاده بستگی دارد.
تگها:
C#
C++ Game
Game Development
SFML
آموزش C++
آموزش SFML
آموزش برنامه نویسی
بازی سازی دو بعدی
برنامه نویسی
برنامه نویسی بازی
دوره بازی سازی
ساخت بازی با C++
سی پلاس پلاس
موتور بازی 2D
موتور بازی سازی
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.