Houdini 12 Nodes Object nodes

Light Objects cast light on other objects in a scene.

Light Objects are those objects which cast light onto other objects in a scene. With the light parameters you can control the color, shadows, atmosphere and render quality of objects lit by the light. Lights can also be viewed through and used as cameras (Viewport > Camera menu).

Parameters

Transform

Keep Position When Parenting

When the object is re-parented, maintain its current world position by changing the object’s transform parameters.

Pre-transform menu

This menu contains options for manipulating the pre-transform values. The pre-transform is an internal transform that is applied prior to the regular transform parameters. This allows you to change the frame of reference for the translate, rotate, scale parameter values below without changing the overall transform.

Clean Transform

This reverts the translate, rotate, scale parameters to their default values while maintaining the same overall transform.

Clean Translates

This sets the translate parameter to (0, 0, 0) while maintaining the same overall transform.

Clean Rotates

This sets the rotate parameter to (0, 0, 0) while maintaining the same overall transform.

Clean Scales

This sets the scale parameter to (1, 1, 1) while maintaining the same overall transform.

Extract Pre-transform

This removes the pre-transform by setting the translate, rotate, and scale parameters in order to maintain the same overall transform. Note that if there were shears in the pre-transform, it can not be completely removed.

Reset Pre-transform

This completely removes the pre-transform without changing any parameters. This will change the overall transform of the object if there are any non-default values in the translate, rotate, and scale parameters.

Transform Order

The left menu chooses the order in which transforms are applied (for example, scale, then rotate, then translate). This can change the position and orientation of the object, in the same way that going a block and turning east takes you to a different place than turning east and then going a block.

The right menu chooses the order in which to rotate around the X, Y, and Z axes. Certain orders can make character joint transforms easier to use, depending on the character.

Translate

Translation along XYZ axes.

Rotation

Degrees rotation about XYZ axes.

Viewing Options

Display

Whether or not this object is displayed. Turn on the checkbox to have Houdini use this parameter, then set the value to 0 to hide the object, or 1 to show the object. If the checkbox is off, Houdini ignores the value.

Icon scale

Scales the viewport geometry. This parameter is only for display purposes.

Cache Object Transform

Caches object transforms once Houdini calculates them. This is especially useful for objects whose world space position is expensive to calculate (such as Sticky objects), and objects at the end of long parenting chains (such as Bones). This option is turned on by default for Sticky and Bone objects.

See the OBJ Caching section of the Houdini Preferences window for how to control the size of the object transform cache.

Viewport Selecting Enabled

Object is capable of being picked in viewport.

Select Script

Script to run when the object is picked in the viewport. See select scripts .

Lookat Options

Look At

Object to point to. Constrains an object so its -Z axis always points at another object’s origin.

Look At Up Vector

When specifying a look at, it is possible to specify an up vector for the look at. This controls the roll of this object when looking at the look at object.

Don’t Use Up Vector

Use this option if the look at object does not pass through the Y axis of this object.

Use Up Vector

This precisely defines the direction of the Y axis of this object while looking. The up vector specified should not be parallel to the look at direction. The value used is specified by the Orient Up Vector parameter below.

Use Quaternions

Quaternions are a mathematical representation of a 3D rotation. This method finds the most efficient means of moving from one point to another on a sphere.

Path Options

Path Object

A reference to the curve node or object you want this object to follow.

Roll

The orientation of the object around the path.

Position

The position of the object along the path. 0.0 means at the beginning of the path, and 1.0 means the end. The integer portion of the position is used as the primitive number inside the geometry while the fractional part indicates the u value on the primitive.

If the primitive number does not exist, then it is wrapped back to the beginning. So for numbers greater than 1.0 in a path object that only have a single primitive, it wraps around to the beginning again. You can easily animate something moving around a circular track simply by continuously increasing the position value.

Keyframe this value to animate the object moving along the path.

Note

The Follow Path tool on the shelf automatically sets keyframes on this parameter that you may want to edit or replace.

The Parameterization option controls how position values between 0 and 1 correspond to knots on the path curve.

Parameterization

