PDA

View Full Version : renderman compliant renderers image output w/ zbuffer?


crgowo
06-24-2003, 07:40 PM
can you render out an image with zbuffer info.
like and iff image or rla or rpf?
I can use bmrt, pixe, and aqsis. for some reason i never got 3delight to work. (all the free ones :))
thanks

WireFX
06-24-2003, 11:27 PM
I can only speak for the combination of Rhino + Rhinoman. But isnīt every shadowmap a image with only zbuffer info? So simply try to render a Shadowmap from a lightsource. Or in Rhinoman you can even say that a camera should output a zFile. Or do you want to have the zbuffer info as a separate pass?

pgregory
06-25-2003, 07:44 AM
Under Aqsis, if you render with the display device "shadowmap" you get a single channel tiff file with the depth values in it. i.e.

Display "depth.tiff" "shadowmap" "z"

HTH

Cheers

PaulG

fxjeane
06-25-2003, 02:34 PM
Whether an *.iff, *.rla or *.rpf image can be written from a RenderMan renderer depends on the implementation of the renderer. To my knowledge none of the renderers support those formats (at least on the default distribution).
However most RendeMan renderers will allow you to save out pretty much any geometric quantity or the name of a shader output variable (Ci, Oi, N,P) to a file.

You can render a separate depth pass by replacing your ususall

Display "MyImage.tif" "tiff" "rgba"

with

Display "MyImage.z" "file" "z"

This will work with bmrt 2.6

After that you will need a compositor that allows you to manipulate (add) channels to an image and then take advantage of that depth pass you rendered (for DOF, fog, etc).

I hope this helps

Fxjeane

Mauritius
06-26-2003, 01:55 AM
I prefer to use a z-depth shader because z-images contain no antialiasing. When using them for e.g. fogging in comp, overlapping objects at different depths can often create bad artifacts at the resp object's edge part which lies in front of another object.
This requires a compositing app however, which is capable of dividing by alpha. As color is always premutiplied by alpha in RMan.
In Shake this would mean an MDiv node, e.g.

.mm

crgowo
06-26-2003, 03:04 PM
What compositing software will let me use the zdepth form a seaperate file? Or do i need to combine then somehow. Cause i belive combustion doesnt let me use a zdepth form a seperate file, does AFX or digital fusion. Shake is way to expensive and has no demo :) so not even asking about that one. But ive heard the same thing with maya taht it doesnt antialias the zdepth channel.
ps how do i create a zdepth shader for renderman or maya. Thanks

Mauritius
06-27-2003, 02:43 AM
All compositing apps available do. A depth pass can also be seen as a grayscale image aka a matte. All comp. apps can handle mattes -- they're part of the most basic task you perform when combining two images.

Cheers,

.mm

crgowo
06-27-2003, 06:28 AM
i dont think you understood my msg.
if apply a zdepth shader to your images and render that out like you said and render out the scene with the original shaders. you have 2 files 1 with rgba and 2 with a greyscale zdepth. how do you get your compositing app to get the zdepth form the 2nd file. Cause i have tried it in combustion and i dont think its possible. In combustion at least. Thats why i ask if you need to combine them first to get a singe file with rgbaz? or use them seperatly in the comp app(and if so which one) and just have it use the greyscale from the 2nd image to be the zdepth in the first.

fxjeane
06-27-2003, 03:08 PM
I know Houdini Halo can do this.. you can bring in diferent raster images and apply them to your composite, then you can take advantage of those extra channels to do all sorts of crazy stuff.

They have a free "Aprentice Edition" you can get from sideFX's site as well as a bunch of videos to teach you how to use Halo.



www.sidefx.com


Good luck
Fxjeane

Mauritius
06-27-2003, 06:59 PM
crogowo, I understand you question very well. I'm talking of a z-depth shader which is st. entirely different from a plain z-depth pass.
The latter uses the "z" display driver.
A depth shader usually is just part of all shaders used in a scene and writes to an arbitary output variable which is written to a custom display.

There's a PRMan application note that describes this.

Cheers,

Moritz

Apollux
07-16-2003, 02:33 AM
Hi, first time posting on this forum :wavey:

Ok, this may not be the most sofisticated answer you could get, but certanly will get the job done.

First, on how to get the Z-Buffer info. Someone at the Blender forum gave me this trick, it can be used on every 3D program.

Add to your scene a Quad Fog and make it black. Set the Quad distance settings of the fog to mach the clip-start and click-end of your camera. Render to Black and White (or use a second app to make a greyscale of your render)... there you have it!

Now, on what software to use for composing with the Z-Buffer data... The Gimp comes with a filter just for that... it takes image A, Z-map A, Image B and Z-map B and then do a collage based on the Z-maps and a few settings of the filter.... since Gimp can work in Bach groups you would need to render your animation as separete frames. Not the most elegant solution, but will do the trick.

crgowo
07-16-2003, 04:47 AM
Thanks for the response.... but what do you mean by sepearte frames?

Apollux
07-16-2003, 05:15 AM
Let me give you an example.

Let's say that your animation is 30 frames long (about 1 second if runs at 25 frames per second, but that is not important on this case).

Normaly you would render the animation to some type of video format, something like AVI, MPEG, DIVIX or alike.

All decent (and not so decent) 3D program that is capable of rendering to a video file can also render to separate still images.. the same images that make out the video. For this example, asuming the video is called Test.avi, them those separate frames would be something like 'Test001.jpg', 'Test002.jpg', 'Test003.jpg'... 'Test030.jpg'.

So, instead of having one big video file now you have 30 little images... those images can know be bach feeded into gimp.

NOTE: Actually, Gimp can take the one big video file and break it down into the 30 little images, but that is still a very experimental feature of the program.

Apollux
07-16-2003, 05:41 AM
Here is the explanation of the Depth Merge Filter of The Gimp
http://manual.gimp.org/manual/GUM/Plugin_combine.html#446060

Humm... after reading the manual, rendering to a normal video and alowing Gimp to break it down to individual frames no longer seem like such a bad idea.

crgowo
07-16-2003, 02:45 PM
ah ok ya i always render out in frames. Just wasnt sure if thats what you were talking about. thanks again.

CGTalk Moderation
01-15-2006, 11:00 AM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.