mip_binaryproxy

david | mentalray, rendering, tutorials | Thursday, October 30th, 2008

I was looking through the "Whats New" section of the maya 2009 manual and read this about Render Proxies

Use render proxies with mental ray rendering to manage large scenes with complex geometry. Export your complex object as a mental ray assembly file, then replace it in your scene with a placeholder object that references this file. When you render, the exported object is loaded into memory and rendered with the rest of your scene. Translation time and memory usage are cut down, allowing mental ray for Maya to render large scenes.

And that prompted me to write about the mip_binaryproxy node. Those of us who are sticking with maya 2008 for the time being can use mip_binaryproxy to implement render proxies almost as easily as our friends with maya 2009. (more...)

mip_gamma_gain and mentalRaySwatchGen

david | dj mod, mentalray, rendering | Wednesday, October 22nd, 2008

Using a linear workflow always requires some gamma correction somewhere. If its within a maya shader network then you have some choices. The most obvious is maya's standard gammaCorrect node.

If you have maya2008 or 2009 then there is also mentalray's mip_gamma_gain node (which is hidden by default, but is easy to expose).

mip_gamma_gain

These two nodes perform the same basic function, with a few differences.

Maya's standard gammaCorrect enables independant gamma control of the three color channels.

While mr's mip_gamma_gain offers the simplicity of a single value gamma and throws in a gain control and a reverse switch for inverting the gamma value (saves you having to get the calculator to figure out the inverse of 2.2).

Until very recently, I had always used maya's gammaCorrect. And for one reason only - I like its colorful and meaningful hypershade swatch because it is easy to see in a busy hypershade window.

mentalRaySwatchGen

Now I'm starting to use mip_gamma_gain instead because it occured to me that I can modify mentalrayCustomNodeClass.mel ( in C:\Program Files\Autodesk\Maya2008\scripts\others) and get it to display a swatch that has one of those updating shader balls. That means I can see the actual result of the gamma change.

Although it makes the gamma nodes harder to find in the hypershade window, I'm finding the visual feedback useful.

If you want to try this, make a copy of mentalrayCustomNodeClass.mel into your local scripts folder and edit your local copy. The file has an obvious structure, so look for the "Internal MentalRay Nodes" section and add these lines after it.

if ($nodeType == "mip_gamma_gain" )
return "rendernode/mentalray/material:shader/surface:swatch/mentalRaySwatchGen";

You should also comment out the original reference to mip_gamma_gain.

linear workflow and gamma update

david | mentalray, rendering, tutorials | Monday, October 6th, 2008

Last month I wrote about how I implement a linear workflow in my work. Since then I have noticed that in at least one area I'm doing it differently to many others - and now I know why they are right and I was wrong.

It boils down to this: I've been leaving my frameBuffer gamma at 1 (the maya default) and setting my output gamma to 2.2 via an exposure node, which means I need to degamma my 8 bit fileTextures (but 32 and 16 bit floats are ok). However the other (very popular) approach is to set the frameBuffer gamma to 0.455, and the output gamma to 1, which means generally the fileTexture requires no degamma.

When making my choice I weighed up both methods and I said to myself "The frameBuffer gamma defaults to 1 and the exposure node defaults to 2.2 gamma, so I'll stick with that. After all, it looks the same in the render..." BUT ITS NOT! (more...)

linear workflow and gamma

david | mentalray, opinions, rendering | Saturday, September 13th, 2008

I'm going to start by saying that I do not consider myself and expert on this subject, but I'm going to write about how I have adapted my methods to deal with the "linear workflow" thing in my day-to-day work.

If you have never heard the term "linear workflow" then you must have been really busy doing something else for the past year, because it has been discussed over and over in forums and blogs. I've done a lot of reading and managed to confuse my thinking on numerous occasions, but lately it all seems to be falling into place and I feel like some kind of born again "linear workflow" convert. And like most new converts, I feel compelled to spread the word.

(more...)

mib_continue and mip_rayswitch

david | mentalray, rendering, tutorials | Thursday, September 11th, 2008

I read a thread on cgTalk, which was started by Filip Orrby, in which he asked "How to make object not block FG rays?". He went on to answer his own question and since it is similar to a technique I use, I decided to elaborate.

I'm going to write about a shader and lighting setup I use a fair bit for product shots, where the background is very simple, often white and the product is to be brightly lit. For my final renders I usually break things into render layers, but I like to be able to quickly render everything in one pass to evaluate my animation and to show my progress to the client.

Here is a typical example of the end result.

mib_continue_YES.jpg

To see a step-by-step breakdown of the setup, click here (more...)

particleSamplerInfo update

david | mentalray | Monday, July 21st, 2008

I added some more screen shots to yesterday's post as well as an example scene file download. If you had problems with the mp4 movie there is now also a link to a sorenson3 version. If you are on vista 64 then the embeded movie wont have any controls (due to a quicktime limitation) but if you scrub along the bottom you should be able to get it playing.

particleSamplerInfo smoke

david | mentalray | Monday, July 21st, 2008

In the past few years I have often been asked to create smoke for a variety of different visual effects. There are many ways to do it in maya using particles or fluids so I choose one that suits the job. Last week I needed to use particles and that led me to an interesting discovery - how to use the particleSamplerInfo node.

I had seen it before, in the hypershade Create menu, but I'd never tried to use it. But then I stumbled upon this archived post on cgtalk where Anders Egleus said

I've recently tested rendering particle clouds in mentalray instead of maya software and I'm very happy with how mentalray shades and motion blurs particle clouds.
...
It seems that turning on the local attribute in the 3d texture doesn't seem to have any effect when rendering with mental ray. No matter how I try, the particles seem to "swim" through the texture.

For years I've been rendering particle clouds (with the software renderer) and I didn't realise that I could turn on the local attribute in the effects tab of the texture node to stop the particles swimming through the texture. I've always done things like animating the place3dTexture node or the texture's time attribute to try and hide it, but was never totally satisfied with the results.

These days I use mentalray for most things and I also like the way it shaders particle clouds, so I wanted to fully understand the rest of Anders' post. Read on to see where it got me. (I'm very happy with the result). (more...)

djParentShape.mel

david | animation, mel script | Sunday, July 6th, 2008

I've been doing a fair amount of rigging where I use joints and empty groups as controllers. I try to minimize the need for going to the outliner to select things by adding shapeNodes to these controllers so that they can be selected directly in the viewport.

To parent a shapeNode to a different transform you need to use the command

parent -r -shape;

but often you'll get the shape jumping to a new location when it adjusts to its new parent. If that happens you can select the cv's or verts and move them to where you want them, but if you are doing this alot it can get messy and becomes time consuming. And that was the motivation for writing djParentShape.mel

With djParentShape you select the new controller object, shift-select the joint and run the script. It has two modes of operation: move to position or preserve position so you simply choose the one you need.

Download from here.

Keep reading for details... (more...)

toggle hypershade thumbnail updates

david | dj mod, mel script | Friday, July 4th, 2008

A few weeks ago I saw this thread on cgtalk where Matt Estela offered a workaround for the slowness that we experience when using the hypershade when complex shaders or shaders with large file textures are involved. The update lag seems worse if some of the new mia shaders are involved. Matt's workaround is to simply disable the thumbnail updates while you are changing attribute values and to re-enable the updates again later when its more convenient.

I spent some time modifying a maya2008 sp1 mel script called hyperShadePanel.mel to add Matt's suggested workaround to a new button. Its the one with the little green shader ball icon in the center collumn as shown here

thumbnailUpdatesToggleButton.jpg

You can use it to toggle thumbnail updates on and off. You'll get one of those purple warnings in the info window to tell you the update state has changed.

warningMessage.jpg

You can download my modified version with the button icons from my downloads page. Put hyperShadePanel.mel in your local scripts folder and the xpm files in your icons folder and you'll get the new button when you restart maya.

Download here.

I previously uploaded an earlier mod version soon after reading the cgtalk post, but the button behavior was slightly awkward. This has been corrected now, so this note is for anybody who tried it before - its better now.

tips for rendering maya fur with mentalray

david | mentalray, rendering, tutorials | Sunday, June 29th, 2008

I've been working on a project involving the use of maya fur. It's the first time I have rendered fur using the mentalray renderer, so there was much to learn. One of the difficulties I encountered was dealing with the illumination of near-white colored fur (like a polar bear). In the past, using maya's native software renderer, I would have added fur shadowing attributes to my lights to allow me to control and balance the amount of illumination on the fur, but these attributes are not supported by mentalray so I had to find another way.

In this post I show an approach to rendering near-white colored maya fur with mentalray.

(more...)

Next Page »

Powered by WordPress | Based on a theme by Roy Tanck