Этот проект содержит оптимизированную систему рисования в VR при помощи Hand Tracking фичи от Meta Quest
- Unity: Игровой движок.
- C#: Основной язык программирования.
- NewtonSoft: Библиотека для работы с JSON в C#.
- UniTask: Библиотека для работы с ассинхронщиной в Unity.
- R3: Библиотека для реактивного программирования в Unity.
- Zenject: Библиотека для DI в Unity.
- TSS: Продвинутый твиннер для работы с состоянями UI в Unity.
В основе архитектуры системы лежит модифирированный MVC и DDD с разделением на основные слои (Bootstrap, Core, Data, Domain, и Presentation). Для легко мастшабирования и слабой связанности между объектами используется сигнальная шина из Zenject. Управление рисованием отделено от остальной логики и благодаря сигналам лего заменяется, например, на управление контроллерами. Сохранение реализовано ассинхронно при помощи UniTask. Работает через интерфейс и реализации, которые легко можно добавлять под нужды проекта. Для DI используется Zenject. Для расширенного контроля за потоками используется библиотека R3. Основные настройки вынесены в конфиг для быстрой настройки приложения.