Advice: Build-Your-Own Or DirectX

Started by
17 comments, last by Low Bias 19 years, 8 months ago
Writing your own rasterizer is a horrible idea, since it completely wastes the power of the video card, as someone mentioned. The rasterizer itself only ends up taking the vertices of a triangle and putting it on the screen. There's not much to be gained from doing that yourself. But aside from that, Direct3D isn't your sole option. Take the games from id software, all of which use OpenGL. But that's not something worth fighting over.
-~-The Cow of Darkness-~-
Advertisement
Quote:Original post by cowsarenotevil
But aside from that, Direct3D isn't your sole option. Take the games from id software, all of which use OpenGL. But that's not something worth fighting over.


Agreed. I didn't mean to infer that DirectX was the only option. I was more meaning DirectX versus doing everything myself without DirectX.

I may very well explore OpenGL at some point, but I'll stick with DirectX for now as I have some DirectX resources already available to me. Also, I would like to develop for the Xbox some day.
writing a software rasterizer is the only way to make a 3D console application :D

www.ezequal.com/CHAOS/Demo.zip
D3D is not a graphics engine. It's a lightweight layer between your code and the graphics hardware. Without it (or OpenGL), you're not going to have hardware acceleration.

An engine is never "based" on directX. It uses it for rendering (or sound, or input). 99% of your code will have nothing to do with it.

---------------------------Hello, and Welcome to some arbitrary temporal location in the space-time continuum.

Quote:Original post by Low Bias
I may very well explore OpenGL at some point, but I'll stick with DirectX for now as I have some DirectX resources already available to me. Also, I would like to develop for the Xbox some day.


Sounds like a reasonable choice, then.
-~-The Cow of Darkness-~-
Quote:Original post by 0xCHAOS
writing a software rasterizer is the only way to make a 3D console application :D

www.ezequal.com/CHAOS/Demo.zip


Nonsense. You can use OpenGL to render to an ofscreen buffer, get the color of each pixel, use your favorite method to choose the best character, and draw it. ;)
-~-The Cow of Darkness-~-
well... I suppose...
Still, rolling your own 3D rasterizer can be quite satisfying. Although I do need to profile the code as it runs at about 1 fps at 800x600.
Doesn't it feel great to understand how an internal combustion engine works?

Don't you feel like an idiot trying to rebuild your car's engine, though?

Understand your tools. And use them.
Quote:Original post by Etnu
D3D is not a graphics engine...[the engine] uses it for rendering (or sound, or input). 99% of your code will have nothing to do with it.


Point taken. You still write the engine and the game, you just don't write the rendering routines...and it just doesn't seem to make sense to do so. Especially considering that writing your own will leave you with rendering routines that aren't as fast (or as portable) as DirectX!

I was put off of DirectX at the beginning because I didn't understand it. It's really that simple. Now that I've started to use it, I'm actually quite excited at what it offers me in terms of performance and how quickly it will get me to a simple game (versus writing everything myself).

I've ordered Introduction to 3D Game Programming with DirectX 9.0 (Frank Luna) and I'm running through the tutorials in the SDK. I'm off to a promising start. Thank you all for your opinions on the matter.

This topic is closed to new replies.

Advertisement