On Tue, Mar 12, 2002 at 04:53:43PM -0800, Keith Packard wrote:
> On the radeon card, I'm also seeing problems with
> other texturing -- translucency isn't working (translucent objects appear 
> opaque)

Thanks for the report. I'd seen that (in a different program) and
forgotten about it.

(A temp workaround is export RADEON_NO_VTXFMT=1)

At least 3 things here

a) _FPALPHA is never set, so it never sends alpha to the card.
Trivial fix (I think) to check ctx->Color.AlphaEnabled in
choose_vertex_format and set it appropriately?

b) ~/glut/demos/contrib/steam which has a toggle for transparent
reveals a subtler issue with CHOOSE_COLOR.

A typical path will go

neutral_Color<xx> -> choose_Color<xx> -> radeon_<codegen or 'c' version>
At some stage  _mesa_restore_exec_vtxfmt will replace the neutral_Color<xx> because 
we aren't saving the second clobber in Swapped.

But CHOOSE_COLOR conditionally calls _mesa_install_exec_vtxfmt itself,
which does the above restore, so whereas typically we clobber a
TnlModule.Swapped function, it's possible for CHOOSE_COLOR to
restore neutral_xx just prior to us clobbering it and we're stuck
forever with SwapCount 0 and (in this case) radeon_Color4f_3f, even when the
vertex_format changes and we want radeon_Color4f_4f.

Could add a restore bool param to _mesa_install_exec_vtxfmt or a
new norestore version of the function?

c) There is some bug in the assembler too (when (a) is added), but I've not looked 
deeply
here yet.

-- 
Michael.

_______________________________________________
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to