Butter Engine is a game engine made in LWJGL and uses its subset libraries for various tasks. What originally started out as a simple rendering library to make the use of LWJGL easier is now becoming a fully fledged engine with easier end user development.
- Implement OpenGL 3.3
- Shader Support
- Mesh System
- Separate Entity Rendering from World Rendering
- Model/Animation Loading
- Multi-Texture Support/Materials
- Transparency
- Phong or PBR Lighting Model
- Dynamic Lights
- Baked Lighting
- Implement Nuklear
- Support On-Screen UIs and Menus
- Input Switching
- Implement PhysX-JNI
- Math Compatibility
- Physics Model Loading
- Implement Ashley
- Entity Creation
- Logic Creation
- Import Hammer Maps
- Support Hammer Entities
- Implement OpenAL
- Spacial Audio
- Any-Sound Playback
- Volume Control
- Event Systems
- Documentation
- Mod Loading/Unloading
- Editor UI with ImGUI (Should be own section)
- Free Camera
- Source Engine Movement Controller
- Implement Netty
- UDP & Reliable UDP
- Remote Function Calling
- Networked Source Engine Movement Controller
- Deferred Rendering
- Raytracing
- OpenGL 4.4 Support
- Vulkan Support
- Steam Audio
Butter Engine is under the MIT License, check the license for more details. The libraries Butter Engine uses fall under their own respective licenses.