Hello, I have enabled GLSL in Mesa, although it is not complete. Some programming "candies" are not supported, but this will change soon as I have now a plenty of free time.
I have commited a demo, arbfslight, which is a GLSL version of Brian's arbfplight.c. It contains some hacks, but should look identically. Jeffrey Timanus offered implementing the preprocessor part. If you are ready, I am also ready to include it. I will need some help with incorporating the GLSL into state machine from somebody who has the overall sight on the Mesa project. Specifically, I mean all the code that gets executed when the GL state changes (like in texstate.c), the interactions between GLSL and the rest of the code, the additional actions that need to be taken when a valid program object is bound or unbound, etc. CONCERNING 3DLABS' GLSL COMPILER We have agreed that 3DLabs' compiler is going to be incorporated into Mesa. Because of problems with getting it compile under Mesa I have decided to write custom plain-C compiler. So is to the NVIDIA's preprocessor. Having this in mind I separated GL_ARB_shader_objects from the remaining 3 extensions. Also I separated the front-compiler (the slang_compile*.[ch] files) from code generations (the slang_assemble*.[ch] files). It is possible to plug the 3DLabs' front-end compiler into Mesa, while having the plain-C version. It is possible, but one is not limited to, to use the existing assembly generator to generate the code from 3DLabs' front-end output tree. However, currently I dont have so much time to incorporate the 3DLabs' compiler into Mesa. Dont get me wrong, I just cannot guarantee I will be able to do it in a short time. I do not want to block other people form doing that. If there is a volunteer, I offer my help in solving the questions. -- Pozdrawiam, Michał Król
