Metadata-Version: 2.4
Name: aether-engine
Version: 1.2.0
Summary: 3D/2D game engine by entiti937 — OpenGL, physics, FPS, model editor, HUD
Home-page: https://pypi.org/project/aether-engine/
Author: entiti937
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Topic :: Games/Entertainment
Classifier: Topic :: Multimedia :: Graphics :: 3D Rendering
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: numpy>=1.24
Requires-Dist: glfw>=2.6
Requires-Dist: PyOpenGL>=3.1.7
Requires-Dist: Pillow>=10.0
Provides-Extra: audio
Requires-Dist: pygame-ce>=2.5; extra == "audio"
Provides-Extra: physics
Requires-Dist: pymunk>=6.0; extra == "physics"
Provides-Extra: models
Requires-Dist: trimesh>=3.21; extra == "models"
Provides-Extra: full
Requires-Dist: pymunk>=6.0; extra == "full"
Requires-Dist: pygame-ce>=2.5; extra == "full"
Requires-Dist: pyyaml>=6.0; extra == "full"
Requires-Dist: trimesh>=3.21; extra == "full"
Requires-Dist: freetype-py>=2.4; extra == "full"
Requires-Dist: imageio>=2.31; extra == "full"
Dynamic: author
Dynamic: classifier
Dynamic: description
Dynamic: description-content-type
Dynamic: home-page
Dynamic: license-file
Dynamic: provides-extra
Dynamic: requires-dist
Dynamic: requires-python
Dynamic: summary

# Aether Engine

**3D / 2D игровой движок на Python + OpenGL**  
**Разработчик:** entiti937 · **Версия:** 1.2.0 · **Лицензия:** MIT  
**PyPI:** https://pypi.org/project/aether-engine/

> Полное руководство: [`docs/GUIDE.md`](docs/GUIDE.md)

---

## Установка

```bash
pip install -U "aether-engine[full]"
```

## Showcase-игра (доказательство)

Minecraft-like sandbox **на этом же движке**:

```bash
python games/aether_craft.py
```

Там есть: воксельный мир, вид от 1 лица, ломать/ставить блоки, HUD, звуки, день/ночь, сейвы (F5/F9), урон и респавн.

## Другие запуски

```bash
python -m aether.editor
python games/orb_rush.py
python examples/03_first_person.py
python examples/04_physics2d.py
```

## Минимальный код

```python
from aether import Engine, Scene, Entity, MeshFactory, Material, Camera
from aether.scene.component import Transform, MeshRenderer

engine = Engine(1280, 720, "Game by you — engine by entiti937")
scene = Scene("Main")
camera = Camera(position=(0, 2, 6), yaw=-90)
scene.set_main_camera(camera)

cube = Entity("Cube")
cube.add_component(Transform(position=(0, 1, 0)))
mat = Material(); mat.albedo[:] = (0.2, 0.85, 1.0)
cube.add_component(MeshRenderer(mesh=MeshFactory.create_cube(), material=mat))
scene.spawn(cube)

engine.load_scene(scene)
engine.enable_first_person(camera)
engine.run()
```

## Возможности 1.2

- PBR 3D + sprites 2D + HUD overlay
- FPS (`enable_first_person`) и free-look камера
- Физика 3D/2D + raycast
- `ModelLoader` (OBJ/GLB/glTF/STL/FBX/…)
- Встроенный voxel model editor
- Procedural SFX, JSON save/load
- Примеры и две игры в репозитории

## Документация

Все команды, API и туториалы: **[docs/GUIDE.md](docs/GUIDE.md)**

---

Aether Engine © **entiti937**