Controls how the Position parameter is translated into a point on the path curve. Use Arc-length (the default) to interpolate the position values evenly along the physical length of the curve.

Use Uniform to distribute the position values between the knots of the curve. This lets you slow down the object at certain points by bunching up knots in the path curve. However, it is much more convenient to simply edit the animation curve to control the speed of the object along the path.

Orient Along Path

Orient the object according to the path’s curvature.

Orient Up Vector

The direction vector of the object’s Y axis to orient with.

Auto-Bank factor

Controls automatic banking of the object as it turns corners. Set this to 0 to turn automatic banking off.

Light

Light Type

The type of light. See the description of light types.

Point

A light that emits light from a specific point in space defined by the transform for the light.

Line

A line light which is from (-0.5, 0, 0) to (0.5, 0, 0) in the space of the light.

Grid

A rectangular grid from (-0.5, -0.5, 0) to (0.5, 0.5, 0) in the space of the light.

Disk

A disk shaped light. The disk is a unit circle in the XY plane in the space of the light.

Sphere

A sphere shaped light. The sphere is a unit sphere in the space of the light.

Geometry

Use the object specified by the Geometry Object parameter to define the shape of the area light.

Distant

A directional light source infinitely far from the scene. Distant light sources cast sharp shadows, and so are candidates for the use of depth map shadows.

Sun

A finite sized (non-point) directional light source infinitely far from the scene. Sun lights are similar to distant lights with the exception that they produce a penumbra - similar to the actual sun.

Environment (Deprecated)

Note

In Houdini 11, you should use the Environment Light object rather than the environment area light shape.

Light Color

The color of the light source.

Light Intensity

A scale on the color. If the intensity is 0, the light is disabled. The light will only be sent to the renderer if the object is included in the Force Lights parameter of the output driver.

Light Enabled

Turning this toggle off is equivalent to setting the light intensity to 0.

Enable Light In Viewport

Turning this off removes the light from consideration in the viewport. This is useful for lights which only make sense at render time.

Diffuse contribution

The light will contribute to diffuse illumination when illuminating a surface.

Specular contribution

The light will provide specular highlights on the surface when illuminating a surface.

Categories

The space or comma separated list of categories to which this object belongs.

Currently not supported for per-primitive material assignment (material SOP).

Sampling Quality

The sampling quality for area light sources and sun lights. Depending on the area of the light source, more samples might be needed to provide smoother illumination. Sampling quality is specified relative to the ray sampling parameters on the mantra ROP - so if the ray samples on the ROP are set to 4 and the sampling quality is set to 4, 16 samples will be used for the light source.

Render Light Geometry

Causes the light source geometry to appear as an object or background in the render, as if an extra geometry object were created with the same geometry as the light source. Render light geometry can be used to identify the actual brightness of area light sources when debugging the intensity of specular highlights, and to aid in the placement of light sources in IPR renders.

Spot Light Options

Spot lights change the illumination of a light source based on the angle with the light source viewing direction. In the diagram above, the area within the center ring receives full illumination. The light falls off between the inner ring (defined by the Cone angle) and the outer ring (defined by the Cone delta). The dashed line represents where illumination is half as bright as within the cone angle. The Cone rolloff parameter moves this line between the center and outer rings.

Enable Spot Light

Enables spot or cone light falloff. Spot light can be applied to any light type including area lights.

Use cone angle for field of view

When rendering shadow maps or using a projection map with a spot light, the Cone Angle will be used to define the field of view. However, to be able to get better shadows on a certain section of geometry, it is useful to be able to de-couple the field of view control. Toggling this parameter off will enable the Projection Angle or Orthographic Width parameters.

Projection Angle

The viewing angle used for depth map generation when perspective view is used.

Cone Angle

The size of the spotlight’s beam. Enter the number of degrees wide the spotlight’s cone should be. You can only change this parameter if you are using a cone light.

Cone Delta

Number of degrees of penumbra for spotlights.

Cone Rolloff

Shape exponent of penumbra (larger = sharper).

Projection Map

Specifies the image that gets projected. The viewing angle of the light will determine the area of projection.

