This was a bit of follow-on work that I had wanted to do back when I
did all the other uniform rework.  Setting the initial values for
uniforms (that have initializers in the GLSL code) is moved from
ir_to_mesa to the linker.

In addition, support for initializers on samplers is added.  This
gives some small simplification in the ff_fragment_shader code.  It
will also make re-working the ARB_fragment_program compiler to use
GLSL IR a bit easier.  In the future, it may also be used to support
sampler "bindings" from GL_ARB_shading_language_420pack.

I would also like to eventually eliminate the extra indirection of
gl_shader_program::SamplerUnits and gl_program::TexturesUsed.  That
code is intertwined with a bunch of other stuff, and it may have to
wait a bit.

The supplied unit tests hit most of the cases *except* structures.  I
intend to add structure tests, but I want to wait until some of Eric's
ir_builder work lands.  I suspect I'll end up extending that work to
make building structures a bit easier as well.

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to