Yet another approach to developing a personal 3D graphics engine. Windows + Direct3D 12.

Overview

RegEngine

Yet another approach to developing a personal 3D graphics engine. Windows + Direct3D 12.

Work in progress... Nothing to see here. I just rendered a first triangle 😀

License

The project is open source under MIT license. See file LICENSE.txt.

Dependencies and third-party libraries

The project source code depends on:

  • C++ standard library, including some of the latest C++11/14/17/20 features
  • WinAPI from Windows 10 with some reasonably new Windows SDK, including Direct3D 12
  • Visual Studio 2022

The project uses following thirt-party libraries:

  • d3dx12.h - D3D12 helpers, by Microsoft. License: MIT.
    • Directory: ThirdParty\d3dx12
  • DirectX Tool Kit for Direct3D 12 - a collection of helper classes for writing Direct3D 12 C++ code, by Microsoft. License: MIT.
    • Directory: Source\packages\directxtk12_desktop_2017.2021.11.8.1
  • GLM - mathematics library for graphics software, by G-Truc Creation. License: The Happy Bunny License or MIT.
    • Directory: ThirdParty\glm
  • RapidJSON - a fast JSON parser/generator, by Tencent. License: MIT.
    • Directory: ThirdParty\rapidjson
  • str_view - "Null-termination-aware string-view class for C++", by Adam Sawicki. License: MIT.
    • Directory: ThirdParty\str_view
  • WinFontRender - a library that renders Windows fonts in graphics applications, by Adam Sawicki.
    • License: Modified MIT. Directory: ThirdParty\WinFontRender
  • WinPixEventRuntime - a library for PIX events, by Microsoft. License: custom freeware.
    • Directory: Source\packages\WinPixEventRuntime.1.0.210818001

The project requires following hardware/software environment to run: PC, Windows 10+, Direct3D 12 compatible display adapter (graphics card).

Running the project in a system without beforementioned development environment installed or without Developer Mode enabled in Windows settings has not been tested yet and may not work properly.

Owner
Adam Sawicki
(This is my personal account.)
Adam Sawicki
Yet another component system

Yet another component system Header-only c++11 entity component system Depends on Parallel hashmap for fast pointer container Compile time type name a

Devil Devilson 11 Jul 30, 2022
Yet Another TruePosition GPSDO

YATPGPSDO Yet Another TruePosition GPSDO This is a hardware and the corresponding firmware implemented on an STM32 BluePill board that drives a TruePo

null 15 Mar 25, 2022
Rex, another retained UI engine.

ℹ️ This project is currently work in progress rex What is Rex? Rex is another retained UI engine built on top of YogaLayout. Rex basically does everyt

Chrones 2 May 28, 2022
A modification of the playstation UI to help with launching and developing homebrew.

Orbis-Toolbox A modification of the playstation UI to help with launching and developing homebrew

Greg 84 Jul 29, 2022
This template provides a base structure to start developing a small raylib game in plain C

This template provides a base structure to start developing a small raylib game in plain C. The repo is also pre-configured with a default LICENSE (zlib/libpng) and a README.md (this one) to be properly filled by users.

Ray 98 Aug 3, 2022
A Framework for developing Unity games with Lua

UnityLua A Framework for developing Unity games with Lua Warning: This is not finished, I don't suggest using this until it is complete or you may run

Down 7 Jul 13, 2022
Mach is a game engine & graphics toolkit for the future.

Mach engine ⚠️ Project status: in-development ⚠️ Under heavy development, not ready for use currently. Follow @machengine on Twitter for updates. Zero

Hexops 1.1k Aug 11, 2022
Engine-3D is a 3D-Graphics Renderer built from scratch in C++

Engine3D Engine-3D is a 3D-Graphics Renderer built from scratch in C++, as an Undergraduate Computer Engineering Project for 5th Semester, assigned by

Chirag Lamsal 4 Nov 15, 2021
DigitalVox4 - Metal Graphics Engine

DigitalVox is the name of a series. Although each version is based on a component system, the specific implementation is very different. Therefore, different code repositories are used for management.

yangfengzzz 8 Jun 11, 2022
Godot Engine – Multi-platform 2D and 3D game engine

Godot Engine 2D and 3D cross-platform game engine Godot Engine is a feature-packed, cross-platform game engine to create 2D and 3D games from a unifie

Godot Engine 52k Aug 14, 2022
Improved version of the X-Ray Engine, the game engine used in the world-famous S.T.A.L.K.E.R. game series by GSC Game World.

OpenXRay OpenXRay is an improved version of the X-Ray Engine, the game engine used in the world-famous S.T.A.L.K.E.R. game series by GSC Game World. S

null 2k Aug 10, 2022
Flax Engine – multi-platform 3D game engine

Flax Engine – multi-platform 3D game engine

Flax Engine 3.5k Aug 10, 2022
CLUSEK-RT is a complex game engine written in C++ and the successor of the CLUSEK game engine

CLUSEK-RT is a complex game engine written in C++ and the successor of the CLUSEK game engine. This engine has been designed with a cross-platform design in mind. Thanks to Vulkan API it delivers a next-gen experience with ray tracing to both Linux and Windows platforms

Jakub Biliński 33 Jul 28, 2022
Ground Engine is an easy to use Game Engine for 3D Game Development written in C++

Ground Engine is an easy to use Game Engine Framework for 3D Game Development written in C++. It's currently under development and its creation will b

 PardCode 54 Aug 10, 2022
Rogy-Engine- - My 3D game engine source code.

Rogy-Engine Development My 3D game engine. (NOT THE FINAL VERSION- Windows only) Features: PBR shading and reflection probes with parallax correction.

AlaX 92 Jun 18, 2022
The Atomic Game Engine is a multi-platform 2D and 3D engine with a consistent API in C++, C#, JavaScript, and TypeScript

The Atomic Game Engine is a multi-platform 2D and 3D engine with a consistent API in C++, C#, JavaScript, and TypeScript

null 2.7k Aug 6, 2022
Hyperion Engine is a 3D game engine written in C++

Hyperion Engine About Hyperion Engine is a 3D game engine written in C++. We aim to make Hyperion be easy to understand and use, while still enabling

null 163 Aug 9, 2022
📽 Highly Optimized Graphics Math (glm) for C

?? OpenGL Mathematics (glm) for C Documentation Almost all functions (inline versions) and parameters are documented inside the corresponding headers.

Recep Aslantas 1.4k Aug 4, 2022
A library for high-performance, modern 2D graphics with SDL written in C.

SDL_gpu, a library for making hardware-accelerated 2D graphics easy. by Jonathan Dearborn SDL_gpu is licensed under the terms of the MIT License. See

Jonathan Dearborn 1k Aug 10, 2022