Модель побудови ігор за допомогою мови програмування С++ або C#

Шпильовий, Максим Максимович (2025) Модель побудови ігор за допомогою мови програмування С++ або C# [Кваліфікаційні роботи здобувачів] Перший (бакалаврський). Дата захисту: 16.06.2025, Київський столичний університет імені Бориса Грінченка.

[thumbnail of M_Shpylovyi_FITM_2025.pdf] Текст
M_Shpylovyi_FITM_2025.pdf

Download (1MB)

Анотація

Актуальність. У багатьох інді-проєктах, що довго розроблялись на застарілих рушіях (MonoGame, XNA, Unity 5 тощо), накопичився значний технічний борг — низький FPS, велика затримка в мережі, громіздкі сейви. Це обмежує вихід на нові платформи (Steam Deck, WebAssembly) та підвищує витрати на підтримку. Перенесення гри Barotrauma на сучасний безроялтійний рушій Godot 4 C# демонструє життєздатну стратегію модернізації: завдяки вбудованим засобам ThreadPool, ENet Multiplayer і Native AOT можна зменшити навантаження на CPU, трафік і розмір білда без відмови від С#-логіки. Об’єкт дослідження: процеси оптимізації фізики, мережевої синхронізації та файлової підсистеми в С#-іграх середньої складності. Предмет дослідження: методи перенесення (портингу) C#-проєкту з MonoGame на Godot 4, зокрема: багатопотокова обробка, дельта-реплікація ENet, стислий Brotli-сейв, а також узагальнена модель вибору рушія для C#-ігор. Мета дослідження: розробити й експериментально перевірити прототип Barotrauma — Godot Port, який: зберігає ігрову логіку без переписування на іншу мову; підвищує FPS щонайменше удвічі та зменшує мережевий трафік не менше ніж на 80 %; формує універсальну методику портингу C#-ігор на відкритий рушій. Завдання: проаналізувати технічний стан оригінальної гри та існуючі підходи до портингу; вибрати оптимальний рушій і сформувати критерії (FPS, RTT, розмір сейву, ліцензія); реалізувати модуль Threaded Physics на WorkerThreadPool Godot 4; додати ENet DeltaSync із MultiplayerSynchronizer (ping ≤ 80 мс); створити інтерфейс UI + кнопка Repair, що викликає RPC; реалізувати Brotli Δ-сейви та локальне відновлення; розробити WaterMask-шейдер із хвилястою межею та градієнтом; порівняти метрики «до / після» та сформувати модель прийняття рішення Godot / Unity / Unreal.

Тип елементу : Кваліфікаційні роботи здобувачів (Перший (бакалаврський))
Ключові слова: Godot 4; C#; Barotrauma; ThreadPool; ENet; Δ-сейв; Brotli; шейдер; портинг; інді-рушій
Шифр освітньої програми: 122.00.01
Шифр академічної групи: ІНб-1-21-4.0д
ПІБ наукового керівника: Карпенко Анастасія Сергіївна
Дата захисту: 16.06.2025
Місце захисту: Київський столичний університет імені Бориса Грінченка
Типологія: Кваліфікаційні роботи здобувачів > Інформатика
Підрозділи: Факультет інформаційних технологій та математики > Кафедра комп'ютерних наук
Користувач, що депонує: Ізабелла Андріївна Соболенко
Дата внесення: 05 Лист 2025 14:40
Останні зміни: 05 Лист 2025 14:40
URI: https://elibrary.kubg.edu.ua/id/eprint/53551

Actions (login required)

Перегляд елементу Перегляд елементу