3D game engine for D
To use this package, run the following command in your project's root directory:
Put the following dependency into your project's dependences section:
The goal of this project is creating a modern, easy to use, extendable 3D game engine for D language. Dagon is based on OpenGL 4.0 core profile. It works on Windows and Linux, both 32 and 64-bit. It doesn't support macOS because Apple doesn't support OpenGL anymore.
Dagon is still under development and lacks a lot of important functionality. Currently it is not recommended to use Dagon in production due to unstable API. Follow Dagon development on Trello to see priority tasks.
- Static and animated meshes, OBJ and IQM formats support
- Textures in PNG, JPG, TGA, BMP, HDR formats
- Own asset format with Blender exporter
- Deferred pipeline for opaque materials, forward pipeline for transparent materials and materials with custom shaders
- Physically based rendering (PBR)
- HDR rendering with Reinhard, Hable/Uncharted, ACES and Filmic tonemapping operators
- HDRI environment maps
- Directional lights with cascaded shadow mapping and volumetric scattering
- Spherical and tube area lights
- Spot lights
- Normal/parallax mapping, parallax occlusion mapping
- Deferred decals with normal mapping and PBR material properties
- Dynamic skydome with sun and day/night cycle
- Particle system with force fields. Blended particles, soft particles, shaded particles with normal map support, particle shadows
- Terrain rendering. Procedural terrain using OpenSimplex noise or any custom height field
- Water rendering
- Post-processing (FXAA, SSAO, lens distortion, motion blur, glow, LUT color grading)
- UTF-8 text rendering using TTF fonts via Freetype
- GUI and 2D graphics based on Nuklear. Canvas framework that renders vector shapes
- Keyboard, mouse, joystick input
- Unicode text input
- Ownership memory model
- Entity-component model
- Live asset reloading
- Built-in camera logics for quick and easy navigation (freeview and first person style view)
- Box container support for assets
- Built-in physics engine.
Planned in future:
- Screen-space reflections
- Newton Game Dynamics integration.
To use latest stable Dagon, add the following dependency to your
On Windows runtime dependencies are automatically deployed if you are building with Dub. On other platforms you have to install them manually.
Copyright (c) 2016-2020 Timur Gafarov, Rafał Ziemniewski, Mateusz Muszyński, Björn Roberg, dayllenger. Distributed under the Boost Software License, Version 1.0 (see accompanying file COPYING or at http://www.boost.org/LICENSE10.txt).
Rafał Ziemniewski, Kumar Sookram, Aleksandr Kovalev, Robert Georges, Jan Jurzitza (WebFreak), Rais Safiullin (SARFEX), Koichi Takio.
Made with Dagon
- Registered by Timur Gafarov
- 0.11.0 released a month ago
- Sub packages:
- dagon:ftfont, dagon:nuklear, dagon:physics, dagon:iqm, dagon:init-exec
0.11.0 2020-Oct-20 0.11.0-beta2 2020-Oct-10 0.11.0-beta1 2020-Oct-07 0.11.0-alpha3 2020-Oct-07 0.11.0-alpha2 2020-Sep-30
- Download Stats:
1 downloads today
5 downloads this week
17 downloads this month
1071 downloads total
- Short URL: