xna dead?

Started by
18 comments, last by Satharis 11 years, 2 months ago
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

//Thomas Wiborg

Advertisement

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.

[size=2][ I was ninja'd 71 times before I stopped counting a long time ago ] [ f.k.a. MikeTacular ] [ My Blog ] [ SWFer: Gaplessly looped MP3s in your Flash games ]

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.

Visit http://www.mugsgames.com

Stroids, a retro style mini-game for Windows PC. http://barryskellern.itch.io/stroids

Mugs Games on Twitter: [twitter]MugsGames[/twitter] and Facebook: www.facebook.com/mugsgames

Me on Twitter [twitter]BarrySkellern[/twitter]

But I realy dont want to start to use alot of time working on XNA if I know I could start learn dx11 and have alot more use of it in the future. What do you think about that? Is dx11 easy to use when im want to make 2d games and isometric like diablo 2 and plant vs zombies?

Is it alot harder to learn C++ dx11 than xna and c#?

//Thomas Wiborg

Actually XNA 4.0 changed all of that and it's model is far closer to DX11 then it is to DX9 even though in the back end you are still running a DX9 application. The renderstates are now non-mutable instances, setting of vertex buffers on the device has changed to look more like the DX11 way. The draw calls on the device are modelled after the DX11 draw calls, setting up of index and vertex buffers is also similar to DX11 although not modeled on generic buffers sadly.

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#.

Worked on titles: CMR:DiRT2, DiRT 3, DiRT: Showdown, GRID 2, theHunter, theHunter: Primal, Mad Max, Watch Dogs: Legion

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.

Hmmm aint easy to know what to do :-) Hows the future for slim and sharp dx. Mono game?
And will XNA for sure die or is it not known yet?
I consider to learn C++ DX cause it looks like its the one that will stay alive in the future.

//Thomas Wiborg

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 ;)
http://tinyurl.com/shewonyay - Thanks so much for those who voted on my GF's Competition Cosplay Entry for Cosplayzine. She won! I owe you all beers :)

Mutiny - Open-source C++ Unity re-implementation.
Defile of Eden 2 - FreeBSD and OpenBSD binaries of our latest game.
What is the difference between MonoTouch and MonoGame? Does it looks like they will stay around for a while, or are they dying like XNA?
Its good that they support a range variety of OS :-)

//Thomas Wiborg

MonoTouch is an implementation of Mono that runs on Android and iOS. It is closed source and commercial (But will most likely become open-source in the future).

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).
http://tinyurl.com/shewonyay - Thanks so much for those who voted on my GF's Competition Cosplay Entry for Cosplayzine. She won! I owe you all beers :)

Mutiny - Open-source C++ Unity re-implementation.
Defile of Eden 2 - FreeBSD and OpenBSD binaries of our latest game.

This topic is closed to new replies.

Advertisement