Butter Engine

Butter Engine is a custom Game Engine I have been working on since April 2021. It includes many features such as:

Rendering:

  • OpenGL Render engine with Textures, Shaders and Models
  • Dynamic Material Creator and Manager when importing models
  • Material Editor that supports different maps: Base Color, Normal, Metallic and Roughness
  • Lighting with PBR shaders
  • Skybox implementation

Physics:

  • PhysX Implementation for 3D physics
  • Box2D Implementation for 2D Physics

Scripting:

  • Mono C# for C# scripting capabilities
  • Works with Entity Component System to create and remove components through scripting
  • Support for prefabs
  • Support for public variables to be shown in the inspector panel (still a bit WIP)
A simple version of Pong Created in the Butter Engine

Editor Functionality:

  • A working Asset Panel with support for dragging and dropping into the scene and inspector
  • Working scene manager with ability to load scenes based on index
  • ENTT for Entity Component System
  • Docking system for custom layouts
  • Logging for error checking and info
  • ImGui and ImGuizmo for Editor windows and management

Misc Game Features

  • Skeletal Animation
  • Working sounds with looping and playing
Animation Component in action

In Progress

  • Packaging to an EXE for distribution
  • Launcher to launch different projects
  • HDRI Lighting with reflections
  • Shader creation in editor (shader graph?)
  • Mesh and Capsule Colliders
  • Shadow Mapping

Note: Photos and Videos were taken throughout development. This product does not represent the final product and many features are WIP.

Similar Posts