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

DXSURFACE7 sloooooow wtf?

This topic is 6017 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

Hey, I recently found out the following: I set up dx7 in fullscreen with a backbuffer. For my texture I used a LPDIRECTXSURFACE7 and loaded the bitmap into it. For texturing I locked the backbuffer and the texturesurface and copied between them. Result 8fps Ok, it''s for a free directional tunnel on a p233 Now, I replaced the texturesurface with a short[640*480] buffer for my texture (16BPP). Now I copied shorts from the buffer into my locked backbuffer pointer. Result 22fps How can this happen? Is a DXSurface that slow? Or might it be that the surface was in VIDEO memory (dunno) and the read-to-SYS-mem-operation is so slow? Can someone explain? Gr, BoRReL

Share this post

Link to post
Share on other sites
The only point of keeping surfaces in video memory is to use hardware blitting/texturing etc. on them or if they are the primary surface and the other surfaces in the flipping chain. Almost all video cards ever made only support video->video blitting, and video memory texturing. In software, the speed of writing to , it goes like this:
video->video - dead slow
video->system - faster
system->video - a tiny bit faster than video->system
system->system - fastest

Edited by - furby100 on June 24, 2001 9:37:06 AM

Share this post

Link to post
Share on other sites
Ahh thank you,

I tried the following:
instead of locking the backbuffer and writing the data I
made a temporary SYSMEM surface instead.
After I was finished, I did a BltFast() to the backbuffer.

This was actually little slower than writing to the backbuffer (in videomem) directly ???


Share this post

Link to post
Share on other sites