MonoGame.Extended v0.5 published

A new version of MonoGame.Extended has been published on NuGet. The key features of this release are:

  • Support for MonoGame 3.5
  • Particle System

From now on we’ll be doing frequent small releases. Usually with only one or two features in each release. Hopefully this will be better for everyone. :slightly_smiling:

To install the NuGet package using the package manager console:

Install-Package MonoGame.Extended

Then update your Content.mgcb file as described in the install guide.

Looked a bit at the particle system. Seems to be implemented very cleanly, i should probably adopt the style :slight_smile:

I am also curious about the implementation of your fastrandom, I will try out performance benefits vs Random().Next, but I feel like they are huge.

@kosmonautgames Yeah, the particle code is very nice.

I can’t really take the credit for it though. We got permission off Matt to include his brilliant Mercury Particle Engine into the library. We refactored it a little bit to fit MonoGame and wrote a renderer. Other than that, it’s pretty much identical.

Turns out fastrand is 100x faster than the normal Random, given I initialize both beforehand and change the seed after every call.

Not only that, but when i tested both a million times against each other I calculated the average delta from 0.5 (which should be the expected value) and fastrand’s delta was 2 magnitudes smaller. Wow. Am using that.

I’ve raised an issue to consider making this a core part of the library.

Note that there’s an open pull request in MonoGame for a better Random implementation here. It hasn’t been updated in a while though.