Home

Awesome

Arc Game Engine

Build Status Quality Gate Status Bugs Code Smells Reliability Rating

Platform GitHub Size

ARC

About

Arc Engine is an in-development game engine written in C++.

I develop it in my spare time as a personal project, so expect frequent periods of time with no activity in this repository.

Set up

git clone --recursive https://github.com/MohitSethi99/ArcGameEngine.git

Current Features

Right now, Arc Game Engine is very bare-bones. Its most remarkable features are:

FeatureDescriptionStatus
Scene systemScene-based entity management. Scene serialization with YAML.Done ✔️
ECS supportEntity Component System approach through entt.Done ✔️
2D Renderer2D batch renderer supporting OpenGL.Done ✔️
3D RendererBasic 3D renderer with lighting, IBL and PBR workflow supporting OpenGL.Done ✔️
ImGui supportBasic game editor and in-game debug UI using dear imgui.Done ✔️
Shadow SupportSoft and Hard shadow support in OpenGL 3D Renderer.Done ✔️
2D Physics2D Physics using Box2D with Rigidbody, Box and Circle Colliders and joints.Done ✔️
3D PhysicsBasic 3D Physics using Jolt Physics with Rigidbody, Box and Sphere Colliders.Done ✔️
ScriptingBasic scripting in C# using mono.Done ✔️
AudioBasic Sound API with spatialization through miniaudio.Done ✔️

Planned Features

FeatureDescriptionStatus
C# APIC# API for all the components.WIP 💻
Extended 2D PhysicsExtend 2D physics to support more collider types and API.WIP 💻
Extended 3D PhysicsExtend 3D physics to support more collider types and API.WIP 💻
FontExtend the Renderer capabilities so it can draw text.WIP 💻
Advanced AudioAdvanced Sound API with effects.TODO 📋
Asset managerBasic asset handling API.TODO 📋
Direct3DExtend the Renderer to support D3D12.TODO 📋

Feature Showcase

Arc Game Engine Showcase

Dependencies

Arc Game Engine has the following dependencies:

Projects are generated with Premake 5.

Special Mentions

Huge shout out to: