My own game engine written in C++ and OpenGL
This repository has been archived on 2023年10月28日 . You can view files and clone it, but you cannot make any changes to its state, such as pushing and creating new issues, pull requests or comments.
- C 94.2%
- C++ 5.4%
- CMake 0.2%
- GLSL 0.1%
|
|
||
|---|---|---|
| 3d-party | remove win32 support | |
| AEngine | update | |
| AEngine-editor | update | |
| assets | update | |
| img | remove unused file | |
| .gitignore | add gitignore | |
| .gitmodules | update: fix layers, fix new core functional | |
| build.py | remove win32 build from build script | |
| CMakeLists.txt | remove win32 support | |
| LICENSE | Initial commit | |
| README.md | remove win32 support | |
AEngine ([A]lexCr4ckPentest`s [e]ngine)
// ╔═╗╔═╗┌┐┌┌─┐┬┌┐┌┌─┐
// ╠═╣║╣ ││││ ┬││││├┤
// ╩ ╩╚═╝┘└┘└─┘┴┘└┘└─┘
// ╔═╗╔═╗╔═╗╔═╗ ┌─┐┌─┐┌┬┐┌─┐ ┌─┐┌┐┌┌─┐┬┌┐┌┌─┐
// ╠╣ ║ ║╚═╗╚═╗ │ ┬├─┤│││├┤ ├┤ ││││ ┬││││├┤
// ╚ ╚═╝╚═╝╚═╝ └─┘┴ ┴┴ ┴└─┘ └─┘┘└┘└─┘┴┘└┘└─┘
// ╦ ╦┬─┐┬┌┬┐┌┬┐┌─┐┌┐┌ ┬┌┐┌ ╔═╗ ┌─┐┌┐┌┌┬┐ ╔═╗┌─┐┌─┐┌┐┌╔═╗╦
// ║║║├┬┘│ │ │ ├┤ │││ ││││ ║ ++ ├─┤│││ ││ ║ ║├─┘├┤ │││║ ╦║
// ╚╩╝┴└─┴ ┴ ┴ └─┘┘└┘ ┴┘└┘ ╚═╝ ┴ ┴┘└┘─┴┘ ╚═╝┴ └─┘┘└┘╚═╝╩═╝
An attempt to write my own game engine in C++ and OpenGL
It is not a real game engine
I have no goal to write the fastest and richest engine, I just practice and learn 3D graphics technologies
Features
- AEngine core:
- OpenGL loader
- Basic application functional
- Basic input (keyboard and mouse)
- Events
- AEngine renderer:
- VBO, IBO and VAO abstraction
- Basic renderer API
- 2D renderer
- 2D textures
- Cubemap textures
- Shaders
- Mesh
- Offscreen rendering framebuffer
- AEngine application:
- Basic window management (create, resize, handle input, destroy)
- Basic plugin manager
Minimal hardware requirements (may change in future)
- CPU: 1 core, 2.0GHz
- RAM: 128 MiB
- GPU: 64 MiB VRAM, with OpenGL 4.2 support
Supported platforms
- GNU/Linux: fully supported
- BSD: fully supported
- Win32 (Windows): NOT SUPPORTED
- MacOS (Apple): NOT tested
- IOS / Android: NOT supported
Editor preview
In plans
- Vulkan API support for rendering
- Plugin management system
- Advanced renderer: shadows, SSAO, lighting, materials and PBR
- Multithreading and major performace improvements (instancing)
- Scripting support