Mercury Particle Engine

Topics: Android, Third-Party Libraries
Nov 13, 2012 at 9:14 AM

Hi all,


Anybody tried to port this great XNA library to Android (



Nov 13, 2012 at 11:37 AM

I tried to port it to Windows 8 and I have it compiling, but I've not tried with android yet.


Nov 13, 2012 at 11:43 AM

Did you port the 3.1 sources or the newer ones because it looks like a lot has changed and I can't compile. The Trigger function accepted Vector2 as a parameter and now it needs Vector3.

Nov 13, 2012 at 3:18 PM

Thank you for pointing out this engine! I will try to start porting it this weekend.

Nov 13, 2012 at 4:21 PM
Let me know how it goes coz i'm interested in the port!!
Nov 13, 2012 at 5:58 PM

I am currently getting the following error when I try to port the ProjectMercury.ContentPipeline project.

"The type or namespace name 'Pipeline' does not exist in the namespace 'Microsoft.Xna.Framework.Content' (are you missing an assembly reference?)"

basically this "using Microsoft.Xna.Framework.Content.Pipeline.Serialization.Intermediate;" doesn't work. 


Hey dellis1972, how were you able to weather the ContentPipeline issue? Did you create a Monogame ContentBulder project or was is Monogame Content Project for All Platforms?


The above needs to be resolved because of this error when trying to load an effect xml:

"There was an error while deserializing intermediate XML. Cannot find type "ProjectMercury.ParticleEffect"."

This happens when I use BasicExplosion.xml as AndroidAsset. 


Any Ideas?

Nov 13, 2012 at 8:35 PM

The Mercury engine is split into two parts, the runtime and the designtime. Basically the design time side of things handles links in with the content pipeline of XNA and I think there are form designer support for the Editor. The runtime part is pure XNA.

the issue is that they both use the same code base, under XNA that is ok, but on monogame that doesn't work because we don't have a content pipeline yet, we can read but not generate. When I was porting this stuff to windows 8 I had to #if allot of the design/build time stuff out so it would compile. The idea being that you still use XNA to build the effects etc and use the MonoGame port of the engine to consume that information.

I'll see if I can post up my progress when I get a moment, hopefully we can get the changes merged back into the main project so everyone can use it :)


Nov 14, 2012 at 5:12 AM

Cool! So far I was only able to create a basic effect in code and it works great. I'm looking forward to see how this will progress.

Nov 15, 2012 at 11:24 PM

Guys Andrea on twitter just pointed this out - . Has anyone spoken to him to avoid duplicated effort?

Nov 24, 2012 at 7:00 PM


I was able to get the 'core' working with MonoGame.  Is there another branch somewhere?  If not, I'll figure out how to use Mercurial and provide a Pull Request.



Nov 24, 2012 at 9:06 PM


I to have the core working in Windows 8. My code is up on github  (  ) feel free to fork it and submit a PR to that repo, once we have it all working we can submit the whole lot back to Mercurial (somehow because I don't use that either)


Nov 27, 2012 at 12:28 AM

I ported it awhile back but had to remove the effect loading portion to get it to work.  Currently I set up my effects in code which is a bit tedius since some of the xml objects are not obvious matchings to the classes in the engine.  It would be good if someone had the full library working.