Asteroids built on a handmade engine for learning.
Go to file
Doyle Thai 3894d33485 Fix rotation on render, change rendering code
Premultiply transformation matrix onto vertices before sending onto GPU to
preserve transformation properties of entities before being batched into
a general group. This removes the model matrix from the shader pipeline- instead
in rendering code we deal in world space (which works out to be more intuitive).
Only in the last step in GLSL we convert back to normalised coordinates.
2016-09-23 18:02:53 +10:00
data Fix rotation on render, change rendering code 2016-09-23 18:02:53 +10:00
extern Basic audio with stb_vorbis decoding and openal 2016-07-25 22:10:50 +10:00
src Fix rotation on render, change rendering code 2016-09-23 18:02:53 +10:00
.clang-format IMGUI use data from Gamestate, fix pointInRect bug 2016-08-04 21:17:16 +10:00
.gitattributes Initialise repo 2016-06-03 15:07:40 +10:00
.gitignore Basic audio with stb_vorbis decoding and openal 2016-07-25 22:10:50 +10:00
Dengine.sln Initialise repo 2016-06-03 15:07:40 +10:00
Dengine.vcxproj Add draft better string library implementation 2016-09-07 23:33:01 +10:00
Dengine.vcxproj.filters Add draft better string library implementation 2016-09-07 23:33:01 +10:00
README.md Add readme.md to project 2016-08-05 01:55:52 +10:00

Dengine

Dengine is a 2d game engine developed with OpenGL and low-level libraries in C. The main goal of Dengine is to facilitate learning from many aspects of Computer Science. Alongside Dengine a game is being built which guides the development of features for the game. Dengine is inspired by Handmade Hero, with a focus on developing as many features with minimal libraries, such that it is not too time-consuming and counter-productive to do so.

Building

Dengine is currently being developed using Visual Studio 2015. You can build the project by executing the (preferred) build.bat in the src folder, or simply opening the project in Visual Studio and compiling.

Additionally, an OpenAL-Soft DLL is required which can be downloaded from the Window pre-built binaries of OpenAL here.

NOTE: Assets are not included in the repository.

Dependencies

  • GLEW: Cross platform OpenGL wrapper.
  • GLFW: Cross platform OpenGL Application creation.
  • STB: Single file utility libraries by Sean Barrett.
  • OpenAL-Soft: Software implementation of the OpenAL 3D audio API.