Skip to content
Snippets Groups Projects
Commit 956865de authored by Nils Petter Skålerud's avatar Nils Petter Skålerud
Browse files

Update README.md

parent 88b907ab
Branches
No related tags found
No related merge requests found
# DEngine
# GLTF Scene Viewer
Game engine project by Didgy (Nils Petter Skålerud)
Nils Petter Skålerud #510627 np_skalerud@hotmail.com
How to build:
# Project Description
Windows:
The project can be built as-is on MSVC and MinGW using CMake
A scene loader that allows you inspect scenes loaded from GLTF files. You will be able to fly through this scene with your camera
by using WASD and mouse.
Linux:
Should just be a matter of doing cmake ./ and then make in terminal. Will write detailed
# Key Features
Ubuntu packages required to build:
libglew-dev
libglfw3-dev
* All 3D models will use a homemade Phong shader with support for textures.
* Directional lights
* Textures are loaded in KTX format and use BC7 texture compression with precomputed mipmapping.
* The program is largely built on a homemade ECS (Entity-Component-System) architecture to allow scalability and reusability.
* Homemade ECS-inspired (Entity Component System) architecture to allow high scalability and reusability (can quickly switch the project to i.e a game engine)
* Components (but not custom script components) will be stored contiguously in memory, for maximum cache utilization and iteration speed
* Homemade math library made by Nils Petter Skålerud. The program does not use GLM at all.
* Quaternions for representing rotations
* Homemade Time Manager system
* Homemade Input system for raw input
* Asset Managing, Rendering and Application subsystems will be highly modular and easy to remove/add to the project.
* Object parenting
* Custom scripting framework, to allow gameplay programming
* Homemade rendering front-end interface, for easy implementation of additional rendering APIs i.e Vulkan
* OpenGL UBOs (Uniform Buffer Objects) for common information, such as camera and scene info.
* CMake project structure to allow very simple building on Windows and Linux
NOTE! 32-bit is not supported.
The scene loader will compile for Windows and Linux, 64-bit only.
How to install:
git clone https://github.com/Didgy74/DEngine.git
git submodule init
git submodule update
cmake ./
make
The marking consideration will be on **Architecture/Framework**
# Dependencies
The engine uses the following libraries:
* GLEW
* GLFW
* OpenGL
* nlohmann
* nlohmann-json
* fx-gltf
* stb_image
* DMath
* DTex
* OpenGL
* CMake
# Originally planned features
* Normal Textures (for lighting)
* Full Input system for making your own buttons and axes and bind them to raw input. Complete with input callbacks.
* Custom scripting components designed to be stored contiguously in memory, and not rely on polymorphism for higher performance.
* Deferred shading/lighting
* Multiple scenes running on their own threads independently of each other, with their own viewport/window
* Imgui
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment