Digital Visual FX
Renderman and 3delight
Renderman and 3delight
May 19th
1. attach 3delight geom (attribute visibility > transmission rays > shader) and “s_RP_stainedglass” shader to “window” geometry. The shader is from the book which is worth buying.
2. Attach a 3delight light attribute (add “arealight” attribute and tweak samples for speed) to an area light (with ray trace shadows)
Mar 5th
This only works in the 3delight for Maya Plugin and not currently in the 3delight Studio Pro Package.
3delight has shipped with a sun and sky shader for a while, but there have been issues around them (which I believe the developers are looking into). Now with the support for the MR shaders its easy to get something setup quickly and with the use of scripts to modify the time of day, year, location etc.
Ok first thing make sure that you’ve got Mental Ray plugin loaded
Window –> Settings/Prefrences –> Plug-in Manager, find in the list Mayatomr.mll and check Loaded is Autoload.
go to Window –> Rendering Editors –> Render Settings . Change drop down menu ‘Render Using’ to Mental Ray
From the ‘Indirect Lighting’ tab create a ‘Physical Sun and Sky’
In the Maya Outliner you can now see a ‘Sun Directional light has been created and in the utilities of the hypershade there is a mia exposure, mia physical sky and mia physical sun. There are mel scripts available to change the directional light based on the time, julien day etc. I recommend to download the ‘TOI’ set of tools to do this.
Create a 3delight pass , turn on global illumination in the render setting with add to final mix. Heres some quick and nasty renders.

This one was overblown so I tweaked the shading multiplier in the mia_physicalsky

Heres one with a change of time using the TOI script

In addition I would look at modifying the directional light and shadows color temperature based on the time of day. These images don’t feature any aerial perspective shading. The viewer would normally expect to see destauration based on distance – dependent on time of day again.
Sep 18th
This is another neat technique modified to work with 3delight.
Each sphere has a random texture applied from a group of 8 (see the mel script for more details)
Quoted from the pixar tutorial
“Primitive Variables are a powerful feature letting you pass information to your shaders on a per object basis. If you have
already completed the Primitive Variables tutorial from the introductory section, you will be aware of how useful they are.
However, you may have noticed there are no string PrimVar nodes in Slim or Hypershade. Using our understanding of
RIB and PrimVars we can easly create a workflow for passing arbitrary strings to our shaders. This could easily be
scripted to randomize a number of texture maps over leaves or stones; or to pass other arbitrary string data to our
shaders.”
Run the mel script on the selected geometry (you will need to modify a couple of details in the script)
Here is an example rsl node surface shader. Cheers Ogre
RSL NODE
parameters:
shader_input string Tex
output color out
code:
out = texture(Tex);
Sep 13th
Went through the tutorial on creating color variation through PrimVars
. Just a few tweaks to the original script so it works with 3Delight.
To summarise
1 Create a ramp shader and name in this example “Leaf_ColorRamp”, put colors in to taste. Right Click and Break connection on UV Coords.
2. Select all the pieces of geometry and run mel script.
The mel script creates a random unique color pulled in from the rampshader for each piece of geometry.

3. Create a RSL node in hypershade and connect o_outcolor to outcolor of surface shader. Download example.
rsl shading parameters
shader_input color SurfaceColor
output color o_outColor
shading code
o_outColor = SurfaceColor;
Sep 12th
Pixar have made a stripped down version of Pixar’s RenderMan Certified Course available to anyone registered on the forum. Some useful Introductionary and Advanced How To’s. Enough to be getting on with.

Aug 5th
Feel free to download and pull apart.
DOWNLOAD MAYA_FILE
DOWNLOAD PDF
This is basic lambert shaders, if anybody would like to modify/upload with their version showing refraction, reflections, sss, etc that would be good to see.
stage one – capture direct illumination
stage two – pull in ptc from stage one and run gi, ambient occlusion, bleed
Jun 28th
Get yourself over to the xsi community forum for some nice test renders using 3delight with XSI.

image by Mathaeus
Jun 23rd
A useful script from Einar Gabbassov.

Put in mel script folder
create a mel button e.g
source “C:/Program Files (x86)/3Delight/maya/scripts/Anteprima.mel”;Anteprima;
Jun 20th
1 – create and output the Hi-res geometry
under 3delight render output – rendermode – rib archive
2 – create the lo-res geometry to fit around the border edges of the hi-res
3- create a geometry attribute and attach to the lores geometry (done through the 3delight menu)
4.- add in the following in ‘post geo mel’ of the geom attribute (change the $filename=”" and -bound details to the relevant details)
$filename=”C:/box_archive.rib”; RiProcedural -archiveName $filename -bound -14.18140411 8.21198082 -2.399588108 2.399588108 -11.89727116 10.49611473;
5 if we look in the //comment section of the outputted archive.rib created in stage 2 we can fill in the correct -bound numbers into stage 4 (cheers aghiles!)
example
# Bounds -14.18140411 8.21198082 -2.399588108 2.399588108 -11.89727116 10.49611473
#
# Start of geometry shader archives.
or a script solution (thanks ogre)
“If your rib file was exporter from 3dfm, or has bounds in the same format, you can use this command to read them
float $bounding_box[] = `RiReadArchive -rb true -an $filepath`;”
heres a quick example using some dynamics

— tip – group proxies before turning into rigid bodies, when dyanamics has run go to the frame where the pieces have settled in place, edit > delete by type > rigid bodies so that geometry is frozen in place
next thing is to look at mixing things up with a little randomisation in the RiProcedural to pull in variations on ribs.
Jun 13th
Uploading a sample of what needs to be done to loop an animation using a library of RIBS. Props to Bertrand and all. Using Rib Archive offers the benefits of low calorie geometry duplication – good for crowds.
1. Output RIB sequence.
2. Add RIB Archive – under 3delight menu
In this example I put in the address to the sequence. Note the use of the “#”
Z:/Autodesk/Maya2008/projects/Ri_Scripting/bird_arch.#.rib
3. Create a Geometry Attribute and attach to the RIB Archive. In my example I put the following into the Post_Geo mel script into the Geom Attribute.
///
int $currentFrame = `currentTime -q`;
string $ribNum = “”;
int $loopMe = fmod($currentFrame,24);
if ($loopMe < 10)
$ribNum = ( "000" + string( $loopMe ) );
else if ($loopMe < 100)
$ribNum = ( "00" + string( $loopMe ) );
RiDelayedReadArchive -an ("Z:/Autodesk/Maya2008/projects/Ri_Scripting/bird_arch."+$ribNum+".rib") -b xmin xmax ymin ymax zmin zmax;
//////
In the example I had outputted a 24 frame sequence
so note the 24 in "int $loopMe = fmod($currentFrame,24);"
.... heres a quick and dirty example. i just duplicated the archive and moved around the copies. It's a bit robotic at the moment with timings being all the same, so need to offset the loops.....
Untitled from digital vfx on Vimeo.
Recent Comments