varomix / orbit-dev

C++ ImGui 3D, 2D game engine

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Orbit Engine

Hex.pm

Orbit is a multiplatform-focus graphical engine build on top of OpenGl, ImGui and more... The development of the engine is documented via my youtube channel: Madsycode

Orbit engine preview

Project's Goal

The main goal is to create a friendly community around this engine to shape it, maintain it and potentially make a difference.

Project Setup

  • Orbit has only been tested on Windows platform sofar, allthough the focus is still to make it multiplatform in the future.
  • you can clone the repository to your local machine via git clone https://github.com/Madsycode/orbit-dev.git
  • to be able to create a visual studio solution from this repository, you need to download premake5.exe and copy it into the root directory of the project so that the script can use it to generate a solution.
  • Now execute the vs2019.bat to generate a vs-2019 solution or edit the bath file to your custom visual studio version.
  • another important step is to open the Properties of the CORE-Project in visual studio and make sure you set the Precompiled Headers setting for this file: CORE/src/Vendor/ImGui/ImGuizmo.cpp to not No Using Precompiled Headers. This should normally be done by premake but it hasn't work for me sofar. so if you can, please fix it.
  • lastly copy the DLLs files from CORE/libs/dlls to the APP/bin/[Debug] or [Release] directory after your first compilation so they can be linked at runtime properly.

Supported features

  1. Physical Base Rendering (PBR)
  2. ImGui User Interface (Editor)
  3. Entity Munipulation via Transform Gizmo
  4. Entity Component System (ECS)
  5. OpenGL 3.x support
  6. Basic XML-Serialization (tinyxml)
  7. Event Driven Architechture
  8. 3D Model loading with assimp
  9. Texture loading via stb_image
  10. Point, Spot & Directional lighting
  11. ...

TODOs

  1. Invironment map sampling
  2. Model animation
  3. Scripting support
  4. Serialization
  5. Shadow mapping
  6. User interface
  7. Batch renderer
  8. Engine's logo
  9. ...

Code of Conduct

Please read Conduct.md for details on our code of conduct.

Support

Any support, to this project will be highly considered. So you are free to contribute for the future of this engine.

Twitter Youtube Discord Patreon

About

C++ ImGui 3D, 2D game engine

License:Apache License 2.0


Languages

Language:C++ 60.7%Language:C 38.6%Language:Objective-C 0.3%Language:GLSL 0.3%Language:Lua 0.1%Language:CMake 0.1%Language:Batchfile 0.0%