Global Render Quality Control v0.1

Hey everyone!

I know it's been awhile since I've posted anything but here it goes!

I'm sure everyone else is like me and is always looking to speed up their test render times, and because of that I've put together a global quality UI. This UI gives you one simple control to scale all of your scene's quality parameters while storing your high quality attributes for returning back to the highest quality. Currently this tool only supports Renderman 4.0 but if there's enough interest, I can make it compatible with other renderers. 

You can get the script here:

Here's the current build's description:

GlobalQualityControlUI v0.1

Supports: RMS4.0

Installation: Place script in your scripts folder and restart maya. Run GlobalQualityControlUI to bring up the UI.

The purpose of this tool is to create a global control for all samples (lights, materials, transforms etc...) in a scene. This includes: 

shadowRays,smapSamples, volumeShadowSamples, areaSamplingU, areaSamplingV, reaLowSamplingU, areaLowSamplingV, maxSpecularSamples, maxLightSamples, minSpecularSamples, minLightSamples, sssSamples, nsamples, indirectDiffuseSamples, NumSamples, AntiAliasing Pixel Samples, Focus Factor, Motion Factor and Shading rate.

Adjust the slider to set your global samples for a scene, 1.0 is highest quality while 0.01 is lowest. Once you have chosen a quality, press the `Set!` button and your quality settings will be applied to all the objects in your scene. Your high quality attribute will be stored in a new attribute on your object by the name of "HQ_PRMAN_" and will be updated if any higher values are inputted at the time of pressing the `Set!` button.

The Max shading rate is a cap for the largest shading rate allowed. This helps prevent any textures or displacement from becoming too low res.

There is no guarantee that this tool will work, and I'm not responsible for any issues you may have. 
However, if you have any issues, comments, concerns or requested features please let me know at 

Happy lighting!


Mental Ray - Creating Rim Lights Easier

Rim lighting is always a finicky process that requires lots of finesse and trial and error to get to look the way you want in Mental Ray. In Maya's software render you can simply connect the samplerInfo.facingRatio into a rampShader.VCoord then plug that directly into a light's color but, unfortunately that does not work in Mental Ray (I'm not sure why) . I've come up with a work around for this by using the camera space normal direction output mode of the mi ambient occlusion shader.

Shading Network

The shading network is fairly straightforward. The occlusion node has its output mode set to 3 which is camera space normals. It Blue value (Z) is then hooked up into an RGB to HSV node so that it can be remapped in a ramp. The outputX of the RGB to HSV node is then plugged into the VCoord of a ramp which is then used to drive the thickness of the rim light. The light is then given a rim thickness attribute which can be used to control how thick the rim light is. If you're interested in trying this out or taking a closer look at it, here's a script that will create this network for you.

Make sure you're using mental ray or this will not work.

Also, there is a known issue that this does not yet work with raytraced shadows so you must use depth maps

MRRimLightShader.mel (Right click and save as)

Maya Light Master V 0.1a

I'd like to introduce Light Master V0.1a. The idea of Light Master is to focus on simplifying the workflow of lighting in Maya by having useful tools and settings all in one place. Currently the tool's main task is soloing lights. Soloing lights is essential when lighting but, unfortunately it can be a tedious and troublesome task. With this tool it is now a one click solution to specify one or more light(s) to hide or show.

At this point there's not too much to explain so here's the script. Just extract the MEL file into your script folder. Then type without the quotes `source LightMaster.mel` into maya's command line.

If you have any questions, issues, comments or ideas for future features please let me know.

Happy Lighting!

3DStimulus Day 2010

For those who made it to 3DStimulus Day, thanks for coming! Also thanks to Gael McGill, Alex Schwartz, Yuris Mangold and Chad Moore for volunteering their time to present. Finally, thanks to GET for putting the event together. For those who weren't able to make it to 3DStimulus day you missed some great presentations and networking, hope you can all come to the next event!

Also, for those interested here are the slides from my presentation. Hopefully they'll be useful. I look forward to delving further into this topic at a later event.

One Is The Ugliest Number

One is by far the ugliest number when it comes to working with color. A lot of people find it easier to work with HSV values as opposed to RGB values, mostly because it's much more intuitive. I don't blame them, I use mostly HSV myself. However, there are a few pitfalls that come with that territory. So when working with HSV make sure to check your RGB values for these issues.

Let's start by taking a basic image with 3 spheres The top left is pure red RGB(1,0,0), top right green RGB(0,1,0) and bottom blue RGB(0,0,1) as well as a plane underneath with a gray material RGB(0.5,0.5,0.5), for showing the light color. Keep in mind that this is a very drastic situation. As this entry will hopefully teach you, you almost never want RGB values of either 0 or 1.
For this first image we have a white light for a starting point.

If we look at the RGB values for this white light we have (1,1,1) which is good because they're not zero. Now lets try a different scenario.

This image has a pure yellow light in it with RGB(1,1,0)

Now it may seem obvious not to use a light of this color because there is a value of 0 for blue. But this same color in the HSV scale looks deceiving. The saturation in the HSV scale for this color is 1. No zeros, so there should be no issues you may think. However, a saturation of 1 means one or two RGB values equal 0. In the case depicted above this blue is that zero.

So maybe the problem lies in the materials. If we desaturated the materials there shouldn't be a problem....

This is what happens with a purely yellow light when its intensity is extremely high. Why doesn't it resolve to white?

Well, one must ask themselves what colors are required to make white, and they are red, green and blue. No matter how bright this light gets even with a white material on the sphere there will not be any blue present to create white.

The solution? Stay away from saturation values of 1! My recommendations for HSV are to keep the Saturation values below 0.8 and keep the Value between the range of 0.2 and 0.8. As for RGB 0.2 - 0.8 is a good range. Of course there are always exceptions to the rule but this is good for a general guideline.

Finally here are renders with saturation reduced from 1 to 0.8.



Copyright © kanooshka
Designed by Templates Next | Converted into Blogger Templates by Theme Craft