Thursday, September 01, 2005

Managed DirectX: A new beginning

Well, it's been a long time since I last posted. (Not that anyone was really coming here including myself)

But I've decided this is the ideal place to begin journaling my current project. I am currently working on building a 2D game using Managed DirectX and VB.NET. My goal was to learn to use Managed DirectX while learning how to drop the now deprecated DirectDraw.

My previous experience with DirectX has been slight. I've written a Tetris clone which I almost completed (it didn't change level and had no splash screen or menu, but it was playable, kept score, had music and sound effects and even flashed when you got a Tetris), which was done using VB and DirectX 8. But that game used only DirectDraw.

I did a few more using VB and DirectDraw as well, I had a starfighter game I made for my son. It kept score, a scrolling background and multiple enemies and shots on the screen at one time, collision detection and music. I purposefully made that game so the star fighter couldn't die (the ultimate hero!) so that I didn't have to keep restarting it for my son an he could play for eternity. (He still enjoys playing it).

I've also done some simpler games using the BitBlt API and I have a swath of those in various stages of completion.

But this! This is my first project that I'm going to take all the way. End goal is to have a fully compiled game with all the works. I haven't decided on everything I want it to do yet (I'm obviously going to keep it simple since I"m just starting out with Managed DirectX), but as I learn more of what I can do with DirectX (again WITHOUT using DirectDraw), the shape and form of my 2D Managed DirectX game will being to take shape.

My plan is to not so much publish how my game looks and how it plays but more to chronicle the DirectX hurdles I come across and what I did to solve them. I'm hoping to accomplish a few things with that.

1. To repay the favor to the many other DirectX coders that have helped me out in numerous ways by posting their code samples and answering my questions. Especially one I met in the MSDN Forums who helped kick start this project with an answer to my question

2. To take the sound advice of someone I met at the Portland Code camp who said if you are starting a project, make sure you journal it. You'll thank me later for doing that. Just make sure you record what you're doing.

3. To learn how to work with Managed DirectX to program a 2D game WITHOUT DirectDraw. DirectDraw has been deprecated (i.e. meaning it's no going to be supported much longer) so I want to learn how to develop games without it. Unfortunately there's not a lot of code examples out there for the 2D coder that don't use DirectDraw so I'm kind of blazing some new ground here for the 2D game developer.

3. To provide a log for what I hope is going to be a fun and interesting project.


So this is it. The grand project kick off. Let's see how it goes.

0 Comments:

Post a Comment

<< Home