Teengine is a 2D/3D game engine developed using the Rust programming language. This project is currently focused on studying game engine development and is not yet ready for production use.
- Cross-platform window creation and event handling
- 2D sprite rendering with animation support
- Basic OpenGL-based rendering system
- Input handling system (keyboard support)
- Color key transparency for sprites
- Simple game state management
- Extended input handling (mouse, gamepad)
- Physics engine integration (2D/3D)
- Resource management system
- Audio system
- 3D rendering capabilities
- UI system
- Scene management
- Rust 1.80 or higher
- Cargo (Rust package manager)
- Graphics card and driver supporting OpenGL 3.3 or higher
-
Clone this repository:
git clone https://github.com/hexpy-games/teengine.git cd teengine
-
Build the project:
cargo build --release
-
Run the example game:
cd examples/simple_game cargo run --release
Check out the examples/simple_game
directory for a basic implementation example. This example demonstrates:
- Basic window creation
- Sprite rendering
- Animation system
- Input handling
- Game state management
For more detailed usage instructions, please refer to the documentation.
teengine/
├── src/ # Engine core implementation
├── examples/ # Example projects
│ └── simple_game/ # Basic game implementation
├── docs/ # Documentation
└── tests/ # Engine tests
We welcome contributions! If you'd like to contribute to the project, please refer to CONTRIBUTING.md.
This project is licensed under the Apache License, Version 2.0 with Commons Clause. See the LICENSE file for the complete license terms.
Thanks to all contributors and the Rust gamedev community for their support and inspiration.