Skip to content

Latest commit

 

History

History
234 lines (212 loc) · 14 KB

README.md

File metadata and controls

234 lines (212 loc) · 14 KB
ICON

Sentinel

C++14 Game Engine

C++    DX11    Premake    Python    Windows






📰 Description:

Sentinel is a C++14 based game engine, with DirectX 11 currently as it's primary rendering API. Stemmed from the understandings and short comings of my previous work Ghost Engine, this engine is more focused on establishing a good architecture, proper editor-to-runtime pipeline, ease of use, and ultimately to develop the engine into something which can be used to actually make and ship small games instead of being another non-functional portfolio project/ defunct project.

Sentinel follows the Orthodox C++, or C-flavored C++ paradigm, where not a lot of modern C++ features are used, in order to make code as easy and straightforward to understand as possible.


🗒️ Features:

Application Graphics
  • Python + Premake build system setup
  • Terminal logging, with printf-style formatting
  • Multi-cast Event system
  • Input polling
  • Platform Agnostic Input codes
  • SIMD/custom Math operations
  • Basic ECS support using flecs
  • Scene serialization/deserialization
  • Archive I/O support
  • File I/O and Filesystem operations
  • Context and Swapchain creation
  • Buffers (Vertex, Index, Constant)
  • Shaders
  • Textures
  • Vertex Layouts using reflection
  • Render-Textures and Depth-Textures
  • Framebuffers
  • General-purpose in-world camera
Editor Ongoing
  • Custom title-bar window
  • ImGui Dockspace
  • ImGui Viewport
  • Scene Hierarchy Panel
  • Device Information
  • Development of scene rendering
  • Archive-based data loading pipeline
  • Resource loading from custom binary files
  • More ECS components

🎞️ Screenshots:


🔖 Prerequisites:

🖥️Hardware
Operating System Windows 10 or Windows 11
Graphics Support DirectX 11 (Feature support 11_0 or above)

💿Software
Visual Studio 2022 or 2019 Download Link Install Desktop Development with C++ workload option
Python 3.3 or higher Download Link Install requests package from pip

⬇️ Cloning:

  1. Execute following git command in CLI to a local destination:
    git clone https://github.com/CybernetHacker14/Sentinel.git
  2. In the cloned folder, execute following git command in CLI:
    git submodule update --init

  • Alternatively, execute following git command in CLI to a local destination:
    git clone --recursive https://github.com/CybernetHacker14/Sentinel.git

Project Creation:

  • For Windows: Execute the Setup.bat file present in the Scripts folder and follow instructions. This will create a new Visual Studio solution in the outermost directory.
⚠️   Currently, only Premake option works. CMake build scripts aren't updated for latest changes

📝 Tech Stack:

Supported OS Supported IDEs Languages Used
  • Windows 10
  • Windows 11
  • Visual Studio 2019
  • Visual Studio 2022
  • C++14 (Engine + Editor)
  • HLSL (Shader language)
  • Lua (Premake)
  • CMake
  • Python (Setup)
External Libraries
glfw/GLFW USCiLab/cereal SanderMertens/flecs
ocornut/imgui zlib-ng/minizip-ng nothings/stb_image
Tessil/sparse-map g-truc/glm