Dagon is an Open Source 3D game development framework based on OpenGL 4.0 core profile and SDL2. The goal of this project is to create a modern, easy to use, extensible 3D game engine for D language. Dagon currently works on Windows and Linux.
The engine is still under development and lacks many important features. It is currently not recommended to use Dagon in production due to API instability. Follow the development on Trello to see the priority tasks.
Dagon uses modern graphics techniques and so requires a fairly powerful graphics card to run. Turing-based NVIDIA cards are recommended (although ray tracing support is not required). The engine is only desktop, support for mobile and web platforms is not planned. Dagon works on Windows and Linux.
Latest source tarball can be downloaded from GitHub releases page.
You can also add Dagon as a dependency to your DUB project:
dub add dagon
Assuming you have installed the D language toolchain, the recommended way to start using Dagon is to create a game template with "dub init". Run the following in an empty directory:
dub init --type=dagon
dub build
By running a template application you should see a sample scene with a plane and a cube. You can then modify the generated dub.json file to suit your needs.
Dagon depends on the following shared libraries:
The only mandatory dependency is SDL, the others belong to the corresponding extensions.
Runtime dependencies are automatically deployed on 64-bit Windows and Linux. On other platforms, you will have to install them manually.
Dagon has a number of tutorials on GitHub wiki (not all are complete):
Corresponding examples can be found here.
Additional examples can be found in Patreon Sponsor Folder which is now available to everyone.
If you want to contribute code to Dagon, send pull requests to the project repository. Please, read Contributing Guidelines first.
Found a bug? Please, create an issue here.
Dagon was created by Timur Gafarov, Rafał Ziemniewski, Mateusz Muszyński, Björn Roberg, dayllenger, my-ijet.
Also thanks to Lawrence Aberba, Andrey Penechko, Robert Schadek, RUSshy, isaacs-dev for PRs and bug reports.
If you like Dagon, please support its development on Patreon and get a reward depending on your donation amount. Supporters who donate $10 and more will be listed on this page as Sponsors. You can also make a donation via PayPal and NowPayments.
Big thanks to these awesome people for supporting Dagon: Daniel Laburthe, Rafał Ziemniewski, Kumar Sookram, Aleksandr Kovalev, Robert Georges, Jan Jurzitza (WebFreak), Rais Safiullin (SARFEX), Benas Cernevicius, Koichi Takio, Konstantin Menshikov.
Copyright (c) 2016-2024 Timur Gafarov, Rafał Ziemniewski, Mateusz Muszyński, dayllenger, Konstantin Menshikov, Björn Roberg, Isaac S., ijet. Distributed under the Boost Software License, Version 1.0 (see accompanying file COPYING or at https://www.boost.org/LICENSE_1_0.txt).