xna dead?
#1 Members - Reputation: 182
Posted 25 January 2013 - 01:02 AM
I am currently programming in XNA but lately im worried that XNA will die. Ive heard that MS no longer will continue making new versions of it.
I am therefor wondering if i should start to develope in DX. Is that a better framework for the future, or do you guys have other tips? My goal is to make games like mario, diablo 2 type rpg and games like plant vs zombies, temple run and angrybirds for phones in the future.
Ill start with 2d progress to isometric and maybe later 3d.
What are your guys advice in terms of framework?
Best regards
Thomas
#2 Moderator* - Reputation: 5411
Posted 25 January 2013 - 01:08 AM
I am currently programming in XNA but lately im worried that XNA will die. Ive heard that MS no longer will continue making new versions of it.
We've had a few threads covering that.
As for whether or not you should learn D3D: that's entirely up to you. Frameworks and libraries don't stay around forever, ya know. You're always learning a dying library/framework/language/whatever. However, the things you learn often translate from one library/framework/language to another, so learning XNA isn't a complete waste of time by any means.
#3 Members - Reputation: 365
Posted 25 January 2013 - 02:37 AM
I broadly agree with Cornstalks' comment, but I feel it's worth noting that XNA is built on DirectX 9, and things in the 'native' world have moved on a bit since then, to DirectX 11. It used to be that case that after learning the XNA graphics API you'd look at DirectX 9 graphics API and think "oh yeah, this must be what's happening under the hood when I use XNA," and it all seems quite familiar. That's not so much the case with DirectX 11.
That's not to say XNA won't teach you anything transferable - all the vector maths, mesh structures, texture sampling etc. is common theory regardless of the API you're facing, and of course there's much more to making a game than graphics programming. All I'm saying is that it's somewhat less transferable than it used to be in that specific area.
Find me on Twitter @BarrySkellern (I am awful on Twitter)
#4 Members - Reputation: 182
Posted 25 January 2013 - 03:17 AM
Is it alot harder to learn C++ dx11 than xna and c#?
#5 Crossbones+ - Reputation: 1178
Posted 25 January 2013 - 03:19 AM
If you learn XNA4.0 switching to DX11 afterwards is easier although not the same you are going to have to learn how things are different mostly to do with the context and device split in DX11 which XNA doesn't do.
Using C++ and DX11 isn't harder then using C# and XNA once you know the technologies involved, it is less productive to use DX11 and C++ as you will have to write a lot more boilerplate code than you have to in XNA. If you need to learn C++ as well I'd say stick to C# and use slimDX(or similar wrapper) instead which allows you to use DX11 in C#.
Edited by NightCreature83, 25 January 2013 - 03:58 AM.
#6 Members - Reputation: 110
Posted 25 January 2013 - 04:10 AM
Hello.
I am currently programming in XNA but lately im worried that XNA will die. Ive heard that MS no longer will continue making new versions of it.
I am therefor wondering if i should start to develope in DX. Is that a better framework for the future, or do you guys have other tips? My goal is to make games like mario, diablo 2 type rpg and games like plant vs zombies, temple run and angrybirds for phones in the future.
Ill start with 2d progress to isometric and maybe later 3d.
What are your guys advice in terms of framework?
Best regards
Thomas
Well, if you do wish to contenue using XNA, you might consider Mono Game. Mono Game is an open source implementation of XNA 4. It's been pretty easy to migrate XNA projects to MG too.
#8 Members - Reputation: 382
Posted 25 January 2013 - 04:27 AM
games like plant vs zombies, temple run and angrybirds for phones in the future.
If you aim to develop for phones, then unfortunately C++ and DirectX is not an ideal choice since you will only ever be able to target the windows phone and you can only use native languages on it if you have a pretty expensive license agreement (and probably a dev kit).
With an Objective-C or Java shim, it is very easy to program in OpenGL and C++ on iOS and Android (but not Windows Phone) if you want to go the native route.
Otherwise I think the only solution (other than things like Unity) is MonoTouch and MonoGame which I think can work on iOS, Android and Windows Phone.
... But not Blackberry ;)
Edited by Karsten_, 25 January 2013 - 04:33 AM.
#10 Members - Reputation: 382
Posted 25 January 2013 - 05:39 AM
If you didnt already know, Mono is an implementation of Microsoft .NET (allowing you to use C#).
MonoGame is simply an implementation of Microsoft XNA (Comes as a .DLL). So provides the Game class, the Effect class etc...
So if you want to develop XNA on a mobile, you will need both MonoTouch and MonoGame. They have similar names but they are both very different bits of software.
Note: MonoGame doesn't use DirectX underneath unlike the Microsoft version, instead it uses OpenGL. To do this it uses OpenTK as a binding layer. If you would prefer to use OpenTK directly, this will also work on Android, iOS but unfortunately not the Windows Phone (Where you would need to use Microsoft's implementation of XNA rather than MonoGame anyway).
#13 Members - Reputation: 247
Posted 25 January 2013 - 09:01 AM
I see so many of these XNA Dead threads, and really, I feel that even if there is no support for XNA anymore, there is still such a huge advantage to making a project with XNA if only for the fact, that you are learning so much in the way of game programming, that the experience is well worth it.
I started using XNA a few years ago, and that led me to learn C# (since I was only C++ before that) and since learning C#, I now have a Java class, and I feel really comfortable with the managed sort of langauges. Also, my XNA classes and functions I have ported to C++/OpenGL, so though I dont use XNA anymore, there is nothing that I have lost in using it, but only gained.
So in conclusion, it really doesnt matter if XNA is dead or not, just program, and learn, and have fun.
#14 Members - Reputation: 2763
Posted 25 January 2013 - 01:51 PM
Time spent with XNA now and even for some years into the future isn't wasted. You'll learn a good deal about programming in general, how to organize larger and larger projects, and all the math you need to make a game. All of that stuff transfers 95% to any other 'curly brace' language -- C++, C, Obj-C, Java, etc.
If you're really concerned about long-term platform support, then I'd be more wary of XNA. If you look at what Microsoft is pushing now, its all native code, not C# or XNA. WinPhone8 supports native apps, WinRT (Surface on ARM) supports native apps, Win8 (of course) supports native apps. They'll run managed (and even XNA) apps too, but Microsoft's focus right now is on native code.
C++ is still a difficult language to cut your teeth on, but C++11 makes it a lot nicer than it used to be. That said, compiler support from Microsoft is only partial now, and it'll probably be another year before the support level is good, and furthermore, it'll probably be another year before most of the "must-have" C++ textbooks have been updated to reflect C++11.
I'd say that your best bet now, if you're already comfortable and productive with C# and XNA (use 4.0), is to continue with those for another 9-12 months, and wait for the next version of Visual C++, and for the books to catch up to the standard. I believe you'll find that to be the best use of your learning time. You shouldn't worry about trying to learn the latest, greatest thing so much, because those things (whether they're APIs, languages, or general practices) tend to come and go. The things that last will come up no matter what tools you're using -- sure, the exact details of those things change over time, but the general "shape" of them stays the same.
#16 Moderator* - Reputation: 5411
Posted 26 January 2013 - 01:23 PM
Just to clarify, development on XNA itself has stopped, but development with XNA is still active. It still has a good community built up around it and many people are actively developing games using XNA. This community will continue to exist for at least a few more years.XNA is not dead, I still currently use it and it'll be in development for more years [...]
Edited by Cornstalks, 26 January 2013 - 07:58 PM.
#18 Members - Reputation: 173
Posted 26 January 2013 - 07:47 PM
I had something similar happen to me. I spent more than half a year learning Directx9 with the fixed function pipeline, blissfully unaware of how deprecated it actually was, and I wasted my time trying to memorize the graphic syntax. However, it wasn't entirely wasted. I learned a lot about how a graphics pipeline works and how games are made :3 I had a much easier time learning directx11 then I did the first time.
Edited by Solid_Spy, 26 January 2013 - 07:53 PM.
#19 Members - Reputation: 154
Posted 15 February 2013 - 03:42 PM
My thoughts on the subject: http://amapplease.blogspot.com/2013/02/the-fate-of-xna-now-what.html
#20 Members - Reputation: 344
Posted 16 February 2013 - 06:09 AM
The only thing not worth doing is asking if it's worth using still.
It's not dead yet, doesn't seem like it will be in the near future and would be plenty useful for a long time even if it did stop getting updates.
If you want to learn it, go learn it.






