Recently I’ve been working on some R&D for stereo 3D environments and pipeline issues.
One big issue is that cheats that you become accustomed to in production such as projections and bump maps break in an awful lot of circumstances when viewed in stereo, so very fine displacements will come in quite handy.
Since ZBrush 3.5 (and earlier if you knew how to break Multi-Displace’s cryptic code), it’s quite easy to generate single channel gray (1×32 bit) displacements instead of traditional (3×32 bit) maps… essentially giving you the same amount of detail in 1/3 the disk space and network throughput overhead… and RAM overhead if the entire texture needs to remain in memory.
PRMan in Maya handles single channel gray float TIFFs just fine, but Mental Ray (as of Maya 2010) doesn’t. The old swiss army knife imf_copy won’t recognize the files either to convert them to another friendly format, such as .map if you’re having RAM issues.
More after the break…
(more…)
January 5th, 2010

Working on reel updates currently, but wanted to share this piece ahead of time.
http://www.treyharrell.com/downloads/PriusBreakdown-H264.mov
I tracked & stabilized the background plate, then lit & shaded a stock Prius model and replaced the car in the original shot. I used some photogrammetry techniques to project accurate ground reflections back onto the car, and hand-painted an HDRI skydome based on the background plate.
Minor amounts of roto & paint fix to complete the illusion in comp. Maya, Renderman Studio, Syntheyes and Shake used. 3 days to complete the shot including render time.
September 21st, 2009
I had a request today to put together a Mac universal compile of domeAFL. Since I had to make a few tweaks to get it building properly under OS X 10.6 Intel, I’m sharing my build and sourcecode. Someone else out there might find this useful.
It’s a mentalray lens shader that does 180° distortion for projection on planetarium / IMAX domes. Might come in useful if you want to unwrap your own scene for IBL effects as well.
Also worth mentioning that this isn’t just a universal compile, it’s a fat universal compile: PPC, Intel 32, Intel 64 in a single .so. I figure Autodesk might release a 64 bit Maya on the Mac side one of these years, so why not?
The compiled shader and source code are attached below:
th_DomeAFL.zip full package (including source) for Maya 2009 SP1a and later: OS X PPC/Intel32/Intel64
th_DomeAFL for Maya 2008 SP1 (shader only): OS X PPC/Intel32
September 8th, 2009
I’m about a month into using Renderman Studio v2, and I’d like to share a few random hints about how to get things working how you’d expect them to. This list is generally for people who are used to the mental ray/Maya way of doing things.
This first collection is about one of PRMan’s strongest points: displacements. It’s absurdly fast due to how the REYES architecture handles micropolygons, and it barely has any RAM footprint at all.
(more…)
September 1st, 2009
As cool as mental ray is, when interacting with it through Maya one often feels like they’re on the wrong end of an abusive relationship.
To speak plainly, integration and workflow sucks, and once the honeymoon wears off with the bells and whistles (”Car paint! Cool! SSS! Cool! Arch Materials! Cool!”) you come to realize that the foundations of the Maya integration are buggy as hell, and quite likely never to be polished or fixed. Sometimes you just want to slap shaders on a model and hit render — particularly when you’re the entire pipeline.
MR is certainly useable in production when you’ve got dedicated lighting and render wrangling TDs… but when I’m trying to knock something out quickly at home, I find myself spending entirely too much time tuning out the grain and getting render times under control.
Again, fine if it’s my job to be the guy who gets to bake FG, and tweak sample rates to get average render times manageable, wire up rayswitches and the production shaders (poster child for sharp edges here) to get accurate shadow extraction etc… but if I’m working on a project 100% myself — man it’s a time sink that should be mostly unnecessary these days (particularly after working with PRMan, 3DLight and VRay in production environments).
(more…)
August 14th, 2009
I think most people that have used ZBrush have gotten something really cool (or at least promising) sculpted out, and had either lower levels of subdivision get corrupt, or have your geometry get mangled… either through a crappy basemesh that you used to get up and running quickly, or invisible bad topology on a mesh that you tweaked point by point.
In this case, I was just noodling a concept from a stock basemesh that had terrible topology and I ended up losing my lowest sub-d levels at a pretty early stage. The model and texturing aren’t the greatest, but they’re not meant to be. They’re meant to be fast exercises to help arrive at a final product faster.
The following video is a half-hour step-by-step walkthrough of how you can find yourself in that situation, and how to recover your detail on a clean mesh.
Strictly speaking, the workflow is a retopology technique, but I’d never seen it applied to imported meshes with new UVs, and I’d definitely never seen recovery of polypaint/texturing info from a mucked up model.
http://www.treyharrell.com/tutes-2009/medretopo-pt1/
Approximately 30 minutes, embedded Flash video @ 800×600
February 11th, 2009
My 3D Still gallery has been updated with a few more recent images. Included in the updates are another coffee fix that was a test for a new lighting rig that I’ve been working on, and the riveting conclusion to the Godzilla modeling series.
January 27th, 2009
I love being able to triple boot Linux, MacOS X and WinXP x64 on my main Mac for 3D & web development work, however Windows handles time zone offsets differently from every other OS out there — so when you reboot into Windows, you’re looking at a 4-5 hour difference (EDT currently).
Apple’s Boot Camp drivers handle resynching the time automatically, but they don’t work with WinXP 64 (only Vista x64), so I’ve hacked together a quick .bat script that’s intended to be placed in your Startup Items folder (under the start menu).
It includes two longish pauses: the first because sometimes the startup items get invoked before the network card initializes (silly Windows). The second is so that you can read the result if the script fails before the shell window auto closes.
At any rate, just paste the following into Notepad and save as timesynch.bat in your Start Menu startup items (C:\Documents and Settings\All Users\Programs\Startup\)
@ECHO OFF
ECHO Preparing to resynch time to Internet time server ...
TIMEOUT 10
w32tm /resync
ECHO Execution complete ...
TIMEOUT 5
September 26th, 2008
Now available: compiled Mix20Layers for OS X Universal (modified by Jan Sandström, based on Mix8Layers by ctrl.studio).
Like the last batch of shaders, this is also available on Pixero’s site at http://www.pixero.com, under his Shaders -> Mental Ray area. The universal .so is contained within the standalone shader package toward the bottom of the page.
Big thanks to Jan for allowing me to compile these!
June 5th, 2008
I’ve been working on getting my OS X render slaves integrated into my Win64 Maya environment recently, and it’s been very difficult to find matching OS X Universal compiles for common Mental Ray libraries.
Anyhow, I’ve started compiling some of the more common libraries for other people in the community who are in the same boat as me.
Jan Sandström (Pixero) just posted OS X Universal .so libraries that I compiled this weekend for the his entire JS_ series shader libraries on his site. Pop over and check them out, (under shaders->mental ray) and let me know if there are any bugs!
You’ll need to download the main packages for each shader you’re interested in, and the large .zip containing all of the Universal .so’s (also on that page).
Also, if you’re a Mental Ray shader writer who’s getting nagged all the time by people like me to make Universal compiles, drop me a line and I’ll be happy to help out.
June 3rd, 2008
Previous Posts