3d model viewer for Monogame [ver 0.6]

I have tried the latest version to load the fish, the log says it could not find the dll:

H:/________MonoGame/Monogame Modelviewer5/Content/mgcb/MGSkinnedAnimationAux.dll

Maybe a problem with relative names in the references ?
The file is indeed in the folder as i’ve not touched any file.

I have also tried with buddha, which I had to convert to the new fbx format as MG Pipeline tool said it was a too old format to build it.

H:/________MonoGame/Monogame Modelviewer5/buddhaConverted.fbx
H:/________MonoGame/Monogame Modelviewer5/buddhaConverted.fbx: error: Failed to create processor 'AnimationProcessor’Build 0 succeeded, 1 failed.Time elapsed 00:00:04.19.

Even with a simple plane.fbx it fails, with the same error about the creation of ‘AnimationProcessor’.

just to confirm my suspicion can you start the model viewer from c:/ ?

EDIT: Nvm, i’ve tried myself and it works from any directory on my system.

3rd party tool to baked or capture and baked under ur application?

amd cubemapgen

Why are you asking

o… coz im looking for method to do impotant sampling in on captured cubemap.

From c:, at the root:

mgcb finished with exit code = 1: Std output:
Build started 01/02/2017 17:17:03Failed to load assembly ‘C:/Monogame Modelviewer5/Content/mgcb/MGSkinnedAnimationAux.dll’: Impossible de charger le fichier ou l’assembly ‘file:///C:\Monogame Modelviewer5\Content\mgcb\MGSkinnedAnimationAux.dll’ ou une de ses d‚pendances. L’op‚ration n’est pas prise en charge. (Exception de HRESULT : 0x80131515)Failed to load assembly ‘C:/Monogame Modelviewer5/Content/mgcb/MGSkinnedAnimationPipeline.dll’: Impossible de charger le fichier ou l’assembly ‘file:///C:\Monogame Modelviewer5\Content\mgcb\MGSkinnedAnimationPipeline.dll’ ou une de ses d‚pendances. L’op‚ration n’est pas prise en charge. (Exception de HRESULT : 0x80131515)C:/Monogame Modelviewer5/fish.fbxC:/Monogame Modelviewer5/fish.fbx: error: Failed to create processor 'AnimationProcessor’Build 0 succeeded, 1 failed.Time elapsed 00:00:00.69.

EDIT: Maybe a clue, I only have .NET 4.0, 4.5.1, 4.6,4.6.1. Not 4.5.0. Should’nt it work with the 4.5.1 or above ?
Windows7 x64 / VS 2K13.

ok i have updated it, hope if works now! (ver. 0.41)

The tool i use is really bad for my workflow though, it works with specular etc instead of roughness and I don’t like converting the data.
But I think there are lots of others that can do that for you, have you tried?

New update is out, find it in the first post.

Features: UI now has a scrollbar. I added a very rough and expensive HBAO algorithm to the mix.

The result is simply subtracted from the image. You can change the values in the AO tab.

Further work will go into

  • rendering the AO on a seperate target,
    upsampling and bluring the ao,
    improving performance,
    calculating Specular Occlusion.

The implementation right now is very very heavy in terms of performance if acceptable visuals are required.

Ambient Occlusion is useful because it helps define the structure of an model, I think the sentinel below is a good example

1 Like

We should all just make our own open source custom modeling application and model format :slight_smile:

How many of you have had this idea pass between your ears besides me?

SERIOUSLY I AM NOT KIDDING.
For just one person with enough time its doable.Heck i did it as a kid as a experiment in a software polygon rasterizer i wrote to simulate dx from begining to end i even had tesselation in it and that was 15 years ago or more.

For everyone contributing together it would be easy.

Plus we could make a standardized STRICT format. that doesn’t constantly break every update. As all these different modeling programs have no interest in keeping a working exporter to a standard format that is not proprietary.

It is never easy, especially with something as complex as a 3D modeller. Making a strict format means writing exporters for common modellers such as Blender, Max and Maya will be more difficult because of the differences in those platforms.

4 Likes

Oh lord. I will write my own renderer, my own GUI, my own engine and I will even write my own physics sometimes. I might even write my own game.

But I do know that each of these things willl never ever reach professional work done by a big team. I think an editor for monogame (a level editor for example) is doable, everything above is a waste of time.

Even this model viewer, it has really limited functionality and it already breaks for some users, for some desktop configurations and for some models

The thing is - writing shaders and physics and math functions is fun because it is challenging. Writing tools is mostly tedious work where millions of use cases have to be considered, you have to adhere to thousands of standards and all the interesting problems usually have a standardized solution already.

1 Like

I’ve changed the AO sampling to use a nearest neighbor / point filter which increases performance a lot, but brings an old nemesis of mine, wrong samplerstates. Can someone help me with samplerstates and how they affect each other?

I’ve just tested the latest version and still the same kind of error:
mgcb finished with exit code = 1: Std output:
Build started 02/02/2017 09:17:45Failed to load assembly ‘H:/________MonoGame/Monogame Modelviewer7/MGSkinnedAnimationAux.dll’: Impossible de charger le fichier ou l’assembly ‘file:///H:________MonoGame\Monogame Modelviewer7\MGSkinnedAnimationAux.dll’ ou une de ses d‚pendances. L’op‚ration n’est pas prise en charge. (Exception de HRESULT : 0x80131515)Failed to load assembly ‘H:/________MonoGame/Monogame Modelviewer7/MGSkinnedAnimationPipeline.dll’: Impossible de charger le fichier ou l’assembly ‘file:///H:________MonoGame\Monogame Modelviewer7\MGSkinnedAnimationPipeline.dll’ ou une de ses d‚pendances. L’op‚ration n’est pas prise en charge. (Exception de HRESULT : 0x80131515)H:/________MonoGame/Monogame Modelviewer7/fish.fbxH:/________MonoGame/Monogame Modelviewer7/fish.fbx: error: Failed to create processor 'AnimationProcessor’Build 0 succeeded, 1 failed.Time elapsed 00:00:00.70.

er7/fish.fbx: error: Failed to create processor 'AnimationProcessor’Build 0 succeeded, 1 failed.Time elapsed 00:00:00.71.

From the root of C: too.
Is MGSkinnedAnimationAux.dll your custom processor ?

Ok then let me throw this idea out instead.

We should write a MonoGame modeling app.

That outputs its data to a existing format that is either open, non proprietary or simply a newer one, a heavily documented one, or pick one that seems to be the most stable.

I mean if you can load a fbx or any other format saving it again is trivial if you edit and then resave that data you essentially are modeling it. If you click a button to edit that data move it around visually ect… you have what all modeling apps are just like blender or any of the others. Basically a viewer is the first step to a modelling app anyways.

What better api to use to build a modeling app, then the same one that will use the models for games based on it.

If nothing else maybe its a idea for the future as a modeller attracts lots of people including artists. So this is also idea that benifits the status of monogame itself and would make it more visible.

Yes it is.
I know from others that it works for them and I don’t understand why it doesn’t for you. The path is right, right? The file is there? Could it be deleted by anti virus? Does the program run in admin mode?

Maybe it has to do with the dll itself, if you want I can send you the source code and you can see if it builds for you or what the exact error is

I’ll give it a try on my other computer when home.

I’ve tried:
Reboot my computer (as it often solves problems ^^)
root of C:
another drive.
adminitrator or not

Nothing makes it work :confused:
May it be related to the version of installed MG ? 3.6.0.1425 on this computer.

Last resort would be to build it.

App has no permission to load assemblies dynamically because you downloaded the file from the internet and somehow the OS blocked it.

http://www.chilkatforum.com/questions/8260/could-not-load-assembly-operation-not-supported-exception-from-hresult-0x80131515

1 Like

In that case, we can skip one step and write an XNB directly!

One thought about a file format is instead of saving the current state of the document, you deserialize the Command queue (do/undo).
Then when you load you serialize it and re-execute the commands.

Pros:
Can work with any type of editor. Stage editor, Modeling, music composition, etc.
You can deserialize to any format. XML, JSon, or your custom text/binary.
Undo for the entire lifespan of the document.
Merging editings from multiple users.
Integration with versioning systems.

Cons:
I don’t really know what to do with linked files. A filewatcher is needed to restore moved/renamed/changed files.
File might get big over time. It’s possible to compact the file at any point. The new changes can be reapplied to the original.

Thanks ! I forgot about that security :confused:

1 Like