Sector Genesis (Sci-Fi Incremental Survivor Game)
Sector Genesis — це високопродуктивна браузерна інкрементальна гра у жанрі "survivor-style" в сетингу наукової фантастики. Проєкт поєднує динамічний авто-бій (натхненний Vampire Survivors) із глибокою системою еволюції фракцій (у стилі StarCraft) та постійним мета-прогресом.
Технологічний стек
Frontend: Vue 3 (Composition API), TypeScript
Графічний рушій: Pixi.js v8 (2D WebGL/WebGPU)
Стейт-менеджмент: Pinia
Стилізація: Tailwind CSS
Збірка: Vite
Ключові завдання та архітектурні виклики
Головною метою проєкту було об'єднати реактивний UI-фреймворк із імперативним високопродуктивним рендерингом гри, досягнувши стабільних 60 FPS при сотнях активних об'єктів на екрані.
Розділення парадигм (Ковзання між Vue та Pixi.js): Уся логіка ігрового циклу (game loop) та рендеринг ізольовані всередині екосистеми Pixi.js, тоді як Vue 3 та Pinia керують HUD (інтерфейсом гри), меню покращень та глобальним станом сесії.
Data-Driven архітектура: Сутності побудовані на класовій структурі зі спільними системами (спаунери, менеджери зброї), що мінімізує навантаження на процесор під час колізій та авто-таргетингу.
Оптимізація синхронізації: Реалізовано ефективне передавання високочастотних даних з ігрового рушія до реактивного стану Pinia без втрати продуктивності.
Технологічний стек
Frontend: Vue 3 (Composition API), TypeScript
Графічний рушій: Pixi.js v8 (2D WebGL/WebGPU)
Стейт-менеджмент: Pinia
Стилізація: Tailwind CSS
Збірка: Vite
Ключові завдання та архітектурні виклики
Головною метою проєкту було об'єднати реактивний UI-фреймворк із імперативним високопродуктивним рендерингом гри, досягнувши стабільних 60 FPS при сотнях активних об'єктів на екрані.
Розділення парадигм (Ковзання між Vue та Pixi.js): Уся логіка ігрового циклу (game loop) та рендеринг ізольовані всередині екосистеми Pixi.js, тоді як Vue 3 та Pinia керують HUD (інтерфейсом гри), меню покращень та глобальним станом сесії.
Data-Driven архітектура: Сутності побудовані на класовій структурі зі спільними системами (спаунери, менеджери зброї), що мінімізує навантаження на процесор під час колізій та авто-таргетингу.
Оптимізація синхронізації: Реалізовано ефективне передавання високочастотних даних з ігрового рушія до реактивного стану Pinia без втрати продуктивності.