It is not very clear to me how one approaches custom content pipelines in Monogame. Right now I am using a (what feels like) ass backward way with XNA and duplicate class libraries that I explain in this blog post and that I pieced together from some different tutorials I stumbled upon.
The short version of what I do is
Create a XNA 4.0 project and add a content pipeline extension library
Add a class library project where I add the custom class I want to run through the content pipeline
Create the custom pipeline and typewriter
Create a monogame project
Add a class library project with a identical name as the class library in the XNA content project
Copy over the type reader and custom classes
Copy over the compiled objects into monogame content folder
Can anyone point me to some clear tutorial that explains how one can achieve the same thing without the duplicate class libraries and hopefully without any need of XNA at all?
As you found… it is basically the same as XNA.
If you are using XNA to build custom content types to run under MonoGame you have no choice but to have duplicate class libraries.
That said you don’t have to “copy over” any classes. You can reference the same source code from both the XNA and MonoGame versions of the library. See http://stackoverflow.com/a/3382768.
The new MonoGame content pipeline is getting really close to being complete. It may be good enough for your needs… you just have to test it and see. You can read about it in the docs…
This pipeline has no dependencies on XNA at all. This means no duplicate library is needed as the pipeline and the runtime can reference the same assembly.
Thanks for the reply.
So one can do “add as link” after all, that sounds great!. When I tried to add the item as link at first I got some kind of conflict with Vector3 being referenced twice, but very likely I did something funky. I will give it a go again and also have a look at the monogame content pipeline.