Houdini Engine for Unreal
|
The plug-in supports outputting instances from an asset in different ways: by using Packed Primitives, Object Instancers or Attribute Instancers.
Instanced geometries are represented in Unreal as InstancedStaticMeshComponents by default, or HierarchicalInstancedStaticMeshComponents if the geometry instanced has multiple Level of Details .
Instanced geometry or uassets will appear as an Instanced Input in the Detail Panel, as shown below:
Each instanced input can have a rotation and/or scale offset applied to it via the corresponding control in the detail panel.
The recommended way to create instances via the plug-in is by using Packed primitives.
A simple way to use this method is to use a Copy To Points SOP with the Pack and Instance option enabled. You also have the option to use Pack Geometry Before Merging on Inputs.
With packed primitives instancer, you can use the unreal_split_instances attribute to create separate StaticMeshComponents instead of the instanced one. The unreal_instance_color primitive attribute can then be used to specify an override vertex-color to apply to each component that is created this way. This can be used to add some variation to the instances via the material.
Instancers can also be created by using the instance Object node.
In previous versions of Houdini Engine, object instancer was the only way to output instances. However, since support for packed primitives was added, using them is the recommended way to output instances over this.
Besides instancing generated geometry, instances can also be instances of a pre-existing Unreal asset. This can be specified using the unreal_instance attribute. In the non-geometry case the instanced asset must be convertible to a native Actor type, and the generated instancer component in this case will be a HoudiniInstancedActorComponent. This can be used to spawn pre-existing assets in the level using the generated instancer point cloud.
The geometry that is instanced is shown in the thumbnail picker. Overriding what is instanced can be done by pressing the drop down asset chooser to pick an asset from the list, or by dragging and dropping an asset from the content browser over the thumbnail.
If a geometry instanced input is overridden with something other than a static mesh, or visa-versa, the corresponding component will be changed accordingly. For example you can choose a ParticleSystem asset, which results in AEmitter objects spawned at instance points. Likewise choosing a Blueprint asset will spawn Actor instances of that Blueprint.
Sometimes it is desirable to have random variations of instanced elements. For example if you have scattered rocks around a scene, you may want a few variations to add visual interest. Variations can be added by pressing the + icon next to the instance thumbnail, this will result in an even probability distribution of instances between the two instanced inputs.
Multiple instance variations are displayed as Instanced Input rows with a square bracket suffix.