   Blending thoughts
  I'm mentally experimenting with how I'm going to manage transparancy in my renderer, and I came up with a couple of questions.Due to the nature of transparancy, transparent polys are generally best rendered in a second pass. The method I'm warming to is the one where you render the opaque polys, then set the depth buffer to read only and render the sorted transparent polys. The main question I have is will non-transparent polys present in the second pass be a problem? (i.e. how granular does the transparent list of polys need to be, are we talking objects or polys).I suspect they won't, as although the depth buffer won't be updated, a transparent poly behind an opaque one won't show as I suspect OGL will just blindly render on top of the previous transparent poly, hence the need for the sorting to make sure you get the right results.Also, in a complex shape where there are likly to be overlapping forward-faces (hence, they pass the backface culling), will the poly that should end up behind the front one need to be sorted (I suspect it would). This means poly-level sorting as object level sorting won't be accurate enough.The easier solution to this is to simply have the transparent polys as seperate meshes so they can be easily rendered seperately, the problem with that is that I want to use RGBA textures for my alpha blending, so determining which polys have transparent bits is impractical as it will depend completely on the texture.So I'm now once again back where I started. unsure of how to accurately decide which polys go in the transparency list.So...any nuggets of experience anyone cares to share?   
  The biggest question is: How realistic do you want your engine to render transparency?If you want perfect rendering, you will need to deal with intersecting polygons and split and sort them properly.  This is obviously going to be slow, which is why we deal with 'good enough' in the realtime world.  It's not perfect, but hopefully it's fast enough that no one would be able to point out and say "Hey! That polygon isn't blended right!"  :)Personally, I draw the opaque pass first, then Z sort models that have transparent polygons and draw that way.  I don't bother to Z sort within the model, however... usually the designer is good enough to build a model that doesn't have any problems by itself.The only remaining issue is if models intersect.  But if your models never actually itersect (checking by collision dectection), then this is a moot point.  Otherwise, you could sort transparent polygons within the intersecting models.;  Yeah I agree, it depends how accurate you want to be, most of the time you can get away with just sorting the alpha models, and just making sure that your artists don't generate insane art that requires self sorting.but you could do- draw all solid- draw all additive- Sort list of alpha   - Render alpha (self sort polys per object if needed)Won't be exact but probably good enough.Just determine what needs alpha sorting based on either a per material flag or just check the alpha blend mode of the currently set material,Paul