طراحی و پیادهسازی یک سیستم شبیهساز تعاملی بر پایه معماری شیءگرا (OOP). در این پروژه، یک موتور فیزیک اختصاصی و سبک برای مدیریت برخوردها و حرکت سینماتیک در فضای 2D توسعه داده شد. سیستم دارای مدیریت وضعیتهای گوناگون (ماشین حالت/State Machine) بوده و از قابلیتهای پیشرفتهای نظیر نقشهبرداری پویای کلیدها (Dynamic Key-binding) توسط کاربر و سیستم مدیریت زمان بلادرنگ (Real-time) بهره میبرد.
دستاوردها و مسئولیتهای کلیدی:
1- معماری نرمافزار و الگوهای طراحی: طراحی ساختار کاملاً ماژولار با استفاده از پارادایم شیءگرایی. پیادهسازی الگوی «ماشین حالت محدود» (Finite State Machine) برای مدیریت یکپارچه جریان برنامه (جابجایی روان بین منوی اصلی، تنظیمات، جریان اجرا و پایان کار).
2- توسعه موتور فیزیک اختصاصی: طراحی سیستم تشخیص برخورد (Collision Detection) پیوسته. محاسبه بازتاب بردارها با استفاده از جبر خطی و ضرب داخلی بردارها برای شبیهسازی رفتار الاستیک توپ هنگام برخورد با سطوح متحرک با دقت هندسی بسیار بالا.
3- مدیریت تعاملات و تجربه کاربری (UX): توسعه یک سیستم رابط کاربری (UI) تعاملی از پایه، شامل دکمههای هوشمند با قابلیت تشخیص هاور (Hover) و سیستم پیکربندی کنترلها که به کاربر اجازه میدهد در لحظه (Run-time) کلیدهای ورودی را شخصیسازی کند.
4- بهینهسازی حلقه اجرا (Game Loop): پیادهسازی یک سیستم مدیریت زمان مبتنی بر تیکهای پردازنده برای حفظ استقلال نرخ فریم (Frame Rate Independence) روی 80 فریم بر ثانیه و مدیریت رویدادهای مبتنی بر زمان (مانند تایمر شمارش معکوس نیمهها).
5- سیستم پیشرفت پویا (Dynamic Progression): طراحی الگوریتمهای درجهبندی سختی (Difficulty Scaling) که با ارتقای سطح، متغیرهای فیزیکی (مانند سرعت برداری) را با ضریب مشخصی (مانند 1.2) افزایش میدهد تا چالش کاربر حفظ شود.