After about a week of trying to figure this out, some changes have been made to the pipeline itself. One of which is a completely new build of the Shrimp shader builder, this one called Prawn and is now hosted on GitHub. This build includes AOV parameters that are needed by RIBMosaic and the EXR driver, so before the shader even gets to Blender, we can see in the temp folder if the desired results are indeed rendering. Another thing that was figured out was that the shading models are confusing, the normal Diffuse and Specular blocks work fine, however models like Oren-Nayer does not render right. This was confusing, then by accident realized that with some hacking, the other model can simply be piped through Specular, or Diffuse. This turns that AOV parameter that is causing issues to be linked to the right one for RIBMosaic. Or one could simply do some work getting the Diffuse and Specular to look right by it self.
The next advancement is that since the shading pipeline was somewhat worked out, shading tasks have taken over and several shaders have been fixed, created and then brought into Blender and then added to the main scene files. Soon, the shading portion of Widow will be complete, since much of the shaders are already to go, the shading fragments have been seperated for nearly two years now by the Blender Material’s that Daniel had defined while making the geometry.
Brings me to another topic, the actual reason for the shading pipeline with all it’s code, software and links. In the commercial Renderman world, the tool SLIM has been the standard for shader creation, after all it is developed by Pixar and nearly every studio that uses Renderman, use SLIM. Problem in the open source world is that there is no such solid link between shader source code and the final asset, that is until now. Prawn is that attempt, to take an existing shader editor, modify it so that there is a solid link between it, RIBMosaic and Aqsis. This involved changing header code, changing each block that contained a header include, changed the source code to output the correct variables and finally to make sure that the AOV channels were being rendered correctly. While it is possible to create the shader source from scratch, via a text editor, the complexity involving what goes to where and why, not to mention that most people who would want to really use this software tend to be artists rather than programmers, well this was intended to fulfill that very spot.
So this is why the shading pipeline was so important to create, test and use, it really is a proof in concept that there does exist a tool that is nearly as powerful as SLIM. It is true that shader’s similar to the type used for the movie “Wall*E”, this shader was pretty much applied to everything in the movie, involves mainly writing the code from scratch in a professional studio.
However when used with SLIM it is possible to use Maya attributes for shader variables, thus making “new” shaders using a single shader, similar to the original Mosaic surface shader. In concept. SLIM is just far more advanced. Prawn, Shrimp, WidowShade, SLer, Shaderman…. all these tools at one point in time were or are being created to fulfill a need. The need to visually create shaders, since not all artists are programmers, artists visualize things better than reading text, so even though it is pre-defined blocks of code, an artist can create new shaders, even if they are basic without ever having to write it out. Could the shader be made more efficient? Most likely, however in consideration of the pipeline in this example, a lot of things were tied in just to make it possible to use a shader creation tool, so I could test out a new shader in minutes rather than hours just based on the templates and connecting new blocks to others. Typing it out in code would, in MY case, would take a considerable amount of time.
Prawn is only a modified Shrimp 2.0 program, in fact the original Shrimp source dates back to 1999 and only in the past couple years gotten a complete overhaul. Now Prawn is a fork off of that project and is intended to be part of the Widow Pipeline. While the code remains largely the same, there are plenty of differences, mainly to make this a plug n play system, so that anyone involved with making a pipeline could simply plop this into the system and go. While it is a Linux only build, literally all you need to do is compile it and start creating. After getting the required support libraries like FLTK and Scons of course.
Another update is that the pipeline itself will finally be undergoing the long awaited upgrade. Since Blender 2.57 is stable on my system , plus our chief modeler is more adept in the new Blender than the old, not to mention the amazing work Jeff Doyle is making on RIBMosaic, well it is time to really test out the new generation of Blender to Renderman.



