UsdInstanceGeometry

Overview

UsdInstance instances geometry from it’s references attribute onto the specified USD PointInstancer object.


Attribute Reference

Geometry attributes

reverse_normals

Bool
default: False

enable to reverse the normals in the geometry

side_type

Int enum
  0 = “force two-sided” (default)
  1 = “force single-sided”
  2 = “use mesh sidedness”

set single sidedness of the mesh, will affect the visibility of the mesh based on normal direction

Instancing attributes

disable_indices

IntVector
default: {}

A list of index values to hide / disable. For example, with 4 instances you can supply a list of 0, 2 to disable those instances. If an index in this list is out of range, it is ignored.

instance_level

Int enum
  0 = “instance level 0” (default)
  1 = “instance level 1”
  2 = “instance level 2”
  3 = “instance level 3”
  4 = “instance level 4”

Sets the level/depth of this instance. This adds a Mat4f primitive attribute to the geometry which can be referenced during shading to use the local space of each instance. The name of the primitive attribute corresponds the the instance level that is set (i.e. "instance_level_0", "instance_level_1", etc)

use_reference_attributes

Bool
default: True

Use the geometry attributes of the reference (prototype) instead of the ones on the InstanceGeometry. Currently only works for shadow_ray_epsilon

use_reference_xforms

Bool
default: True

Transform the reference (prototype) geometry by it's node_xform parameter before applying the instance transform

Labels attributes

label

String
default:

label used in material aov expresssions

shadow_receiver_label

String
default:

Label used to associate Geometry objects into sets. Then, using the ["shadow_exclusion_mappings"] attribute, shadows from specified geometry parts can be suppressed from casting onto specified sets.

Motion Blur attributes

curved_motion_blur_sample_count

Int
default: 10

Number of time samples generated along each curve when using curved motion blur

motion_blur_type

Int enum
  -1 = “best” (default)
  0 = “static”
  1 = “velocity”
  2 = “frame delta”
  3 = “acceleration”
  4 = “hermite”

Motion blur type for PolygonMesh/Points/Curves in alembic file.
"static" will treat the mesh as static.
"velocity" will blur using the supplied vertex positions and velocities.
"frame delta" will interpolate between the two supplied vertex positions.
"acceleration" will blur using the supplied vertex positions, velocities and accelerations.
"hermite" will use supplied pair of positions and pair of velocities to interpolate along a cubic Hermite curve.
"best" will use choose the method which provides the highest quality given the available data.

primitive_attribute_frame

Int enum
  0 = “first motion step”
  1 = “second motion step”
  2 = “both motion steps” (default)

Which frame(s) do we take the primitive attributes from?
 O : first motion step
 1 : second motion step
 2 : both motion steps

use_rotation_motion_blur

Bool
default: False

If "xform" is time varying and motion blur is turned on, this toggle can generate better rotation trail. Turning on this will disable adaptive tessellation

Ray Tracing attributes

ray_epsilon

Float
default: 0.0

When a secondary ray is fired, anything within this distance of the intersection point will be ignored. Instead, it is considered part of the current intersection's geometry. If zero, an automatically calculated epsilon will be used.

shadow_ray_epsilon

Float
default: 0.0

When a shadow ray is fired, anything within this distance of the intersection point will be ignored. If this value is less than "ray_epsilon", then it has no additional effect.

Time attributes

evaluation_frame

Float
default: 1.0

Evaluates geometry at the specified frame instead of SceneVariables frame

use_evaluation_frame

Bool
default: False

Uses "evaluation frame" instead of SceneVariables frame

USD attributes

point_instancer_path

String
default:

The point instancer to load from the USD Stage

stage

String filename
default:

USD Stage to load containing the point instancer

use_stage_cache

Bool
default: False

Load the entire stage and use StageCache to share it among all UsdInstanceGeometry objects.
If this is false, load a stage masked to the prim path just for this UsdInstanceGeometry.
For large stages with thousands of unique assets, it is faster to enable the stage cache.

User Data attributes

primitive_attributes

UserData Vector
default: {}

A list of UserData to specify arbitrary primitive attributes(For example, color or roughness multiplier) per-instance

Visibility attributes

visible_diffuse_reflection

Bool
default: True

whether the geometry is visible in diffuse reflection

visible_diffuse_transmission

Bool
default: True

whether the geometry is visible in diffuse transmission

visible_glossy_reflection

Bool
default: True

whether the geometry is visible in glossy reflection.

visible_glossy_transmission

Bool
default: True

whether the geometry is visible in glossy transmission (refraction).

visible_in_camera

Bool
default: True

whether the geometry is visible to camera rays

visible_mirror_reflection

Bool
default: True

whether the geometry is visible in miror reflection.

visible_mirror_transmission

Bool
default: True

whether the geometry is visible in miror transmission (refraction).

visible_shadow

Bool
default: True

whether the geometry casts shadows

visible_volume

Bool
default: True

whether the geometry is visible in indirect volume rays

General attributes

contains_camera

Bool
default: False

Specifies whether the geometry contains the camera and should be used for IOR tracking. This should not be changed by the user -- they should instead attach the relevant geometry to the camera, which will then flag this geometry.

dicing_camera

SceneObject
default: None

Alternate camera that is used for adaptive tessellation. This is useful if you want adaptive tessellation to behave consistently in a sequence, regardless of what the main camera is doing

node_xform

Mat4d blurrable
default: [ [ 1, 0, 0, 0 ], [ 0, 1, 0, 0 ], [ 0, 0, 1, 0 ], [ 0, 0, 0, 1 ] ]

The 4x4 matrix describing the transformation from local space to world space.

references

Geometry Vector
default: {}

list of geometries that geometry procedural can reference during procedural generate/update stages. For example, an instancer geometry procedural can instance primitives generated by the reference geometry procedural.

shadow_exclusion_mappings

String
default:

List of mappings of the form A:B where:
A is a list of names of parts to be mapped, or asterisk to map the whole geometry
B is a list of labels corresponding to the sets corresponding to distinct values of ["shadow_receiver_label"], or asterisk to map to all such sets.

static

Bool
default: True

disable if the geometry will be updated between frames