kengaai-model-loader 0.2.0

3D model loader for KengaAI Engine (glTF support)
Documentation
# KengaAI Engine

Современный 3D-игровой движок на Rust и wgpu, созданный для высокой производительности и безопасности.

![KengaAI Engine](assets/logo.svg)

## Основные возможности

- **Графика:** рендеринг на 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. Установка системных зависимостей

```bash
# Для движка (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:
```bash
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. Сборка и запуск

```bash
# Клонирование репозитория
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-файлов уровней.

### Запуск в режиме разработки

```bash
# Переход в директорию studio
cd studio

# Сборка и запуск нативного приложения
cargo run
```

### Создание пакетов

```bash
# ALT Linux (RPM пакет)
../build_alt_linux.sh --package

# Windows (NSIS установщик)
../build_windows.bat --package
```

## Вклад в проект

Мы приветствуем любой вклад! Пожалуйста, ознакомьтесь с DEVELOPER_GUIDE.md и создавайте Pull Request'ы.

---
© 2025 KengaAI Team