-
DX Fullscreen Flashing
Hey,
i'm just looking at some examples of full screen direct x apps, and all of the 1s ive tried flash really fast between what should be on the screen and either blackness or whiteness. I'm guessin this isnt normal, or else it would have a health warning on em for epilepy sufferers or something:). This happens with D3D and Direct Draw apps.
I have searched for this problem, but i cant find anything. Is it a problem or is it supposed to be like this? How do i sort it out?:confused:
-
I'm not sure exactly what you're talking about, since I've never had that problem, but I'm pretty sure I know what's happening :P
To work, DirectX apps using DirectDraw create a set of two surfaces (could be three or even more, but I won't get into that). The primary surface and the backbuffer. The way the app works is that everything is drawn on the backbuffer. Then the backbuffer's pointer is switched with the primary surface's, resulting in the backbuffer and primary surface switching place. The process is repeated over and over. This is known as double-buffering.
The reason for this is simple. The user can't see what is being drawn on the back buffer. Instead, they're confronted with the primary buffer, which holds a now-static image. Once the program is done drawing, it'll switch the back buffer and primary buffer around. So that way, the user doesn't see anything getting drawn until the frame is 100% finished, thus preventing flicker.
What might be happening is that the backbuffer can't be created or written to for some reason. Maybe your graphic card just plain sucks and can't handle it and the program just isn't programmed to handle a case like that. I have no clue, to be honest. :P
-
Ah yes! Forgot to mention something. Direct3D is never used to render to the screen. Anything with Direct3D will render to the screen via a DirectDraw surface. Direct3D is just a series of functions and commands to handle 3D stuff. It doesn't actually render anything to screen as such.
-
ok, thanx
i noticed that if i move the mouse the flicker seems 2 stop, and when i stop the mouse it starts again. Does that point 2 anything more specific? And i have a GeForce II MX400 64mb, that should be able 2 handle a spinning pyramid surely?!
any ideas?