Houdini Unity



Install VFX Toolbox Unity Package Local Package Install: Git Clone this repository (or download zip and unzip locally) Install Unity 2019.3 or newer and run it for your project; Open Package Manager Window (Window/Package Manager) Use the + Button located at the top-left of the window and select 'Add Package from Disk'. Scan my mac for viruses free. Houdini Fx, UE4, Unity, Moscow, Russia. 1,171 likes 21 talking about this. Houdini for GameDev. Procedural creation an environment for games and integration this in Unity and Unreal Engine.

Special groups and attributes are used when marshalling data between Houdini and Unity.

Certain standard Houdini attributes are used when marshaling data between Houdini and Unity.

Attribute Name Description
p position
rot rotation
Cd color
Alpha opacity
N normal
uv uv
uv2, uv3 additionnal uv channels
instance For object-level instancing, See Instancing

This table lists special attributes which will be recognized when marshalling data from Houdini to Unity. Setting up those attributes on your asset will allow you to control and override some properties of the generated Unity geometry.

Houdini For Unity

Attribute Name Owner Type Topic Description
unity_instance point, detail string InstancingPath in Unity project of an Asset to instance at the given owner transform. Should be relative to the project Assets folder (eg. 'Assets/Prefabs/Hero.prefab').
unity_material prim, detail string MaterialsPath in Unity of a Material asset to apply to a part. Should be relative to the project Assets folder (eg. 'Assets/Materials/HeroMat.mat').
unity_tag prim, detail string Unity tag to set for generated GameObjects. Note that tag must already exist in Unity Editor scene.
unity_static prim, detail int Set to 1 to make generated GameObject static, or 0 for non-static.
lod_screensizes detail float arrayLevel of DetailTransition screensizes for LOD levels (range should be 0 to 1 or 1 to 100).
unity_layer prim, detail string Unity layer to set for generated GameObjects. Note that the layer must already exist in Unity Editor scene.
instance_prefix point, detail string InstancingPrefix to append to instance objects (eg. 'City_Instance1' where 'City' is the prefix).
unity_mesh_readable point, detail int Readable MeshesGenerated meshes will be marked as readable if this is 1. By default, generated meshes are non-readable.

The following table lists special attributes which can be set on the height heightfield layer to specify an existing TerrainData asset file to used. A copy of the TerrainData asset file will be created on generation in Unity.

Attribute Name Owner Type Topic Description
unity_hf_terraindata_file prim string TerrainDataPath in Unity project of a TerrainData asset to set as the Terrain Data. Relative to project Assets folder (eg. 'Assets/Terrain/terlayer.asset').
unity_hf_terraindata_export_file prim string TerrainDataPath to write the generated or copied TerrainData asset to.

Houdini Unity Engine

The following table lists special attributes which can be set on heightfield layers in order to set the corresponding Terrain Layer properties on the generated Unity Terrain. Note that height and mask Fb2 to pdf for mac os. layers are ignored when creating Terrain Layers, so these attributes must be set on other heightfield layers.

Attribute Name Owner Type Topic Description
unity_hf_terrainlayer_file prim string Height Field LayersPath in Unity project of a TerrainLayer asset to set as the Terrain Layer. Relative to project Assets folder (eg. 'Assets/Terrain/base.terrainlayer').
unity_hf_texture_diffuse prim string Height Field LayersPath in Unity project of a Texture asset to set as the terrain layer's diffuse texture. Relative to project Assets folder (eg. 'Assets/Texture/sand.png').
unity_hf_texture_mask prim string Height Field LayersPath in Unity project of a Texture asset to set as the terrain layer's mask texture. Relative to project Assets folder (eg. 'Assets/Texture/sand.png').
unity_hf_texture_normal prim string Height Field LayersPath in Unity project of a Texture asset to set as the terrain layer's normal texture. Relative to project Assets folder (eg. 'Assets/Texture/sand.png').
unity_hf_normal_scale prim float Height Field LayersTerrain layer's normal scale (float of size 1).
unity_hf_metallic prim float Height Field LayersTerrain layer's shader's metallic value (float of size 1, with value between 0 and 1).
unity_hf_smoothness prim float Height Field LayersTerrain layer's shader's smoothness value (float of size 1, with value between 0 and 1).
unity_hf_specular prim float array Height Field LayersTerrain layer's shader's specular color (float of size 4, with values between 0 and 1).
unity_hf_tile_offset prim float array Height Field LayersTerrain layer's texture's tile offset (float of size 2).
unity_hf_tile_size prim float array Height Field LayersTerrain layer's texture's tile size (float of size 2).

Houdini Unity Plugin

