why use bsps?Doesn't Opengl clips any thing thats out of camera view?

Started by
18 comments, last by Buzz1982 20 years, 8 months ago
quote:
BTW:
pkelly83 don't tell me you woke up one day and became a programming god. You were a beginner to at one time. So if you're to good to help him out, just keep that mouth of yours shut.


I definitely second that, kelley your basically attitude sucks, we're here to help people not discourage them.

to kind of solidify what everyone is trying to say in the broadtest terms:

CULLING - Means polygons aren't visible, so don't even call glVertex on them

Clipping - You called glVertex on these, but the rendering api just has to make sure that they really are visible before trying to draw them (you can't draw a polygon, or a part of a polygon, that is off of the screen)

EDIT:
display lists stored polygons in video card memory so that you don't have to keep sending them down the AGP bus. The idea is that it is faster, at the cost of GPU memory. I don't use them.


[edited by - Shadow12345 on August 16, 2003 2:50:02 PM]
Why don't alcoholics make good calculus teachers?Because they don't know their limits!Oh come on, Newton wasn't THAT smart...
Advertisement
quote:Original post by shadow12345
EDIT:
display lists stored polygons in video card memory so that you don''t have to keep sending them down the AGP bus. The idea is that it is faster, at the cost of GPU memory. I don''t use them.


There is no guarantee this will happen. The Display Lists specification is very ambigous, and each manufacturer can implement it differently.
Like I said, I tested them on two Nvidia cards (TNT 2 and GF2 MX) and in some cases the speed was like 10% higher with display lists, but in some other cases (like Display Listing an entire height map) I got a 30% penalty...

Height Map Editor | Eternal Lands | Fast User Directory
thanx alot every body.

This helped me alot in understanding the things that i was confused about.

we''re glad to help
Why don't alcoholics make good calculus teachers?Because they don't know their limits!Oh come on, Newton wasn't THAT smart...
quote:
OpenGL will NOT do texturing, and other expensive stuff with the out of the screen vertices. I believe the first test done is to see wether or not a triangle is inside the viewing frustrum or not, and if it isn''t, goodbye vertex.


See I learned something to

-UltimaX-

"You wished for a white christmas... Now go shovel your wishes!"
quote:
Original post by pkelly83
>>http://www.gamedev.net/community/forums/topic.asp?topic_id=175166<<
Yeah we should get somone to write a decent tutorial. Cause I asked a camera question before and got a crap answer too. Sorry if my own answer was crap! But no seriously we should have a decent one somwhere. There's one on www.gametutorials.com but I don't understand it very well, when I tried to copy it my program didn't work quiet right.


"but I don't understand it very well, when I tried to copy it my program didn't work quiet right." And you're saying "Oh my God.................." about a BSP question? LOL

-UltimaX-

"You wished for a white christmas... Now go shovel your wishes!"

[edited by - UltimaX on August 16, 2003 3:15:23 PM]
Kelly, the reason we''re burning you so badly is that there''s just no room for rudeness when tossing around complex ideas. And complex is relative; teaching BSP to someone who has never been exposed to it holds the same relative complexity as john carmack trying to port a quake2 level to a voxel based renderer (as opposed to the vector math with bsps and frustum culling we have grown to love)

and about the BSPs, did you guys know q3 doesn''t even perform frustum culling on bsp leaves? It just calculates the potentially visible leaves and draws them. I did the same with my project and noticed no drop off in performance.

Why don't alcoholics make good calculus teachers?Because they don't know their limits!Oh come on, Newton wasn't THAT smart...
quote:Original post by shadow12345
and about the BSPs, did you guys know q3 doesn''t even perform frustum culling on bsp leaves? It just calculates the potentially visible leaves and draws them. I did the same with my project and noticed no drop off in performance.


Frustum culling is still a good idea. The potentially visible set basically says, "given a leaf, what other leaves could I potentially see from there." By adding frustum culling, you are saying, "of all the leaves that I could potentially see from here, which ones are actually visible given my current field of view." This can eliminate quite a few polygons, such as those that are behind you or too far to the left or right to be seen.
quote:Original post by Dave Hunt
quote:Original post by shadow12345
and about the BSPs, did you guys know q3 doesn''t even perform frustum culling on bsp leaves? It just calculates the potentially visible leaves and draws them. I did the same with my project and noticed no drop off in performance.


Frustum culling is still a good idea. The potentially visible set basically says, "given a leaf, what other leaves could I potentially see from there." By adding frustum culling, you are saying, "of all the leaves that I could potentially see from here, which ones are actually visible given my current field of view." This can eliminate quite a few polygons, such as those that are behind you or too far to the left or right to be seen.


Yes, it may still be a good idea, BUT Carmack is very experienced. He wouldn''t leave something like frustum culling out for no reason. He probably profiled it and found that the cost of frustum culling the potentially visible leaves was actually higher than just sending them to be rendered.

One thing I haven''t seen mentioned is that BSP trees are pretty redundant in rendering terms now anyway. There are other scene representations that better make use of current hardware. BSP''s are still good for collision detection though. I''ve heard kd-trees are pretty good... Haven''t worked with them myself.

You have to remember that you''re unique, just like everybody else.
If at first you don't succeed, redefine success.

This topic is closed to new replies.

Advertisement