On Wed, 05 Jul 2006 13:53:01 +1200
Greg Ewing <[EMAIL PROTECTED]> wrote:

> snaipperi wrote:
> 
> > As you can see, the right side displays like it should, but on the
> > left side the rear grass model appears in front of the closer model..
> 
> I think this is an unavoidable consequence of the way
> Soya uses OpenGL to handle partial transparency. Not sure
> of the details, but probably what it's doing is making
> one pass over the scene to render all the opaque parts
> with full depth buffering, and then a second pass for
> the translucent parts with depth buffer testing but
> not updating.
> 
> What that means is that opaque objects will correctly
> occlude other opaque or translucent objects, but the
> ordering between different translucent objects is not
> controlled by the depth buffer.

That's it.

In this case, i think the best solution is to use mask instead of alpha 
channel. Using mask, you can have transparent texture pixels, but not partial 
transparency; that may be sufficient for grass.

For using mask in Soya, all you have to do is to modify your texture so as all 
alpha channel values are 0 or 255 (no in-between value).

Jiba

_______________________________________________
Soya-user mailing list
[email protected]
https://mail.gna.org/listinfo/soya-user

Reply via email to