This table lists special attributes which are created by the plug-in when marshaling data from Unity to Houdini.

Attribute Name Owner Type Topic Description
unity_material prim string MaterialsPath in Unity of a Material asset to apply to the mesh. Should be relative to the project Assets folder (eg. 'Assets/Materials/HeroMat.prefab'). Automatically set when using an input mesh.
unity_input_mesh_name prim string InputsName of mesh's owner GameObject. Automatically set when using an input mesh.

These attributes will be available in Houdini when using Inputs to marshall data from Unity to Houdini.

These Standard Houdini Attributes will generally also be available: position (p), vertex colors (Cd, Alpha), normals (N) and UV sets (uv, uv2, uv3).

Houdini

You can easily see these attributes and their values by troubleshooting the internal Houdini Scene (File > Open Scene In Houdini) after initializing your asset's Inputs.

Some special group names have naming schemes which specify generation behavior when marshalling data from Houdini to Unity.

Group Name Topic Description
collision_geo_* CollidersPrefix used for collider geometry generation (invisible)
convex_collision_geo_* CollidersPrefix used for convex collider geometry generation (invisible)
convex_collision_geo_trigger_* CollidersPrefix used for convex trigger collider geometry generation (invisible)
collision_geo_simple_* CollidersPrefix used for visible simple collider geometry generation. Accepted values are _box, _sphere, and _capsule.
collision_geo_simple_trigger_* CollidersPrefix used for visible simple trigger collider geometry generation. Accepted values are _box, _sphere, and _capsule.
rendered_collision_geo_* CollidersPrefix used for visible collider geometry generation
rendered_convex_collision_geo_* CollidersPrefix used for visible collider geometry generation
rendered_convex_collision_geo_trigger_* CollidersPrefix used for visible trigger collider geometry generation
rendered_collision_geo_simple_* CollidersPrefix used for visible simple collider geometry generation. Accepted values are _box, _sphere, and _capsule.
rendered_collision_geo_simple_trigger_* CollidersPrefix used for visible simple trigger collider geometry generation. Accepted values are _box, _sphere, and _capsule.
lod* Level of DetailPrefix used for defining mesh LOD level (e.g. lod0, lod1)

Primitives that belong to collision groups will be separately created as Mesh Collider components and added to the output GameObject. The rendered_collision_geo groups will have MeshRenderer and MeshFilter components as well.

The Attributes Store feature allows to store attribute data in a script component (HEU_OutputAttributesStore) attached to the generated gameobject. This allows to bring in any supported attribute type (ints, floats, strings) from Houdini into Unity, to access them at a later point in time.

To use this feature for an HDA:

  1. Create attributes for points, primitives, or detail for a SOP geometry inside the HDA, with name and values set.
  2. Create another attribute with name hengine_attr_store of class Detail and type String.
  3. Specify the names of the attributes that you want stored, separated by commas (e.g. health,ammo,armor).

Houdini Unity Destruction

Adobe acrobat torrent for mac os. Now in Unity, when the HDA is cooked, the generated gameobject will have HEU_OutputAttributesStore script component attached. It will contain a map of attributes, which can be queried via script.

Houdini 3d

Note that you can also store Houdini native attributes such as P, rot, N, uv, etc.

Optional, but as a follow up, you can also attach a script to be called back automatically that can query and assign values from the attribute store. Check out the example HDA provided in Assets/Plugins/HoudiniEngineUnity/HDAs/HEUInstanceAttributesStore.hda.

Houdini Unity Terrain

The Author grants to Customer in respect of the Asset a non- exclusive, worldwide, license in any medium now known or hereinafter invented to: (a) reproduce, post, promote, license, sell, publicly perform, publicly display, digitally perform, or transmit for promotional and commercial purposes; (b) use any trademarks, service marks or trade names incorporated in the Asset in connection with Author material; and (c) use the name and likeness of any individuals represented in the Asset only in connection with Customer material. Customer may only use the Asset for legitimate, editorial purposes on some issue of journalistic, editorial, cultural or otherwise newsworthy value. Editorial uses include, without limitation, use of the Asset in a news program, news-related website, or news-related video media. These restrictions do not apply if Customer otherwise has all the intellectual property rights necessary for its intended use (such as a company purchasing its own products, authorized advertising agencies, or licensees). The burden is on the Customer to confirm that it has any rights outside of the editorial restrictions Customer understands and agrees that certain Assets may contain third party copyrighted or trademarked material and will require additional licensing, permissions, releases, or rights clearance for any non- editorial use. Customer and their legal advisors should consider this and obtain such rights, if necessary, before purchasing, downloading or using any Assets.