[pythian] Re: CODE - sorting, models, transparency

  • From: "kk" <krauspe@xxxxxxx>
  • To: <pythian@xxxxxxxxxxxxx>
  • Date: Thu, 11 Jul 2002 12:16:36 +0200

> Yes, that was my intention.  I don't want DLOD, since we want the CPU
> time for other things.  I just want 3 CLODs: near, medium and far.
>  Generating these with a tool is a good idea, but we must also allow for
> other options.  For some objects, like a small bush, I just want a
> view-relative sprite (like a particle) for the far LOD.

do you want to make billboards? Hmm.. this would need something like cube
billboad - a cube made of 6 billboards or even sphere billboard... a sphere
mapped cube billboard... or something like that... It is easy to make such
billboards, but I am not sure how it will look like in the engine... and of
course tranparent geom is a problem here.

> I am wondering how we will have LOD for Cal3D models.  It may be that we
> can not do this.

I think that's right. Maybe we could suggest that to Cal3D development team.

> Yes, and we still have a transparency queue for transparent geometry
> (we're not using it yet, though).  But this isn't map geometry, these
> are objects.

If there was a way to multiply or combine two bsp trees very quickly we
could convert the queue to a bsp tree which would be the product of several
object/map transparent geometry bsp trees. Well, this would be nice, but is
not possible - or better not fast enough to do that in real run time. Yo...
but we could easily queue the BSP trees of transparent geom of map objects
and than traverse them from back to front....

BTW, i don't think we shuold now work at 100% precise back-to-front
tranparent poly queue, because it is super slow and I have seen so many
engines e.g. half-life which have same problems with rendering several BSP
transparency trees which may be and are overlapping. It is the task of the
map author to design the map so that the engine will render it well...

So, I suggest - let us use per object BSP tree for transparent polys and gl
list for solid polys. Queue the bsp tree in tranparent queue along with
other such trees and (semi-)transparent map geometry. The tranparent queue
is automatically sorted back-to-front and the draw procedure for bsp
transparency trees will also sort the tranparent model geometry from back to
front. This will make it approx. precise, but will not handle overlapping
models or overlapping model and level geometry. Good enought. What do you
think? Do you agree, Darryl?

-kk



Other related posts: