Skip to content

AGE: Arc Game Engine is an open-source engine for building 2D & 3D real-time rendering and interactive contents, especially video games with C# scripting support.

License

Notifications You must be signed in to change notification settings

GloriousPtr/ArcGameEngine

Folders and files

NameName
Last commit message
Last commit date
Jan 28, 2023
Jan 5, 2023
Mar 10, 2023
Jan 5, 2023
Mar 10, 2023
Feb 26, 2023
Jan 13, 2023
Jan 3, 2023
Dec 27, 2020
Jan 3, 2023
Dec 30, 2022
Nov 28, 2022
Nov 29, 2022
Nov 23, 2020
Jan 28, 2023
Mar 10, 2023

Repository files navigation

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

  • Clone Arc Game Engine using git. Make sure you do a --recursive clone!
git clone --recursive https://github.com/MohitSethi99/ArcGameEngine.git
  • Arc Game Engine is built in a Windows environment, using Visual Studio 2022.
  • Execute the script scripts/Win-GenProjects.bat to generate the solution and project files.

Current Features

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

Feature Description Status
Scene system Scene-based entity management. Scene serialization with YAML. Done ✔️
ECS support Entity Component System approach through entt. Done ✔️
2D Renderer 2D batch renderer supporting OpenGL. Done ✔️
3D Renderer Basic 3D renderer with lighting, IBL and PBR workflow supporting OpenGL. Done ✔️
ImGui support Basic game editor and in-game debug UI using dear imgui. Done ✔️
Shadow Support Soft and Hard shadow support in OpenGL 3D Renderer. Done ✔️
2D Physics 2D Physics using Box2D with Rigidbody, Box and Circle Colliders and joints. Done ✔️
3D Physics Basic 3D Physics using Jolt Physics with Rigidbody, Box and Sphere Colliders. Done ✔️
Scripting Basic scripting in C# using mono. Done ✔️
Audio Basic Sound API with spatialization through miniaudio. Done ✔️

Planned Features

Feature Description Status
C# API C# API for all the components. WIP 💻
Extended 2D Physics Extend 2D physics to support more collider types and API. WIP 💻
Extended 3D Physics Extend 3D physics to support more collider types and API. WIP 💻
Font Extend the Renderer capabilities so it can draw text. WIP 💻
Advanced Audio Advanced Sound API with effects. TODO 📋
Asset manager Basic asset handling API. TODO 📋
Direct3D Extend 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: