🎉 Celebrating 25 Years of GameDev.net! 🎉

Not many can claim 25 years on the Internet! Join us in celebrating this milestone. Learn more about our history, and thank you for being a part of our community!

Is DirectX the way to go?

Started by
14 comments, last by Slayer-X 24 years, 7 months ago
Well you really need more information about your game before you can make decisions as to what tools you should use. If you are planning on making a game which requires a 3D engine with all the bells and whistles, then you can narrow you search down to OpenGL and Direct3D. Both have their merits, but it mainly comes down to D3D having better overall drivers for graphics cards, but being much more difficult and cumbersome to program in. If you are planning on making a simplier (graphically speaking) 2D game, then DirectX's DirectDraw is probably the most suitable API for you. And if you are planning to investigate networking possibilities that goes beyond card games, then avoid DirectPlay like the plague.

Microsoft's Visual C++ seems to be the most popular compiler and that is what I use, but I haven't used the competitors so I cannot honestly say it is the best.

Good luck.

Advertisement
Although on a whole I agree with the post above, you must understand a couple things:

If you are programming a game for Windows, you will end up using at least some of DirectX, such as DirectInput for mouse and keyboard input, DirectSound for sound effects, and DirectDraw for standard graphics operations. There is simply too much driver support and too few alternatives to ignore these parts of DirectX.

The decision to make between Direct3D and OpenGL is a widely debated choice, but it really doesn't matter. Try your luck with the easier of the DirectX APIs (DirectInput, DirectSound, DirectDraw) then see if you want to take the plunge or if you want to try something a little more logical and less convoluted, but with the same and/or greater power. *whisper* OpenGL *whisper* You might be able to see which I favor

- Splat

Oh yeah. Microsoft made the DirectX APIs with Visual C++ in mind. Therefore, there is a ton of support built-in. Plus, Visual C++ has very nice features. Use it.

- Splat

Just a quick question, Why avoid DirectPlay?????? I know its not ready yet for massive online games,but everything ive seen otherwise looks like directplay is a good choice. Specialy if you want to support ipx,modem,serial and internet.
Well, I think that if IPX, serial, and modem are important for your game's multiplayer then you have to consider DirectPlay as an option. However, because there are so many variations and different requirements for different network games, DirectPlay has the most clunky and cumbersome interface of all the DirectX APIs (Everyone agree?).

Most games really only need TCP/IP communications, because the Internet is the number 1 option for multiplayer and LANs are number 2. Modem-to-modem action games suck, because one person has no lag and the other has 2x modem lag. IPX is dying, FAST. In fact, aside from the legacy Netware environments, I would hope you would all join me in a chant: DIE IPX DIE!

In any case, DirectPlay's abstraction of multiple mediums is great, but only when you need those other mediums, can't spend the time to write a nicer library, and can live with DirectPlay's many problems.

- Splat

DirectPlay works just fine. After all, it just wraps winsock anyway. As long as all you need to do is send and receive TCP/IP messages it is OK. It also provides various conveniences like when people join the join msg automatically is broadcast to everyone.

------------------
Visit the homepage of my (soon to be 'net multiplayer) Tank Game at http://members.home.net/chris-man

Visit the homepage of my (soon to be 'net multiplayer) Tank Game at http://members.home.net/chris-man

Well, personally I would avoid Direct3d. Sure use DirectInput for i/o of keyboard, mouse, DirectSound for sound and such, and maybe DirectDraw...But imo, OpenGL is much better than Direct3d. Most the major card manufacturers give out their own implementation of OpenGL that is optimized for their hardware, and OpenGL keeps getting better and better. And, on top of that, it is a very portable solution. Unlike DirectX...Windows environments only, and very wierd to start off with..
Edmund Weese7-bit Games
I'm going to make a side scrolling space shooter game kind of like R-Type for my first windows game. It think that because it is 2D directX would be better to use, I don't see how OpenGL would improve it. Maybe I'm wrong, but that's what I'm asking for.
Go with DirectDraw, plain and simple.

Former Microsoft XNA and Xbox MVP | Check out my blog for random ramblings on game development

Thanx for the help. Just one more question, does the DirectX 7 SDK come with instructions on how to use it? lol

This topic is closed to new replies.

Advertisement