Archived

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

Bruno

Could you guys test my c-buffer algorithm??

Recommended Posts

Bruno    155
Hi guys I''m implementing a bsp/c-buffer, into my engine, and i would need that you guys test to see the speed you guys get on your machines. This test program (61kb) troughs 10.000 textured polygons to the screen with a z space distance of 0.1 between each quad. I would like to see, how much fps you people get with opengl z-buffer and with the c-buffer.. The c-buffer still has some bugs, but it''s just to see the performance. The test program is at www.geocities.com/brunomtc/test.zip Thanks Bruno

Share this post


Link to post
Share on other sites
SKSlayer    122
Humm, but you''re loosing some visible polys


Win 98 with MP3 on the background
PIII 500(P3BF) + GeForce DDR
Windowed
ZBUFFER (textured) : 62 fps
CBUFFER (textured) : 120 fps

Share this post


Link to post
Share on other sites
davepermen    1047
on the ati rage 128, with p3 500 and win98 se in fullscreen, textured mode
z: 17fps
c: 45fps

hope you could correct the errors, would be nice

we wanna play, not watch the pictures



Edited by - davepermen on October 8, 2000 2:08:40 PM

Share this post


Link to post
Share on other sites
richardve    122
z-buffer: 46 FPS [textured]
c-buffer: 35 FPS [textured]

system:

PIII 500
64MB
Win98SE
GeForce2 MX (Hercules)

I''ve had GetRight (d''loading a big zip), CrashGuard, Anti-virus, FireWall & CPU cooler (win98SE doesn''t do HLT''s ) on the background while testing your program.
I''ll test it later without all those programs because I think they''re hogging the CPU a bit

Share this post


Link to post
Share on other sites
Bruno    155
thanks for the replys..

richardve, you got me worried, i know i have to make some optimizations, but c-buffer slower than z-buffer



Bruno

Share this post


Link to post
Share on other sites
richardve    122
z-buffer: 53 FPS
c-buffer: 41 FPS


As you can see the Z-buffer with 10.000 quads is faster again (don''t ask me why.. )

I think it''s a good idea to make an option to use a Z or C-buffer.


btw. I''ve noticed that my GeForce2 MX from Hercules is very, very fast in OpenGL

Share this post


Link to post
Share on other sites
Bruno    155
richardve:
What the hell..., that is strange..
I don''t understand how do the performance is slower with the c-buffer..
As i can see skyslayer, is also using a PIII(500), but with a GeForce DDR, instead of a GeForce MX.

Do you know if the GeForce DDR is much diferent than you geforce? I don''t have a clue on the performance of the boards.
thanks for the test

Bruno

Share this post


Link to post
Share on other sites
richardve    122
quote:
Original post by Bruno

richardve:
What the hell..., that is strange..
I don''t understand how do the performance is slower with the c-buffer..
As i can see skyslayer, is also using a PIII(500), but with a GeForce DDR, instead of a GeForce MX.

Do you know if the GeForce DDR is much diferent than you geforce? I don''t have a clue on the performance of the boards.
thanks for the test

Bruno



AFAIK the GeForce DDR is a little faster than the GeForce2 MX (GF2 MX = halve speed of GF2)

I can''t help you much with the c-buffer problem but if you''ve got another demo that you want to test just sent it to me.

Share this post


Link to post
Share on other sites
Bruno    155
ok.., thanks richardve, and eveyone
I guess, i will have to mess with the code., everyone that tests this with a GeForce, don''t have such a speed optimization, or even have a loss of speed (like you )..

thanks mate

Bruno

Share this post


Link to post
Share on other sites
richardve    122
I found some interesting stuff in the newest documents about hardware T&L from nVidia.
Have a look at this snippet:


 
Other optimizations: Culling

* View Frustum
* Sphere, AABB, OBB, Cone, Cylinder

* Occlusion
* Don't use span buffers or C-buffer -- too much CPU work




I think it would be better to detect wich card is used (with glGet(GL_RENDERER))
and switch to the c-buffer when a TNT or other card w/out hw-T&L is detected...

Hope that helped you


Edited by - richardve on October 11, 2000 5:48:22 AM

Edited by - richardve on October 11, 2000 5:49:11 AM

Share this post


Link to post
Share on other sites
alistair b    122
celeron2 600@900MHz, diamond viper550 TNT

z buffer: 27fps
c buffer: 62fps

i think it would be useful to include both methods - one for fast processors & 1 for fast gfx cards

alistair

Share this post


Link to post
Share on other sites
Authustian    125
pIII 700
geForce2 (running at 1x agp *groan* *damn mother board*)

z with tex = 43
c with tex = 88

-------------------------------------------------
Don't take life too seriously, you''ll never get out of it alive. -Bugs Bunny

Share this post


Link to post
Share on other sites
skyfire360    228
I know what some of *our* problems are: V-Sync. Pre-disabling it, I got 51 fps on both. After disabling V-Sync, I noticed a 40% increase using c-buffer. Good algorithim. Where''d you learn about using a c-Buffer?

Share this post


Link to post
Share on other sites
Guest Anonymous Poster   
Guest Anonymous Poster
The C-buffer algorithm is going to depend more heavily on available CPU and memory access speeds; the z-buffer on modern cards is going to dependent more on card power and onboard vs mainboard memory usage.

''Raw'' speed in a graphics technique is handy, the higher speed of a given technique, the greater the chances of throughput success for a total project. Note, however, that these statements are generally relative and will also relate to a given machine state.

A high-speed c-buffer alg is nice, but if 100% CPU is being used while, a hardware supported z-buffer is only using 12%, the overall throughput of a given application is likely to be higher with the z-buffer than the c-buffer!

Share this post


Link to post
Share on other sites
richardve    122
quote:
Original post by skyfire360

I know what some of *our* problems are: V-Sync. Pre-disabling it, I got 51 fps on both. After disabling V-Sync, I noticed a 40% increase using c-buffer. Good algorithim. Where''d you learn about using a c-Buffer?



My V-sync is always disabled...

Share this post


Link to post
Share on other sites
Bruno    155
I''m sorry anon, but i have to disagree with you.,
anon, if a c-buffer is slower than a z-buffer, then why the c-buffer was invented ?? I know Crystal Space uses C-buffers, and CS is a high performance engine ..

You can check on tutorials on s-buffer and c-buffer at flipcode.., Jaap Sutter, is also giving me a hand

Bruno

Share this post


Link to post
Share on other sites