Opracowanie niestandardowego kontrolera lotu (Arcade Flight Core)
W tym projekcie opracowałem modułowy system arcade'owego sterowania samolotem oraz podstawowych mechanik walki. Głównym zadaniem było stworzenie szablonu powietrznej walki, który można łatwo zintegrować w dowolnym projekcie Unity.
Zrealizowane zostały następujące rozwiązania techniczne:
Architektura oparta na danych: Wykorzystanie ScriptableObjects do elastycznego dostosowywania podstawowych elementów systemu (sterowanie, strzelanie, cele).
Optymalizacja wydajności: Wdrożono system Object Pooling do spawnowania pocisków i wrogów, co minimalizuje obciążenie Garbage Collectora.
Bezpieczna integracja: Cały kod ma wyraźną strukturę, jest skomentowany i izolowany w własnej przestrzeni nazw (ArcadeFlight.Core), co gwarantuje brak konfliktów podczas przenoszenia do innych projektów.
Brak zbędnych zależności: System działa "z pudełka" na standardowych komponentach Unity (Input Manager, uGUI), bez powiązania z konkretnym Render Pipeline.
Modularność: Logika lotu opiera się na komponentach Transform, co pozwala łatwo zastąpić kontroler własną logiką, nie naruszając działania całego systemu.
Zrealizowane zostały następujące rozwiązania techniczne:
Architektura oparta na danych: Wykorzystanie ScriptableObjects do elastycznego dostosowywania podstawowych elementów systemu (sterowanie, strzelanie, cele).
Optymalizacja wydajności: Wdrożono system Object Pooling do spawnowania pocisków i wrogów, co minimalizuje obciążenie Garbage Collectora.
Bezpieczna integracja: Cały kod ma wyraźną strukturę, jest skomentowany i izolowany w własnej przestrzeni nazw (ArcadeFlight.Core), co gwarantuje brak konfliktów podczas przenoszenia do innych projektów.
Brak zbędnych zależności: System działa "z pudełka" na standardowych komponentach Unity (Input Manager, uGUI), bez powiązania z konkretnym Render Pipeline.
Modularność: Logika lotu opiera się na komponentach Transform, co pozwala łatwo zastąpić kontroler własną logiką, nie naruszając działania całego systemu.