Monogame Model & Animation Viewer

A short video as an overview:

You can find the source code on github:
https://github.com/UncleThomy/Modelviewer

A direct download of the binaries here:
https://drive.google.com/open?id=0B5WzekweeryvUFp4NExETGtxQm8

And a discussion link here:
http://community.monogame.net/t/3d-model-viewer-for-monogame-ver-0-6/8696

What does it do?

  • You can import a variety of .obj and .fbx files and see if they were exported correctly basically.
  • You can try out different materials and settings in a PBR environment
  • You can see if the animations were correctly exported (.fbx only)
  • HBAO and Parallax Occlusion Mapping along with preconvoluted environment maps should help to give the objects a realistic feel
  • Use heightmaps as bump maps
  • You can use the included animation import libraries for your games to set up 3d skinned animation in your game.

Why did I do it?

  • learn about skinning (on the GPU) and animation setup
  • learn about Image Based Lighting
  • implement Parallax Occlusion Mapping
  • build a solid GUI
  • create / use tools to import new resources to a running program, handled in a different thread

In my previous (unfinished) game proper skinned animations were never really implemented and I have never dealt with skinning before. An artist i work with inquired about the possibilities of animations and I put up this viewer to verify his work exported correctly.
I’ve also learned a bunch of new stuff (see list above) and created a basic, solid Graphical User Interface I could use in future projects.

The GUI is a good fit for a playground/debug user interface, since I can directly link fields/properties/methods of any instances to the interface elements. This might not be optimal for a giant UI in a game, but is just what I need for fast prototyping. Along with being easy to build and use it is not resource intensive and does not produce any garbage, a flaw i have found with other solutions.

I think the source can be useful if you want to learn a bit about animation and/or rendering basics in monogame.
The renderer uses simple forward shading; it has a simple depth pre-pass that’s only used for ambient occlusion.

Even though of all the things created lately this is by far the largest and most polished I think I’ll leave it at that. The techniques themselves are well explained in other tutorials (and the links below).

I hope some of you find this tool useful :)

Resources used

Advertisements

One thought on “Monogame Model & Animation Viewer

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s