Custom engine project made during Block A in Year 2 at BUAS. The engine is made in C++ with support for scripting in Lua. The engine supports serialization, a CPU based particle system, resource manager, GLTF loading, entity component system integration using entity, complex scene hierarchies, and much more.

Goals and Motivations

Technical Goals:

  • Explore fundamental ray-tracing concepts such as intersection checks, shadows, lighting.
  • Gain experience on CPU based renderers while improving C++ skills.
  • Get a basic understanding of optimization techniques in ray tracing

Challenges and solutions