The Echo Engine is a game engine developed using C++ and OpenGL for the purpose of knowledge and study. It is specifically designed to support 3D games and utilizes the Entity Component System (ECS) architecture to provide flexibility and modularity in game development.
- Full support for 3D games.
- Entity Component System (Echo ECS) architecture for a flexible and modular game structure.
- Handling of keyboard, mouse, and gamepad inputs for player interactivity.
- Implementation of 3D model loading for rendering complex objects.
- Planned: support for 2D games.
- Planned: 3D and 2D physics for realistic object simulations and collisions.
- Planned: audio for immersive sound effects.
- Planned: animation for smooth character and object movement.
The Open Game Engine relies on the following libraries:
- OpenGL: for 3D graphics rendering.
- GLFW: for window management and input handling.
- GLM: for mathematics and vector operations.
- Assimp: for 3D model importing.
- Planned: a physics library for object simulation and collisions.
- Planned: an audio library for sound playback and effects.
- Planned: an animation library for controlling movements and transitions.
Make sure to install the necessary dependencies before compiling and running the Open Game Engine.
The documentation for the Open Game Engine can be found in the "docs" directory of the repository. It provides comprehensive guides, tutorials, and API references to help you make the most of the engine's features and functionalities.
Contributions to the Open Game Engine are welcome! If you encounter any issues or have suggestions for improvements, please open an issue or submit a pull request on the GitHub repository.
The Open Game Engine is released under the Apache-2.0 License. Feel free to use, modify, and distribute the engine for both commercial and non-commercial projects.