Skip to content
DigitalRune Engine - .NET libraries for developing 3D games with XNA and MonoGame
C# Smalltalk HLSL FLUX PowerShell Batchfile
Branch: master
Clone or download
DigitalRune Merge branch 'master' of https://github.com/DigitalRune/DigitalRune
# Conflicts:
#	DigitalRune-All.sln
#	DigitalRune-MonoGame.sln
Latest commit a907452 Jun 5, 2016
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
Content
Documentation ... Jun 4, 2016
Samples
Scripts ... Jun 4, 2016
Source FIX: Removed obsolete files in DigitalRune(iOS).cspproj. Jun 5, 2016
Tests ... Jun 4, 2016
Tools/Pack ... Jun 4, 2016
.gitignore FIX: Bad gitignore settings. Jun 4, 2016
.gitmodules NEW: Added MonoGame submodule. Jun 4, 2016
0-Format-Projects.ps1 NEW: Initial import of DigitalRune Engine! Batch 1. Jun 4, 2016
Build-Content-Debug.cmd NEW: Initial import of DigitalRune Engine! Batch 1. Jun 4, 2016
Build-Content-Release.cmd NEW: Initial import of DigitalRune Engine! Batch 1. Jun 4, 2016
DigitalRune-All.sln Merge branch 'master' of https://github.com/DigitalRune/DigitalRune Jun 5, 2016
DigitalRune-Editor.sln NEW: Initial import of DigitalRune Engine! Batch 1. Jun 4, 2016
DigitalRune-MonoGame-Android.sln CHANGE: Updated android projects. Jun 5, 2016
DigitalRune-MonoGame-Linux.sln NEW: Initial import of DigitalRune Engine! Batch 1. Jun 4, 2016
DigitalRune-MonoGame-Windows.sln NEW: Initial import of DigitalRune Engine! Batch 1. Jun 4, 2016
DigitalRune-MonoGame-WindowsPhone.sln NEW: Initial import of DigitalRune Engine! Batch 1. Jun 4, 2016
DigitalRune-MonoGame-WindowsStore.sln NEW: Initial import of DigitalRune Engine! Batch 1. Jun 4, 2016
DigitalRune-MonoGame-WindowsUniversal.sln Windows Universal sample added to solutions. Jun 4, 2016
DigitalRune-MonoGame.sln Merge branch 'master' of https://github.com/DigitalRune/DigitalRune Jun 5, 2016
DigitalRune-XNA-Windows.sln NEW: Initial import of DigitalRune Engine! Batch 1. Jun 4, 2016
LICENSE.TXT NEW: Initial import of DigitalRune Engine! Batch 1. Jun 4, 2016
README.md NEW: Added link to DigitalRune blog articles. Jun 4, 2016

README.md

DigitalRune Engine

Copyright (C) DigitalRune GmbH. Authors: Helmut Garstenauer, Martin Garstenauer

The DigitalRune Engine is a collection of middleware libraries and tools for developing 3D games, VR simulations and CAx applications. The software is written in C# for the Microsoft .NET Framework and Mono. It supports the Microsoft XNA Game Studio and MonoGame.

Documentation

The documentation is available online: Link

Please note that the documentation has not been updated for the open source version.

The documentation refers to DigitalRune blog and forum articles. A backup of these articles can be found here: Link

Notes

The software was designed to serve as a personal reference implementation. It should be easy to use, yet rich with features. It was initially written for the Microsoft XNA Framework 4. Several limitations of the XNA Framework are still present in the software. By focusing on .NET 4.6+, C# 6+, DirectX 11+ many things could be solved more elegantly.

Several newer, planned features and optimizations are not yet included in the open source project, for example: DirectX 11/12 features, physically-based rendering (PBR), temporal reprojection techniques, improved game object system (game object behaviors), scripting and NuGet support.

The engine was designed for small to medium games ("indie games"). But there is room for optimizations: You can trim features that are not needed and optimize where necessary.

Please note that the original contributors are no longer involved with further development of the open source project. Currently, the open source project does not have a maintainer. At the moment we do not accept pull requests. But feel free to fork the project!

Experimental Features

The solution includes several WPF libraries, an MVVM framework for WPF and an early version of an IDE (integrated development environment) for games. See DigitalRune Editor.

MonoGame Fork

The DigitalRune Engine uses a forked version of MonoGame: MonoGame fork for DigitalRune

The MonoGame fork contains a few documented changes compared to the original MonoGame. Ideally, those changes are merged with the original repository or removed to use the original MonoGame version directly and get rid of the fork.

Build instructions

Here are instructions for building the DigitalRune Engine. Please note that there is no automated build system. (The original build infrastructure is not available for the open source project. Due to a limited amount of time, it was not possible to set up a new build system.)

Before you start, check the Prerequisites.

How to build the DigitalRune Engine for MonoGame

MonoGame content projects are not included in the Visual Studio solutions. A few manual steps are required:

  1. Update all git submodules recursively (to load the MonoGame submodules).
  2. Run Source/MonoGame/Protobuild.exe to generate MonoGame project files and solutions.
  3. Build the Visual Studio solution DigitalRune-MonoGame-<Platform>.sln (Configuration: Release, Platforms: Mixed Platforms). A few projects will fail because the MonoGame content projects haven't been built yet.
  4. Build the DigitalRune content by running Build-Content-Release.cmd.
  5. Build the sample content by running Samples/Build-Content-MonoGame-<Platform>.cmd.
  6. Build the Visual Studio solution DigitalRune-MonoGame-<Platform>.sln again. Now, the projects should build successfully.
  7. Run the sample project Samples/Samples-MonoGame-<Platform>.csproj.

How to build the DigitalRune Engine for XNA

  1. Build the Visual Studio solution DigitalRune-XNA-Windows.
  2. Run the sample project Samples/Samples-XNA-Windows.csproj.

To use the Microsoft XNA Game Studio with Visual Studio 2012 (or newer) follow these instructions: Link

How to build the documentation

The DigitalRune assemblies for the XNA Framework are used as the documentation source. The documentation can be built using the Sandcastle Help File Builder.

  1. Build the Visual Studio solution DigitalRune-XNA-Windows.sln (Configuration: Release, Platforms: Mixed Platforms).
  2. Build the Sandcastle project Documentation/Documentation.shfbproj.

The output can be found in _help/.

Media

Terrain Rendering Example

Water Rendering Example

Water Rendering Example

Have a look at our YouTube channel for more videos.

License

The DigitalRune Engine is licensed under the terms and conditions of the 3-clause BSD License. Portions of the code are based on third-party projects which are licensed under their respective licenses. See LICENSE.TXT for more details.

You can’t perform that action at this time.