Archived

This topic is now archived and is closed to further replies.

jharkey

dx9 and ddraw

Recommended Posts

hello i haven''t been on this message board since like january, so forgive me if you have recently discussed this. i was wondering if there was any new news on dx9, and ddraw. like when is it coming out, is ddraw coming back? if it is, will it support alpha blending without using d3d? what are some of the improvements on the other components, like dinput? thanks.

Share this post


Link to post
Share on other sites
I highly doubt ddraw is coming back, and from what I have heard there has been no set release date for dx9.

Eric Wright o0Programmer0o
AcidRain Productions
http://www.acidrainproductions.com

Share this post


Link to post
Share on other sites
G''day!

DDraw is not coming back. They''re planning on doing some work on making 2D easier to do in D3D. It''s possible that it will be included in D3D9, but more likely D3DX (or a similar library) will have routines that will give you the same functionality.

To the best of my knowledge the beta for DX9 hasn''t even been announced. 8.1 is in beta and is expected soon.


Stay Casual,

Ken
Drunken Hyena

Share this post


Link to post
Share on other sites
Sorry - minor rant....

If you look at OpenGL implementations, there are 2D functions, but they are extremely slow on almost every piece of hardware. On super fast, super cool SGIs, you were better off using the 3D pipeline effectively than trying to work around it.

Current graphics hardware is essentially SGI for real people. There is a super fast pipeline that is optimized for certain uses. One can certainly make an API that ignores the pipeline, but this would be a horrible waste of good silicon and the good people at ATI and nVidia would cry.

There are several ways to do 2D AND use the pipeline effectively. Take your pick. You can use the D3DXSprite interfaces, you can read the 2D tutorial on this site...

I know there are still 2D cards out there, but they are a dying breed. As much as you think you may want DirectDraw, you really don''t - it would be a really bad use of hardware. What you really want is a quick and handy 2D interface. There are plenty of 2D options out there...

Share this post


Link to post
Share on other sites
DDraw is not returning, neither will an easier way to do 2D with 3D. What Microsoft said was happening after DirectX 8 was released was that 2D hardware acceleration was not a part of D3D8 because they could not completely combine 2D acceleration with the rest of D3D. CopyRects was supplied to copy data from one surface in a texture to another but no hardware 2D capability was provided. They said that support for 2D acceleration will return in DirectX 9 as part of the Direct3D library. They may have changed their mind since then, I quite frankly do not know.

Share this post


Link to post
Share on other sites
I still use ddraw, because although 2d cards might be a dying breed. There are still plenty of them in existance, and you will find that many non-hardcore gamers will not have them. Making your game so it will actually run without 3d acceleration is a great plus, especially when it isn''t necessary.

Trying is the first step towards failure.

Share this post


Link to post
Share on other sites
My only complaint is the power of two requirement for 3D.

Other than that, DDraw really has no place anymore. Doing 2D with 3D is really quite simple even without a prewritten library.

And it''s incredibly fast.

Ben


Jump Down The Rabbithole

Share this post


Link to post
Share on other sites
Actualy Direct Draw does have a power of 2 constraint also. However because Direct Draw is so damn fast you don''t realy notice as much of a slow down as you would in 3d. I''ve personaly gotten a 20fps boost by resizing my images to powers of two in Direct Draw.

Share this post


Link to post
Share on other sites
thanks for the replies. i see your point on not wasting 3d hardware, but dont all 3d cards have 2d acceleration too? just wondering, i dont know. i mean, isnt a hardware blitter required by a 3d engine? i would love to learn how to do 2d in d3d, but i have very limited time to learn anymore, and have not studied any advanced math, and i heard that even the simplest d3d game requires lots of algebra. the whole idea sounds cool though. i would like to eventually get into 3d programming, but not now. what are the minimum mathmatical requirements for 3d programming? is it easier than i am making it out to seem? thanks.

Share this post


Link to post
Share on other sites
Powers of two is faster because of how a computer works. DirectDraw doesn''t force you to take advantage of that like D3D does. With D3D if you use an odd shaped image it will waste memory to make it fit properly. DDraw doesn''t care.

All 3D cards have 2D acceleration as well although I don''t think it''s been improved upon for quite a while.

Ben

Jump Down The Rabbithole

Share this post


Link to post
Share on other sites
Even if DD comes back, I won''t be going down that road again. DX8''s lack of Blt made me take a look at using D3D screen-space triangles for 2D sprite rendering, and I love it!
The bilinear filtering of scaled and rotated sprites is worth it by itself (looks solid as hell), not to mention hardware-accelerated alpha rendering, and per-pixel alpha capability (great for antialiased sprite edges via a feathered alpha channel in the source image). Rotation is a breeze, as is scaling. Plus you''ve got full access to the ridiculous amounts of pixel fill rate in today''s 3D accellerators.

Bringing DD back for the beginners would be great, but I''m happy with what we''ve got.

Share this post


Link to post
Share on other sites