DigitalRiseModel is MonoGame/FNA library that provides alternative API to XNA's 3D modelling. DigitalRiseModel has following features(that XNA lacks):
- Construct 3D models in code
- Load 3D models from GLTF/GLB in the run-time
- Skeletal animation
- Create 3D primitives(boxes, spheres, toruses, etc) in the run-time
It's important to note that DigitalRiseModel lacks functionality to render models. That is the responsibility of the developer.
However Samples section demonstrates how it could be done. It implements simple rendering engine that is based on XNA stock effects such as BasicEffect and SkinnedEffect.
https://www.nuget.org/packages/DigitalRiseModel.MonoGame
Clone following projects in one folder:
| Link | Description |
|---|---|
| https://github.com/FNA-XNA/FNA | FNA |
| https://github.com/rds1983/XNAssets | Assets management library |
| this repo |
Now add every required project .FNA.Core.csproj to your project
Models are loaded through XNAssets.
Firstly create the AssetManager:
AssetManager assetManager = AssetManager.CreateFileAssetManager(@"c:\MyGame\Models");Now load the model in the GLTF/GLB format:
DrModel model = assetManager.LoadModel(GraphicsDevice, "myModel.gltf")The DrModel API is pretty much similar to XNA Model.
Right now, Samples is the best way to learn how to work with the library.
| Name | Description |
|---|---|
| BasicEngine | Simple rendering engine that implements tree-like scenes and forward rendering, based on XNA stock effects such as BasicEffect and SkinnedEffect |
| ModelViewer | Application to load and view 3D models in all supported formats. Skeletal animation is supported |
| ThirdPerson | Application that demonstrates how simple third person controller could be done |
Open DigitalRiseModel.MonoGame.sln in the IDE and run.
Clone following projects in one folder:
| Link | Description |
|---|---|
| https://github.com/FNA-XNA/FNA | FNA |
| https://github.com/rds1983/XNAssets | Asset management library |
| https://github.com/FontStashSharp/FontStashSharp | Text rendering library(required for samples) |
| https://github.com/rds1983/Myra | UI library(required for samples) |
| this repo |
Open DigitalRiseModel.FNA.Core.sln in the IDE and run.