Hello everyone,
I'm an experienced AS3 programmer (one of the main guys at FlashPunk), and have also worked quite a bit with C#, Python, Ruby, the web languages, etc.
I'm undecided between choosing the .NET version of SFML or the C++ one, and I was wondering if you guys could help me a bit.
The pros of using the C++ version would be that most of the libraries for SFML are only available in C++. Also, it's faster. But I have never used C++, and I would have to learn the language first. (and the C++11 techniques).
The pros of using the C# version is I already know the language, and I love the additional features it has to offer compared to C++. The disadvantage would be less speed and much less library support. I would have to port the libraries (or make bindings, but I've got no idea about that).
My questions are: is SFML.Net as portable as SFML C++? With that I mean, can I use the C# version to make Mac and Linux versions of my game that would run well? Is Mono fast and good? Could I also use the SFML.net mobile version once finished with my C# code?
Would I be able to easily integrate the Steam API into a C# game? I know the official Steam API is only C++, but I've seen a paid library that brings C# to the API and it's very easy and fun.
What problems would I run into using the C# version instead of the C++ version?
Also, as an aside question... does Java really work for games? I've heard about the cool libgdx library... but I've always seen Java apps perform poorly, and they all have some sort of Java feeling.