DirectX with or without Metro, or OpenGL

Started by
3 comments, last by viper110110 11 years, 7 months ago
I have been programming with c# and xna for quite a while now, and it is starting to look like XNA is dying with the release of windows 8 and windows phone 8. I am starting a new hobby project, which I would probably some day hope to release for profit. I would ideally like to use c# and XNA, but that is no longer supported on windows 8 (which I am using now). I figured this would be a good time to switch to Directx. Once I got visual studio 2012 set up, I got the new directx samples to try to learn from, just to find out they are all metro apps. I don't like that.

My options now are either to bend over and accept that metro is the future and start developing my game and level editor for metro, or use the older samples to develop a normal windows application (probably backwards compatible with 7?), or I could drop the whole directx thing and learn directx.

Keep in mind that this is primarily a learning project and I would like to learn something that will be useful in the future (I am pursuing a career in game development). As a result I would like something that has lots of good tutorials and is as close as we can get to "future-proof".
Advertisement
I've only messed with it briefly, but C++/CX seems to be a pretty good path from C#/XNA to C++/DX. However, the only tutorials I've found so far are those on MSDN. There's not a whole lot out there yet as CX is a pretty new concept in the Windows world. If you want to host your game on Windows Marketplace, you're going to have to develop a metro-style app, so while 8 will support Win32, you won't be able to use Marketplace to sell your game (there are other avenues, of course).
What is CX? Google returns nothing that looks like programming to me.

I might want to use the windows marketplace eventually, but for my level editor I definitely don't want to (and I'm starting with the level editor). Are there any good tutorials for getting started with directx? I need help getting to the point where I can set up the window in a nice and flexible way, display 3d meshes, and store these meshes in nice objects. Basically everything sample 7 at http://code.msdn.microsoft.com/windowsdesktop/Direct3D-Tutorial-Win32-829979ef can do, except with more modular code that I could expand into a game.
What is CX?[/quote]

You can find the reference to Component eXtensions (CX) here.

Are there any good tutorials for getting started with directx? I need help getting to the point where I can set up the window in a nice and flexible way, display 3d meshes, and store these meshes in nice objects. Basically everything sample 7 at http://code.msdn.mic...-Win32-829979ef can do, except with more modular code that I could expand into a game.[/quote]

There's a tutorial for C++/CX/DX11.1 here that will help you get a window up and running on WIndows 8. You can also look at this tutorial from Rastertek for Win32/DX11 which builds a pretty good basic jump-off point.

In terms of modular code, you're most likely going to handle that yourself if you're starting from scratch. There are engines out there that can abstract a lot of that work for you if you want to just get into game logic quickly. None of them handle Windows 8 yet AFAIK though, so beware of that...
Thanks, I think I'm going to go with a plain old c++/directx program (at least to start). Those tutorials at Rastertek are exactly what I was looking for in terms of modularity. They perfectly cover how to separate the key directx stuff into different classes, which is whats missing in Microsoft's samples between "spinning cube in main.cpp" and "advanced motion blur"

This topic is closed to new replies.

Advertisement