PDA

View Full Version : LONG POST: TNT2 initialisation problem (technical specs posted)



cix>foo
06-01-2003, 02:55 AM
Hi there, we're having a major problem getting TNT2 cards to work with our game, and for no explicable reason as nearly all other cards work, and we've being using nVidia cards to develop on as well.

The game inits, but shows simply a white screen. It's apparently rendering away, and plays the sound fine, but all there is on the screen is white. This is particularly odd as there's absolutely nowhere where we render white, not even in the Windows window default background colour which is black. And of course, it generally works fine on other cards.

We're using an 800x600x16 screen mode, with no depth, no alpha, and no stencil, and 16bpp colour for GL.

Here's the spec for a machine that fails: http://www.medwaypvb.pwp.blueyonder.co.uk/downloads/cpu_info.txt http://www.medwaypvb.pwp.blueyonder.co.uk/downloads/agp_bus_info.txt

Pay particular attention to the CPU and OS here, and Nvidia BIOS.

Has anybody got a workaround or hint about this problem?

We're in a desperate hurry and we'd be eternally grateful for your help.

Cas http://www.opengl.org/discussion_boards/ubb/smile.gif

matt_weird
06-01-2003, 05:03 AM
Originally posted by cix>foo:
We're using an 800x600x16 screen mode, with no depth , no alpha, and no stencil, and 16bpp colour for GL.


what, really NO DEPTH?? http://www.opengl.org/discussion_boards/ubb/confused.gif or is your game 2D?



[This message has been edited by matt_weird (edited 06-01-2003).]

cix>foo
06-01-2003, 06:02 AM
'srite, no depth. Don't need it.
...but I wonder if the TNT2 barfs because of this? Hm.

Cas http://www.opengl.org/discussion_boards/ubb/smile.gif

matt_weird
06-01-2003, 06:34 AM
hm, do you use glut to initialize the window, or you do it through PIXELFORMATDESCRIPTOR in Windows? If the last one, do you check the return from ChoosePixelFormat, DescribePixelFormat, SetPixelFormat? If ChoosePixelFormat returns NULL, then no suitable matches were found(the function failed) and you ain't got your pixel format set. If so consider default pixel index = 1.

TNT2 actually sucks! http://www.opengl.org/discussion_boards/ubb/mad.gif Last year I was really pissed off with that win9x/ddhelp.exe exception bug. killhelp didn't work, so finally someone(guess davepermen http://www.opengl.org/discussion_boards/ubb/wink.gif ) suggested to install win2k, so the problem "disappeared". i'm glad i got rid of that one nasty hw stuff http://www.opengl.org/discussion_boards/ubb/eek.gif http://www.opengl.org/discussion_boards/ubb/smile.gif

[This message has been edited by matt_weird (edited 06-01-2003).]

[This message has been edited by matt_weird (edited 06-01-2003).]

JustHanging
06-01-2003, 06:56 AM
Hi,

This sounds like the problem I had with my TNT. For some reason the wglSwapBuffers fails sometimes. Usually this doesn't happen directly after windows has been started, but if some openGL program has been run, changes are that the next program doesn't work. This happens for almost all programs, not just mine.

I never found a perfect fix for this, but I usually get the opengl window working if I create it later in my initialization chain, preferably after showing some non-gl stuff first... But it's a really weird problem, thank god it went away with a new card!

-Ilkka

jwatte
06-01-2003, 09:27 AM
If a texture unit/image is somehow not complete or correctly initialized, the output of that texture stage is usually defined to be white.

Sprinkle your code with assert(!glGetError()) (or a wrapper that gives you more info, that you can write yourself) to start looking for where you might get errors back from GL. I suggest adding this call right before you return from each function of yours that calls GL.

cix>foo
06-01-2003, 02:28 PM
Thanks for the help everyone.
We check every return code and throw an exception at the first whiff of trouble. Nothing reports an error. We're using PIXELFORMATDESCRIPTOR etc and it's finding a valid mode. We throw out any modes that aren't supported by hardware. We throw out any modes that don't meet our minimum requirements (ok, so that's a bit moot as our requirements are 000 for ADS but there we are http://www.opengl.org/discussion_boards/ubb/wink.gif ) It just simply doesn't work http://www.opengl.org/discussion_boards/ubb/frown.gif Arse, arse, arse, arse, arse.

ARse.

Cas http://www.opengl.org/discussion_boards/ubb/smile.gif

rgpc
06-01-2003, 05:37 PM
Dumb question, how are you clearing your buffer? glClear(COLOR) or are you using the backdrop/skybox?

davepermen
06-01-2003, 10:52 PM
Originally posted by matt_weird:
so finally someone(guess davepermen http://www.opengl.org/discussion_boards/ubb/wink.gif ) suggested to install win2k, so the problem "disappeared".

hm.. me? hm.. i hardly remember.. but it could've been me. i suggested here to move to win2k several times, yes...

hm...

cix>foo
06-02-2003, 03:12 AM
Sadly a proper OS is usually the last thing on the casual gamer's mind :p

So in the meantime - no-one knows what's causing the white screen to appear? I know it's not a bug in our code as it works for nearly everything else.

Cas http://www.opengl.org/discussion_boards/ubb/smile.gif

cix>foo
06-02-2003, 03:13 AM
Sadly a proper OS is usually the last thing on the casual gamer's mind :p

So in the meantime - no-one knows what's causing the white screen to appear? I know it's not a bug in our code as it works for nearly everything else according to spec. I also understand that it manifests itself in other people's applications as well, so I assume somebody's found a workaround by now...?

Cas http://www.opengl.org/discussion_boards/ubb/smile.gif

kansler
06-02-2003, 03:42 AM
I once had a similar kind of problem with a GeForce 2 MX. The program came up blank. Then when I minimized and restored the window the program worked fine. Does this work with your program too? This is really just a guess.

matt_weird
06-02-2003, 05:11 AM
Originally posted by davepermen:
hm.. me? hm.. i hardly remember.. but it could've been me. i suggested here to move to win2k several times, yes...
hm...

well, i was using another username that time. and now i see, that was you, davepermen, definately:


Originally posted by davepermen:
how about stop using win98? get a copy of win2000 and your problems can fly away..

i know this sounds now like a flamewar, but i've seen several persons with different problems that simply sounded stupid. told them to move to win2000, they did, now stuff works how they except them to work..

right, win2k works fine, thank you http://www.opengl.org/discussion_boards/ubb/smile.gif and just right now i wouldn't get back to that win9x stuff http://www.opengl.org/discussion_boards/ubb/rolleyes.gif (well, except maybe for playing games, using FAT32, and run something on a local network with those "sharky" guys, who somehow made their mIRC server traffic 100% blocked by the firewall http://www.opengl.org/discussion_boards/ubb/rolleyes.gif )

[This message has been edited by matt_weird (edited 06-02-2003).]

matt_weird
06-03-2003, 01:25 AM
Originally posted by cix>foo:
So in the meantime - no-one knows what's causing the white screen to appear? I know it's not a bug in our code as it works for nearly everything else according to spec.

umm.. then what do you use in SwapBuffers for a parameter? Are you sure you're passing the right HDC to it? Or maybe if you use wglGetCurrentDC it fails to get the right one. But i tried to create a context for a desktop passing NULL eveywhere for HDC, and it had the same *white screen* you mentioned, so maybe the problem is there.

cix>foo
06-04-2003, 04:15 AM
I'm going to try using wglSwapBuffers and a cached HDC instead. More news if it works....

Cas http://www.opengl.org/discussion_boards/ubb/smile.gif