Houdini 12 Rendering
How do I do a quick render of the current view?

Click the Launch render button in the toolbox on the left side of the viewer. See rendering an image for more information.

Can I render part of the view to, for example, check shaders?

Yes, click the Render Region tool in the toolbox on the left side of the viewer. Drag a rectangle around the area of the viewer you want to render. See rendering an image for more information.

How do I control the speed/quality of my rendered image?

See how to control the render quality.

How do I change the output resolution?

The output resolution is set on the camera by default. In the parameter editor for the Camera node, click the View tab and edit the Resolution. See the Camera node help for more parameter information.

How do I position the camera using the view keys?

Houdini’s viewer does not automatically correspond to a camera as is the case in some 3D software. See camera tips for how to choose a camera and lock it to the view, so changing the view moves the camera.

How do I display “proxy” geometry in the viewport and use higher resolution geometry at render time?
How do I turn on shadows?

Shadows are controlled on the light. Select the light object and click the Shadow tab in the parameter editor. See the shadow help for more information.

How do I make an object not cast shadows?

Use shadow linking to control which objects cast shadows from which lights. See the shadow help for more information.

How do I make an object cast shadows but not appear in the render (phantom object)?

Turn on the Phantom checkbox on the object’s Render tab.

How do I set the depth of field?

See depth of field.

How do I turn on motion blur?

In the parameter editor for the render node: Properties tab, Sampling sub-tab, Allow motion blur checkbox. See motion blur. See the Mantra node help for more parameter information.

How do I render an animation instead of a still image?

See how to set up a render.

How do I insert the frame number into the filenames of the rendered frames?

See expressions in file names.

How do I render curves?

Mantra automatically renders curves as a polystrip with a default width. To change the rendered strip’s width or orientation, add a width float attribute and/or an orientation vector attribute to the curve. To render curves as tubes, use the Wireframe or PolyWire surface nodes to create tube geometry.

How do I send a rendered image through the compositor?

The Render compositing node brings the rendered images from a render node into a compositing network. You can use the File output compositing node to write out the composited frames, or the Composite render node to bring the output of a compositing network into the rendering network, allowing you to wire it into a dependency graph.

How do I do distributed rendering in Houdini?

Mantra includes support for distributed rendering of a single frame. If you want to distribute frames of an animation, you will need a render queue manager such as Alfred (see the Alfred render driver).

How do I render to RenderMan from Houdini?

See rendering with RenderMan and rendering with AIR.

How do I automate rendering?

See batch rendering, how to render from the command line, and setting up render dependencies.

What can I do to make huge scenes more efficient?

See rendering with a large number of polygons.

How do the different “rendering engines” work?

See understanding mantra.

What’s the difference between ray-tracing PBR and micropolygon PBR?

PBR is a shading method, so it can use either micropolygons or raytracing as the method for generating samples. Micropolygon PBR uses micropolygon refinement and shades the vertices of the micropolygon grid. Ray-tracing PBR sends rays from the camera and shades ray hits. See understanding mantra for more information.

Micropolygon PBR smears the colors, so you get faster and less noisy motion blur with micropolygon PBR, but better color accuracy with raytracing.

What does the pathtrace VEX function do?

It works like irradiance but uses the PBR engine for evaluation.

Can I evaluate a BSDF variable in a VEX shader?

Yes. See the eval_bsdf function.

What can I do if I get minute-long delays when I render?

If you are using DHCP to obtain the IP address of your computer, try switching to a static IP address.

How do I get precise filenames with $FF?

Houdini will sometimes have precision issues with $FF. For example, instead of 0.2, it might generate 0.19999. So if you need a more precise result, you can use the following Python expression, which is guaranteed to have 1 decimal digit of precision.

pythonexprs('"%.1f" % float(hou.frame())')

The ROP will use %g to print out the floating point frame. Since the precision of float/double is hard to predict, using this fixed format will give you much better results.

Houdini does not have the ability to specify a format when expanding a floating point number, so there is no way to guarantee the significant digits in a variable expansion.