Near Clipping

Distance to the near clipping plane.

Far Clipping

Distance to the far clipping plane.

Environment/IES Map

This parameter sets an environment map or IES file to be used to tint illumination based on the direction in which the light is cast. Environment maps can be used with all light types including point lights.

Environment Space

The space to use for environment map lookups. By default, the light’s space will be used so that transforming the light source will also transform the environment map.

Environment Null

When Environment Space is set to Use Environment Null, this parameter can be used to configure the transform object to use for orienting the environment map.

Map Blur Angle

Specifies the angle over which the environment map should be blurred.

Map Angle Scale

Scales the environment map angle, relative to the light axis. Values larger than 1 will expand the map while values less than 1 will compress the map into a smaller angle. This value is especially useful with IES maps, in which case it can be used to increase or decrease the built-in cone angle without changing the map file.

Area Light Options

Area Size

The size of the area light source. It is possible to define a different light scale in the x and y directions - for example, to produce a rectangular light.

Normalize Light Intensity to Area

Scales the light source intensity to take into account the visible area of the light. When enabled, increasing the size of an area light will not have any effect on the total amount of illumination produced by the light source, so that the size of the light can be adjusted only to change the softness of shadows. When disabled, increasing the size of an area light will cause the total amount of illumination produced by the light to increase proportionally with area. When rendering physically correct scenes, it is often useful to disable this option and use Physically Correct attenuation since this can produce more predictable physically accurate lighting results.

Single Sided

Causes the light source to emit light only in the direction of the surface normal.

Reverse Emission Direction

When rendering a single sided light, reverses the direction of emission so that it is in the reverse normal direction.

Texture Map

Specifies a texture map to be used to tint illumination based on the uv coordinate on the geometry.

Enable Edge Falloff

Enables a simple edge falloff calculation to soften the edges of primitive area light types.

Edge Width

The percentage of the light size that should be treated as the edge of the light source for falloff calculation.

Edge Rolloff

Shape exponent for edge rolloff (larger = sharper).

Geometry Object

Reference to a geometry object to be used for Geometry area light types. The light source will take on the appearance of the referenced geometry. Normally you should turn off the display of the originating geometry object to avoid self-shadowing artifacts.

Tip

For the best performance and quality when rendering geometry area lights, evaluate your geometry against the following checklist.

  • Use the lowest resolution geometry that is a good approximation for the shape of the desired illuminating surface. Higher resolution geometry or subdivision surfaces will take longer to render and may introduce additional sampling noise.

  • Use open surfaces rather than closed meshes, and delete primitives that are known to contribute no illumination to the scene. Mantra may perform lighting computations for hidden faces - so if you can manually remove these primitives rendering performance will improve.

Transform Into This Object

Enabling this parameter causes the transform on this light object to be ignored, which will cause the geometry to be placed in the same location in space as the original object.

Distant Light Options

Orthographic Width

Controls the field of view for depth map generation from distant light sources.

Sun Angle

The angle for the Sun light type. Larger angles will produce blurrier shadows.

Attenuation Options

Attenuation

Controls how light decreases in intensity the farther you get from the light source.

Note

When using area light sources, it is often useful to set the attenuation type to Physically Correct as opposed to Half Distance Attenuation or No Attenuation. Area lights are often placed close to the scene, so using non-physical attenuation can produce unrealistic results.

No Attenuation

The light is the same intensity, regardless of how far away a surface is from the light.

Half Distance Attenuation

You specify a distance at which the light attains half the intensity that it is at the origin of the light. This is modeled mathematically as

        Cl = H / ( H + D )
        

where H is the half distance and D is the distance from the light source. When D is 0, we end up with H/H which is 1. When D is equal to H (the half-distance) the intensity is H/(H+H), which is half the intensity.

The light is never fully extinguished no matter the distance from the source.

Physically Correct Attenuation

In reality, light falls off based on the the inverse square law. This attenuation mode implements this type of fall off. Mathematically, the intensity is modeled by

        Cl = 1 / (D * D)
        
Half Distance

The distance from the light at which Half Distance Attenuation produces half the light intensity.

Attenuation Start

Minimum light distance to be used for attenuation of point lights and line area lights. Point light illumination on diffuse surfaces will be constant within this radius.

Active Radius

The radius of effect for the light source. When rendering with many light sources, reducing the active radius can speed up renders by avoiding lighting and shadowing calculations for light sources that are outside this radius.

Use Attenuation Ramp Multiplier

Enables a ramp control to directly adjust the attenuation at different distances. The ramp will be multiplied by the existing light intensity without the ramp to produce the final light intensity at a given distance.

Ramp Start Distance

The distance that corresponds to the first entry in the attenuation ramp. Distances smaller than the ramp start distance will be clamped - that is they will share the initial value in the ramp.

Ramp End Distance

The distance that corresponds to the last entry in the attenuation ramp. Distances larger than the ramp end distance will be clamped - that is they will share the final value in the ramp. You can set the final entry in the attenuation ramp to black to ensure that the light fades out past this distance.

Attenuation Ramp Multiplier

Linear ramp of colors to be multiplied by the light intensity at given distances.

Shadow

Shadow Type
None

No shadows will be cast by this light.

Ray-Traced Shadows

Ray-tracing will be used to compute shadows from this light source.

Depth Map Shadows

Shadows will be computed using a depth map. When transparent shadows are turned on, deep shadow maps will be used. Otherwise, simple z-depth shadow maps will be used.

Shadow Mask

A mask of objects which will be considered occluders for the light source. When ray-traced shadows are used, only these objects will be intersected by shadow rays. When depth map shadows are used, only these objects will appear in the depth map.

Note

It is possible to use categories by adding the shadowcategories rendering parameter.

Shadow Intensity

A scale on how much light is blocked by occluders. By decreasing the shadow intensity, the occluders will not block all the light, allowing some illumination through.

Transparent Shadows

When this option is turned on, the surface shader of occluders will be evaluated to determine the opacity. Turning this option on will cause deep shadow maps to be used when shadowing using Depth Map Shadows.

Depth Map Options

These options only apply to depth map shadows.

Deep shadows are produced by default when rendering Depth Map Shadows with Transparent Shadows enabled. Their advantage include:

  • Shadows of transparent objects, including volumetric objects.

  • Motion-blurred shadows.

  • Better shadow anti-aliasing.

Deep shadow maps store the opacity of any translucent objects the light ray passes through as well as the depth of the final opaque surface.

See the discussion for the Shadow Type parameter on the Shadow tab for additional information on deep shadows.

Note

Deep shadows use significantly more disk space than plain depth maps.

Shadow Bias

The bias when computing shadows from this light source. This is a small distance. If occluders are within this distance, they will not be considered shadowers. This is to prevent self-shadowing artifacts due to the limited resolution of depth map shadows.

Increase the bias value to obtain a nice shadow when working with a large scene. Try a shadow bias 5-10% of the scene scale to start.

Shadow Quality

Adjust the quality of lookups when evaluating standard shadow maps or blurred shadows.

Shadow Softness

A blur on the shadow map when using depth mapped shadows, specified relative to the size of a micropolygon when rendering with Micropolygon Rendering.

Shadow Blur

Controls the fraction of the shadow map image to blur when rendering.

This parameter can be used to blur the map disregarding the surface derivatives, which are taken into account but the Shadow Softness parameter.

Auto-generate Shadow Map

Generate a shadow map from this light source during the next render.

Shadow Map

The path to the shadow map.

Resolution

The resolution of the shadow map. It is a good idea to keep the resolution the same in X and Y.

Pixel Samples

The number of pixel samples to be used when rendering shadow maps. This is more important when deep shadow maps (transparent shadows) are being used.

Depth Map Motion Blur

When rendering deep shadow maps, it is possible to capture motion blur in the shadow map. If motion blurred shadows are desired, it’s important to turn on Transparent Shadows.

Material

Material

Allows a specific shader to override the automatically generated shader for area light rendering. If you use a surface shader to shade a light source, you should verify that the shader does not compute illumination itself. Materials assigned to light sources should only emit light - not absorb light themselves.

