2 unstable releases
| new 0.2.0 | Nov 9, 2025 |
|---|---|
| 0.1.0 | Sep 16, 2025 |
#1351 in Game dev
34 downloads per month
Used in 2 crates
27KB
194 lines
KengaAI Engine
Современный 3D-игровой движок на Rust и wgpu, созданный для высокой производительности и безопасности.
Основные возможности
- Графика: рендеринг на wgpu (Vulkan/Metal/DX12/OpenGL), динамическое освещение, PBR-материалы, динамические тени, Skybox с IBL поддержкой.
- Физика: интеграция с rapier3d, полноценная физическая симуляция.
- Звук: пространственный звук через rodio (модуль kengaai-audio).
- ECS: полноценная Entity-Component-System архитектура (модуль kengaai-ecs).
- Постобработка: система эффектов Bloom и постобработки (модуль kengaai-postprocess).
- Частицы: система частиц для визуальных эффектов (модуль kengaai-particles).
- Анимация: система скелетной анимации (модуль kengaai-animation).
- UI: система пользовательского интерфейса (модуль kengaai-ui).
- Сохранения: система сохранения и загрузки игрового состояния (модуль kengaai-save).
- Скрипты: система скриптинга на Lua (модуль kengaai-scripting).
- Кроссплатформенность: поддержка Windows, Linux, macOS.
- Безопасность: безопасность памяти благодаря Rust.
Состав проекта
- crates/: исходный код движка, разделенный на модули (крейты).
- fps/: основной модуль рендеринга.
- scene_fps/: загрузка и управление сценами в формате JSON.
- model_loader/: загрузчик 3D-моделей (glTF).
- ecs/: Entity-Component-System для управления объектами.
- postprocess/: система постобработки (Bloom, HDR).
- particles/: система частиц для визуальных эффектов.
- audio/: аудио система с пространственным звуком.
- procedural_mesh/: процедурная генерация мешей.
- demos/: примеры использования движка.
- kengaai-demo-fps: демонстрация FPS-механик.
- kengaquest: небольшая демо-игра.
- studio/: нативное приложение-редактор уровней на Rust + egui.
- assets/: игровые ресурсы (3D-модели, текстуры, уровни).
Системные требования
Минимальные:
- ОС: ALT Linux 11+, Ubuntu 22.04+, Windows 10/11
- Процессор: x86-64 с поддержкой SSE4.2
- Память: 8GB RAM
- Графика: GPU с поддержкой Vulkan 1.1+ или OpenGL 4.3+ (NVIDIA GTX 1050 / AMD RX 550)
Рекомендуемые:
- Графика: NVIDIA RTX 3060 / AMD RX 6600 или лучше
- Память: 16GB+ RAM
Установка и запуск (ALT Linux)
1. Установка системных зависимостей
# Для движка (wgpu, winit, rodio)
sudo apt-get install -y libX11-devel libXcursor-devel libXi-devel libXrandr-devel libxkbcommon-devel libalsa-devel vulkan-loader-devel
# Для нативной студии (Rust + egui)
sudo apt-get install -y pkg-config gcc make libssl-devel libalsa-devel libX11-devel libGL-devel
2. Установка Rust
Рекомендуется использовать rustup:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source "$HOME/.cargo/env"
rustup component add rust-src # для rust-analyzer
Если rustup недоступен, установите из репозитория: sudo apt-get install rust rust-cargo rust-src.
3. Сборка и запуск
# Клонирование репозитория
git clone https://github.com/your-repo/kengaai-engine.git
cd kengaai-engine
# Сборка проекта
cargo build --release
# Запуск FPS-демо
cargo run --release -p kengaai-demo-fps
Studio: Нативный редактор уровней
Студия — это отдельное десктоп-приложение для создания и редактирования JSON-файлов уровней.
Запуск в режиме разработки
# Переход в директорию studio
cd studio
# Сборка и запуск нативного приложения
cargo run
Создание пакетов
# ALT Linux (RPM пакет)
../build_alt_linux.sh --package
# Windows (NSIS установщик)
../build_windows.bat --package
Вклад в проект
Мы приветствуем любой вклад! Пожалуйста, ознакомьтесь с DEVELOPER_GUIDE.md и создавайте Pull Request'ы.
© 2025 KengaAI Team
Dependencies
~7.5MB
~218K SLoC