🎉 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
I am not planning on making multiplayer games anytime soon, but I am planning on making one some day. If you say you should avoid DirectPlay, what other options would you recommend?
Advertisement
2 part post:

Slayer-X: The DirectX 7 (and 6 and 5 for that matter) documentation is, with a few notable exceptions, practically the best documentation I have every seen. You can (as I did) learn 95% of DirectX just from the documentation.

jtecin: DirectPlay tries to isolate you from the actual transport provider you want to use. It works the same for Internet, modem, serial, etc. As an alternative, you take DirectPlay's role and communicate with each provider individually. For example, if you want TCP/IP (Internet) communications, you deal directly with WinSock as an alternative. The other mediums (modem, serial, IPX) all have a more direct method of accessing the relevant hardware.

- Splat

...my 2 cents.

Graphics:
OpenGL -- multiplatform, elegant, easy to use. If you think you might someday port to another platform like Linux, Macintosh, etc then go OpenGL.

Sound:
DirectSound -- It is finally coming of age with DirectX7. Wrap it so you don't have future porting problems.

Input:
DirectInput -- open ended flexible. Much more reliable than the windows message queue. Wrap it so you don't have future porting problems.

Networking:
Use Winsock TCP/IP or TCP/UDP depending on your needs. DirectPlay is not your friend ask any game company that's used it, 99% of all commercial multiplayer games use TCP/IP. With the proliferation of the Internet there is little need for modem-to-modem and serial support anymore, they are a thing of the past. IPX can be argued, but you can do that with Winsock too.

Rick Overman
Senior Engineer, Tribes2
Dynamix, Inc.
Tribes Website

I was just wondering, what exactly is wrapping? I havn't ever seen anyone talk about that so I have no idea. How would this be done? Thanx.
I'm going to start programming games for Windows and was wondering if DirectX would be the best way to make windows games. I already know how to make the games, I just need to know what would be good to use to make them.

Thanx
Slayer-X

What wrapping means is to write code (usually a class) that encapsulates the functionality you want. In the case of DirectDraw for example you could write a class that initializes DirectDraw, sets the screen resolution, and creates all your necessary surfaces with one function call. You would create your own functions that call the DirectDraw functions (a Load function that loads a bitmap onto a DirectDraw surface for example). This allows you to write code once that makes it easier to use DirectDraw and that can be reused in future games.

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

This topic is closed to new replies.

Advertisement