Jump to content
  • Advertisement

Archived

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

Gazza

No BLT with DX8?

This topic is 6450 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

OK , a little birdy told me (or was it a little furby ) that DX8 does not have any Blt Functions. Is this true? Is this madness? Does this mean you have to use DX7 DirectDraw interfaces if you need hardware blitting in DX8 Im confused

Share this post


Link to post
Share on other sites
Advertisement
Guest Anonymous Poster
quoted from dx sdk doc.. hope this clear things up a bit..

Blitting [Language: C++]
[C++]
The term blit is shorthand for "bit block transfer," which is the process of transferring blocks of data from one place in memory to another. The blitting DDI continues to be used in Microsoft® DirectX® 8.0 as the primary mechanism for moving large rectangles of pixels on a per-frame basis, the mechanism behind the copy-oriented IDirect3DDevice8:resent method. The transportation of artwork in the blit operation is performed by the IDirect3DDevice8::UpdateTexture method.
[Visual Basic]
The term blit is shorthand for "bit block transfer," which is the process of transferring blocks of data from one place in memory to another. Graphics programmers use blitting to transfer graphics from one place in memory to another. The blitting DDI continues to be used in DirectX 8.0 as the primary mechanism for moving large rectangles of pixels on a per-frame basis, the mechanism behind the copy-oriented Direct3DDevice8.Present method. The transportation of artwork in the blit operation is performed by the Direct3DDevice8.UpdateTexture method.

Share this post


Link to post
Share on other sites
Do you mean no "new" surfaces? The surfaces and Blt and BltFast functions I use in DX7 will still be there won''t they?

Thanks,
Zaephen

Share this post


Link to post
Share on other sites
Anonymous Poster:

By posting that information directly from the DirectX 8.0 SDK (or atleast thats where it looks like its from), you have violated the Non-Disclosure-Agreement for DirectX 8.0. That''s not something to joke around about, MS takes violations very seriously. Very smart to post anonymoustly.

I suggest removing the message leaking information ASAP unless you want lawyers at your door. ;-)

-Dan Smith
dans@3dgamedev.com

Share this post


Link to post
Share on other sites
Wait a sec. I thought they were MERGING Direct3D and DirectDraw. Instead they are taking DirectDraw out completely??

And then they plan on putting it back in with DirectX9? Damn and for a while I was actually looking FORWARD to DX8... now they are taking a huge step backward??


- Houdini

Share this post


Link to post
Share on other sites
Indeed, you can no longer create surfaces or use any sort of blt functionality. In fact to improve performance the functions to create directx devices have been removed, you are now expected to create a pointer and randomly jump it around in memory until you find the necessary directx objects.....

Then again, maybe I have no idea what I''m talking about...and since it''s now quite april I guess I should apologise for my blatant misinformation... oh and have a nice day

Just because the church was wrong doesn't mean Galileo wasn't a heritic.
It just means he was a heritic who was right.

Share this post


Link to post
Share on other sites
The mentioned Present method replaces having a global which says whether you are in windowed or fullscreen and blit or flip respectively, if you are in windowed mode it will blit the backbuffer to the primary buffer, and if in fullscreen mode it will blt the backbuffer to the primary buffer. Of course you are denied direct access to these buffers via lock, all access must be via DrawPrimitives (like OpenGL, but without the glDrawPixel function or whatever it is called). DX9 will have Blt and BltFast and Lock again. This is because DirectDraw is removed from DX8.

By the way, I am not violating any NDAs when I tell you this, since:
a) I am not on the DX8 beta program, so I have not signed any NDAs.
b) All this information was either worked out or obtained from the Meltdown presentations on the MS website.



Please state the nature of the debugging emergency.


sharewaregames.20m.com

Share this post


Link to post
Share on other sites
quote:
Original post by Houdini

Wait a sec. I thought they were MERGING Direct3D and DirectDraw. Instead they are taking DirectDraw out completely??

- Houdini


They are merging it in a sense, you will not have to use any part of DirectDraw to use D3D. Initialisation of the ID3D8 is a single function call, and after device initialisation, you do not need any more initialisation. You also need not create primary and secondary surfaces, they are created when the IDirect3DDevice8 is created. And as mentioned before you do not need to call Flip or Blt, you just use Present.



Please state the nature of the debugging emergency.


sharewaregames.20m.com

Share this post


Link to post
Share on other sites

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!