For example, the VEX Area Light shader can be used. This is also the shader that is used by default when rendering a light without a material assigned.

Local variables

IPT

This is typically -1. However, if the object is performing point instancing, then this variable will be set to the point number of the template geometry. For the IPT variable to be active, the Point Instancing parameter must be turned on in this object.

Note

This variable is deprecated. Use the instancepoint expression function instead.

Examples

Load | Launch

.../examples/nodes/obj/hlight/TransparentShadows.otl

This example shows how to configure transparent shadows with deep shadow maps. The scene includes a transparent grid which casts a shadow on the scene. The renderer used is micropolygon rendering.

Load | Launch

.../examples/nodes/obj/hlight/RainbowGeometryLight.otl

This example highlights several features:

  • Geometry area lights

  • Attenuation ramp controls

  • Surface model specular layers

  • The example consists of a geometry light based on a wireframe of nurbs curves. The attenuation on the light uses colored keys, allowing for different light colors to be produced at different distances from the light. The ground plane shader uses a surface model with two specular components - one wide component and another narrower glossy component to give a multi-layered appearance.

    Examples that use this node

    Example forExample name
    Cloth SolverLoad | Launch

    .../examples/nodes/dop/clothsolver/SphereClothCollision.otl

    Gas Embed FluidLoad | Launch

    .../examples/nodes/dop/gasembedfluid/CombinedSmoke.otl

    Gas Up ResLoad | Launch

    .../examples/nodes/dop/gasupres/UpresRetime.otl

    Particle Fluid ObjectLoad | Launch

    .../examples/nodes/dop/particlefluidobject/../particlefluidsolver/WorkflowExample.otl

    Particle Fluid SolverLoad | Launch

    .../examples/nodes/dop/particlefluidsolver/WorkflowExample.otl

    Pyro SolverLoad | Launch

    .../examples/nodes/dop/pyrosolver/BillowyTurbine.otl

    RBD Pin ConstraintLoad | Launch

    .../examples/nodes/dop/rbdpinconstraint/Chainlinks.otl

    Smoke ObjectLoad | Launch

    .../examples/nodes/dop/smokeobject/RestField.otl

    Indirect LightLoad | Launch

    .../examples/nodes/obj/indirectlight/IndirectLightBox.otl

    Indirect LightLoad | Launch

    .../examples/nodes/obj/indirectlight/TubeCaustic.otl

    FetchLoad | Launch

    .../examples/nodes/out/fetch/Fetch.otl

    MantraLoad | Launch

    .../examples/nodes/out/ifd/MotionVector.otl

    MantraLoad | Launch

    .../examples/nodes/out/ifd/volume_smoke.otl

    MantraLoad | Launch

    .../examples/nodes/out/ifd/torus_volume_smoke.otl

    MantraLoad | Launch

    .../examples/nodes/out/ifd/meta_volume_smoke.otl

    Load | Launch

    .../examples/nodes/out/ramp/RampReference.otl

    Load | Launch

    .../examples/nodes/shop/atmosphere/AtmosphereShader.otl

    MaterialLoad | Launch

    .../examples/nodes/shop/material/DownHillLavaFlow.otl

    Load | Launch

    .../examples/nodes/shop/ogl2_tangentnormalmap/TangentNormalMapExample.otl

    Attrib CreateLoad | Launch

    .../examples/nodes/sop/attribcreate/CurveTexturing.cmd

    Cluster PointsLoad | Launch

    .../examples/nodes/sop/clusterpoints/AnimatedSourcePoints.otl

    Dop ImportLoad | Launch

    .../examples/nodes/sop/dopimport/LowHigh.otl

    FurLoad | Launch

    .../examples/nodes/sop/fur/FurBallWorkflow.otl

    Iso OffsetLoad | Launch

    .../examples/nodes/sop/isooffset/Brickify.otl

    Volume MergeLoad | Launch

    .../examples/nodes/sop/volumemerge/volumemerge.otl

    Ray TraceLoad | Launch

    .../examples/nodes/vop/raytrace/RaytraceVopShader.otl