PDA

View Full Version : 16 bit windows - speed 3 fps



czar
15-01-2004, 06:27 AM
I have checked the forum and don't notice this problem being discussed elsewhere.

As some may know I have been working on my little graphical app. On my p4 with ATI 9700 it runs at 500+ fps. However, when I tried it on my amd 1800 with ATI 8500 I got 3 FPS. I noticed that my P4 was in 32 bit mode while the AMD in 16 bit colour. Changing to 32 bit solved the problem.

However, if a computer is in 16 bit colour and I set GLXDraw to fullscreen 800x600x32 then I still get the 3 fps, even on my P4.

My program does nothing too exciting just draws pictures from an imagelist. Drawalpha and drawadd.

Is this problem the same for everyone? Is there a work around?

Help

Tokter
15-01-2004, 12:27 PM
if you change to fullscrren 32bit mode and it's still slow maybe there is a bug...i will check that this evening

Alimonster
15-01-2004, 12:34 PM
It could be the stencil buffer -- I know that older cards don't like stencil buffers when running in 16 bit mode, and as such they may fall back to software rendering. These cards much prefer 32 bit when dealing with stencil buffers.

What's the output of "glGetString(GL_VENDOR);"? If it's Microsoft then you've fallen back to software rendering instead of hardware for some reason (not necessarily due to the stencil buffer, but there'd definitely be an issue somewhere).

czar
15-01-2004, 06:05 PM
I put my windows desktop is in say 1280x1024 x 16 bit colour.

In my program I set GLXDraw options doinitialise and dofullscreen to true. The display property in glxdraw is set to 800x600x32 bit.

Running the app it goes into fullscreen and all the pictures are displayed but I only get 3 fps. (this is on 1.8ghz - 3.1 Ghz machines)

Now setting windows desktop to 32 bit colour and rerunning the app I now get about 300+ FPS.

This is the case both at home with two machines (ATI 8500 and 9700 pro) and on my work computer that has a Nvidia Geforce FX 5200.

Recent hardware, latest drivers.

I would suggest that it may be due to the fullscreen code. As a temporary workaround I am using Madshells to force the desktop into 32 bit mode and then manually initialising glxdraw and that works, but its a bit messy.

ps: I am using the component build 12/01/04

czar
15-01-2004, 06:12 PM
Just tried your suggestion and the result was "Microsoft Corporation."

Result was when I was running my app in 16 bit windows desktop with the app in a window (not fullscreen)

Rerun the app with windows in 32 bit desktop and result is

NVIDIA CORPORATION

Hope it helps

czar
27-01-2004, 10:25 PM
:roll:

I was wondering if anyone had found a solution to the 16 bit question? I will continue to use my work around in the meantime.

R

Andreaz
28-01-2004, 06:11 AM
No we havn't found the reason of this bug, but are planning on a rewrite of the GLXDraws, GLXCamera and GLXScreen and that will hopefully solve the problem.