Its interesting to see how many different answers i get :-) Some says C++ DX others C# XNA. But when i think about it. XNA may be the one for me. I want your advice on this:
I want to make games like diablo 2, plant vs zombies etc. Is it realy something C++ DX does better on these games than XNA? Or would C++ DX only be better if im making the new battlefield 3. Which ofc is waaaay to hard and impossible for one person. Some also say that there may be an XNA for the new XBOX. And when im done making a game in XNA its easy to port with monogame to be used on android.
OR does C++ DX have benefits on diablo 2 and plant vs zombies that XNA cant handle as good?
But what about C# compared to C++11. Is it easier than previous C++ versions?
Using C++, even C++ 11, you are always going to encounter pointers. Something as fundamental to game development as Locking (or Mapping) a vertex buffer will throw you from the nice safe pointer-less world into an alternate dimension where pointers and the reality of having to deal with them exists. OK, they're not that bad, but they do require you to know about what they are, how they work, how to use them correctly, and what kind of things can go wrong (and how to identify and fix those things) when you don't use them correctly (which will happen).
If you were going to use C++ then I'd strongly advise that you split your learning in two - do C++ first, then do game development.
Looks like you are skilled with programming C++.
Does it take long time to learn those pointers? And when you have learned to program C++. Is it as easy to program and make games with it, as C# XNA?
Is the develope speed slower? and incase how much?
Is learning dx11 c++ alot harder to learn than xna c#?
Cause i see most people here use c++
And are there some benefits without memory managment with c++ and dx that give me an advantage instead of using xna. And as i said. I want to make games as diablo 2 smaller scale and plant vs zombies.
C# for me is a big timesaver and makes you more productiveXNA is far easier to get working on a game, without dealing with much of the lower-level work of initializing devices, managing vertex buffers, etc.
Just because you use C++ doesn't mean that you do have to do lower level work. There are loads of C++ libraries and engines out there that are higher level than XNA.Pick the language you prefer and pick the library you feel most comfortable with. Perhaps only use DirectX or OpenGL (With either C# or C++) if you want to go into the technical stuff.