Why are there no DIrectGraphics Tutorials?

Started by
11 comments, last by pointguard1 22 years, 4 months ago
DH -

I think I''m less cynical about this. It''s less about marketing and more about the reality of the hardware. For example, OpenGL has DirectDraw-like functions like glDrawPixels, etc. The only problem is that 99% of the hardware vendors chose not to make these viable methods of doing 2D. It was very common to have a 1 fps "blit" with glDrawPixels that the same hardware could do in 100 fps with a 2D rect and an ortho projection.

The idea of literally blitting on new hardware is more or less gone. The hardware just doesn''t work that way anymore. The D3DXSprite interface is a good DirectDraw compromise, but one might be better off learning the "new way" so that they can find new features, shortcuts, etc.

Author, "Real Time Rendering Tricks and Techniques in DirectX", "Focus on Curves and Surfaces", A third book on advanced lighting and materials
Advertisement
quote:Original post by CrazedGenius
DH -

I think I''m less cynical about this. It''s less about marketing and more about the reality of the hardware. For example, OpenGL has DirectDraw-like functions like glDrawPixels, etc. The only problem is that 99% of the hardware vendors chose not to make these viable methods of doing 2D. It was very common to have a 1 fps "blit" with glDrawPixels that the same hardware could do in 100 fps with a 2D rect and an ortho projection.


I''m not upset that those features are gone, I agree with the direction that they chose. My only issue is the way they tried to present it. They present it as if DirectGraphics= DirectDraw + Direct3D, but that is not the truth.


Stay Casual,

Ken
Drunken Hyena
Stay Casual,KenDrunken Hyena
the reason that functions such as glPixels() are slow is that they work at the pixel level per call. this kills performance no matter what the card does. to further hurt opengl in 2d is the fact there is no way to lock the video buffers for doing per pixel stuff in local system memory video buffers (if they are in VRAM its slow anyway). to further haper opengl in 2d is the simple fact its portable which means that they have to deal with the system as abstractly as possible to work on all systems without hassle. this is why directdraw which gives direct acces to the video memory and control over how buffers are allocated is many time faster then opengl which must go through the windows gdi (which is slow).

This topic is closed to new replies.

Advertisement