Full Screen Woes
by Matt Harpold · in General Game Discussion · 03/23/2004 (12:55 am) · 5 replies
Hmm... all Reaction projects flip out when I go full screen.
By 'flip out' I mean a fatal crash. This happens on two XP systems with different video cards I've tried thus far, also with modified and unmodified versions of the examples. When I try to debug I get an exception:Access violation. Other than that it appears to function correctly.
I'm thinking it has something to do with the redraw function, but I have no proof of this. Might also be a DirectX issue, not sure.
Any ideas?
By 'flip out' I mean a fatal crash. This happens on two XP systems with different video cards I've tried thus far, also with modified and unmodified versions of the examples. When I try to debug I get an exception:Access violation. Other than that it appears to function correctly.
I'm thinking it has something to do with the redraw function, but I have no proof of this. Might also be a DirectX issue, not sure.
Any ideas?
#2
1) What video cards?
2) Have you tried updating the drivers?
3) Have you tried on non-XP systems?
4) What error info do you get?
Not sure if I can help, but if I can this info would be useful.
03/23/2004 (8:55 am)
Matt, a couple questions:1) What video cards?
2) Have you tried updating the drivers?
3) Have you tried on non-XP systems?
4) What error info do you get?
Not sure if I can help, but if I can this info would be useful.
#3
Clark: A geforce4mx420 and a radeon 9600XT.
Both machines have the latest drivers. No non-XP systems here tho.
I get an unhandled exception in
void MACHINE_D3D::SetProjectionMatrix(float fov, float near_pl, float far_pl, float aspect)
{
D3DMATRIX matProj;
D3DUtil_SetProjectionMatrix( matProj, fov, aspect, near_pl, far_pl );
D3DFrame->GetD3DDevice()->SetTransform(D3DTRANSFORMSTATE_PROJECTION, &matProj);
}
At the D3DFrame->blah line..
It seems to be ok if it starts off as fullscreen, and then I can switch back and forth no problems, but if it starts windowed and then switches to fullscreen, it pops up an unhandled exception error at that line.
03/24/2004 (2:38 am)
Kenney: Yeah, this happens when you alt-enter to fullscreen. It would be kind of nice if you can run something fullscreen OR windowed.Clark: A geforce4mx420 and a radeon 9600XT.
Both machines have the latest drivers. No non-XP systems here tho.
I get an unhandled exception in
void MACHINE_D3D::SetProjectionMatrix(float fov, float near_pl, float far_pl, float aspect)
{
D3DMATRIX matProj;
D3DUtil_SetProjectionMatrix( matProj, fov, aspect, near_pl, far_pl );
D3DFrame->GetD3DDevice()->SetTransform(D3DTRANSFORMSTATE_PROJECTION, &matProj);
}
At the D3DFrame->blah line..
It seems to be ok if it starts off as fullscreen, and then I can switch back and forth no problems, but if it starts windowed and then switches to fullscreen, it pops up an unhandled exception error at that line.
#4
Needless to say, I'll have to dig into this at some point, because there's no way to ship a game with a showstopper bug like this.
03/24/2004 (10:41 am)
Just to0 corroborate here, I've seen this behavior on at least 3 machines so far, all running XP. I don't have any non-XP boxes to test on though.Needless to say, I'll have to dig into this at some point, because there's no way to ship a game with a showstopper bug like this.
#5
I've seen this too. Flipping between screen modes is a bit odd. I'm fairly sure its something not being done properly in your code when it switches. Check your windows message handling code against the examples, make sure nothing is missing for the mode you're in.
It's been a while since I looked at that, however even after I managed to stop it crashing it still ate resources badly during a switch and left something unfreed. I never got round to checking where that one was, though. Its probably best to pick a mode and stick with it.
T.
Tom.
03/24/2004 (3:39 pm)
Hey,I've seen this too. Flipping between screen modes is a bit odd. I'm fairly sure its something not being done properly in your code when it switches. Check your windows message handling code against the examples, make sure nothing is missing for the mode you're in.
It's been a while since I looked at that, however even after I managed to stop it crashing it still ate resources badly during a switch and left something unfreed. I never got round to checking where that one was, though. Its probably best to pick a mode and stick with it.
T.
Tom.
Kenney Wong
K.