Forum: Carrara


Subject: Irridescent Shaders

mf193 opened this issue on May 27, 2002 ยท 9 posts


DotPainter123 posted Wed, 29 May 2002 at 4:57 PM

Here is the low down on the irridescent shader concept I am working on: The main idea is to simulate that basic scattering properties of a irridescent shader (see BRDF above). Irridescence is a combination of highlight, reflection and sometimes color scattering. My tests focused mainly on the highlight, reflection and even transparency channels. With this basic idea in mind, I moved to Carrara. I looked at the Carrara shader tree to find a way of splitting a highlight into two (or more) colors based on surface angle. The shader components I found were elevation, slope and snow. Given these components, I created some highlights with contrasting colors, like pink and green or blue and yellow, to simulate the wavelengths of the scattered light. Using a simple two color shader with slope, snow or elevation in the highlight channel and a low or 0 shininess value, generates a decent display of the concept. The same goes for the reflection layer, but for this there must be something to reflect to show it off the best. Another important consideration was to find a model with suitable surface complexity to show off the color variations. As you can see above, the vase is turned on it's side so that I could see the variations of colors in the highlight, reflection and transparency channels as a result of the change in slope on the surface. These were some of my first tests and if you look at the image in the gallery, the upright vases dont show much color variation, even though the clear glass vase uses the same shader as the first one posted here. The next consideration had to go to lighting. In order to provide for the maximal amount of highlight area over an object's surface, it is necessary to have multiple lights (no special color), or a sky dome to spread out the highlight. In another series of tests, I used a free model of Athene from Despona graphics with a skydome. The shaders I had up to this point had to be tweaked a lot in order to get satisfactory results (and I am still working at it). I will post an example of these tests next. Suffice to say, I have a lot more testing to do. My shaders have gotten a lot more complex and sometimes give good results. However, I have started creating layered shaders with up to 5 layers or more and it gets a bit overwhelming to manage. Using layers in this fashion allows for multiple layers with different colors and more complex patterns in the highlight and reflection channels. But to bring out these variations and to simulate a true BRDF shader, I have been using transparency in all but the last layer, to allow each layer to show through the next. The last layer has no transparency and has a higher opacity value, so that the overall object is not transparent. More work however has to be done in this area. Anyway, I hope this provides some useful info on setting up irridescence and a basis for more experimentation. .Painter