I’m an average programmer (you can tell a hobby) and I never developed games. But I dream to develop my own indie game and develop it under consoles (I like PS4). I can take Unity, it’s C# too, I like it, but also I’m curious about game developing. So I took MonoGame and almost a week after work I did lessons. But later I found that MonoGame has no physically engine out-of-the-box. Also I found that I can’t add a fonts in PipeLine. I’m an average programmer, so I have no skills to do a wrapper for Box2D or something else to help you (and me by that).
Monogame has many engines you can use, like Cocs2DXNA, Xamarin’s CocosSharp, and FlatRedBall.
In addition to those engines there’s the MonoGame.Extended project.
You don’t need to wrap Box2D. There’s the Farseer Physics Engine that has already done most of the hard work for you.
Unity is certainly a popular option if you want an out of the box solution. Many programmers prefer to put in a little work to cobble together their own engines from different 3rd party libraries. I’m one of those guys, but it’s not for everyone.
You’ve just gotta go with what works best for you. It’s never going to be perfect.
I saw Farseer. But it’s old: 2014-04-29 last published on nuget. It’s not developing anymore?
Its actually older than that, last full update was Aug 2013, BUT, there’s nothing particularly wrong with it, I’m working with it for my current project and everything is fine so far.
I don’t know if anyone knows what’s up with Farseer outside of the people who were working on it, so I doubt we’re going to find out.
There was another project to port Box2D to c# called Box2DX, but the only links I’ve found for that are even older than Farseer. (around 2010)
If you’re after a 2d physics engine for c#, Farseer is about the best available, that is until something else comes along.
It’s cross-platform too? I don’t found any info about it.
Iv managed to port farseer to monogames relatively easy, but I use an even older version before they started basing it off box2d
Just because something is old doesn’t make it obsolete.
Just because something is new doesn’t make it complete.
The actual source code download for farseer has several ready-made projects that you can link into your own. One is specific for Monogame, one is for XNA, one is for XBox 360 as well as one that has copies of all the stuff it needs from XNA to make it usable on almost any platform you can compile c# into. Although I have seen some threads here discussing some issues with certain mobile platforms.
Farseer has only 2 major drawbacks:
- No more updates, whoever was working the project has (for all intents and purposes) abandoned it.
- Lack of documentation. But this is quite easily solved by simply playing with the engine and seeing how things works. Plus the samples project it comes with demonstrates many (but not all sadly) of the features.
I’ll mention one minor drawback in that it is not threaded. While you certainly can run the physics on a separate thread it will only use that one thread while a lot of 3D engines these days are supporting full multi-threading. I don’t think this is an issue for most mobile platforms (for now) but for PC it is a bit of a hindrance.
It not being compatible does make it obsolete.