The technical requirements must be met for an asset to be included in the Orbolt asset store. The recommended guidelines are suggestions that authors are encouraged to follow to increase the usability and consistency of their assets.
Controls & parameters
- Assets must be contained in a single .hda file.
- Materials must be in a subnet inside assets.
- All paths within an asset must be relative.
- Assets must open and render without errors.
- All embedded assets should be locked and matched to current definition.
- If assets contain heavy simulation or long cooktime operations, there should be a way to save out geos/clips/sims/etc. (For example, a button on the asset called “save simulation” or “load from cached”).
- To maintain flexibility with compiled assets, provide ROP outputs for your geometry (if you want to object_merge part of it or bake it).
Units & scale
- All controls must be promoted to an asset's top level (no editable nodes).
- Parameters must have meaningful defaults.
- All assets are recommended to contain the master control asset (ctrlmaster) with Translate/Rotate/Scale parameters at the origin.
- Assets should contain parameter tooltips and help. Tooltips should contain typical ranges of parameters.
Position & orientation
- The asset must have a consistent scale. Distance unit is 1m, mass (DOPs) in kg.
Geometry & topology
- The facing side of assets must be in the positive Z axis, with the up direction being the positive Y axis.
- Assets must be centered at the origin (0,0,0) and lie on the XY plane
Expressions & scripts
- Assets should be composed of quads and triangles only
- All custom scripts must be embedded into and used from the asset (no dependencies on external script files).
- Use time-based expressions (such as $T) instead of frame-based expressions ($F) to allow users to change the number of frames per second.
- 1280x960 required size.
- .jpeg format.
- There should be a minimum of 3 unique screenshots for each uploaded asset:
- Rendered example
- Expanded network view of node
- 400x400 required size.
- .png format.
- No banners/text unless the asset is text-focused.
- Icon designs should take up the majority of the 400 pixel square to avoid large empty spaces.
- Your asset description should include the purpose of the asset and its intended usage.
- No spaces.
- Unicode characters only.
- Tag your asset with the appropriate Houdini context (POP, DOP, OBJ, etc.).
- Files such as texture maps or geometry that are not computed procedurally must be embedded within the asset. For help with embedding files, use the Author Tools asset.
- To keep files namespace-proof, avoid using explicit type names/optype expressions.
- Image files (textures) can be embedded into the asset by right-clicking on asset and selecting Type Properties... > Extra Files tab > Browse to file.
opdef:/Object/opType?icon.jpg (needs an explicit "
- Paths to embedded files can then be hooked up by replacing the base color map path with
../.." is the relative path of the subnode to the top level node; adjust accordingly)
- Geometry files be embedded the same way as images:
- Add the file via the Type Properties... > Extra Files tab, and use the opdef command on your File SOP's path:
Additional recommended guidelines:
- If adding namespaces to pre-Houdini 12 assets, settings will have to be redone in Type Properties... > Tools ("
$HDA_TABLE/$HDA_NAME" needs to be "
$HDA_TABLE_AND_NAME"). The easiest way to do this is to delete the current tool and choose Create New > Default Tool.
- For scoping the top level asset, its table/type name needs to be included:
author::Object/assetname::1.0::subasset? (Note: Without the '
Object', it is invalid)
- For assets with private subassets in single .hda, the namespace format needs to be as follows (example: a character with an animation rig that contains a hand asset):
- Version information should not be part of the .hda file naming (prp_superasset.hda instead of prp_superassetv001.hda).
- Internal nodes should have meaningful labels and colors are highly recommended to mark contiguous sections
- Shaders should be in the ‘Materials’ SHOP network and clips in corresponding ‘Clips’ CHOP network.
- Test assets before submission to find missing or inverted normals
- Texture resolutions should be specified in asset description.
- If using Material Shader Builder for materials, compile the final shader into asset (use 'Compile Materials' included in the Author Tools)
- Make sure to change Type Properties > Render Mask > Mantra OGL (include OGL as it's not there by default).
- Clean UVs.
- Unwrapped UVs.
Example file (.hip)
- It is highly recommended that assets include a demo or sample .hip file that shows the user an example of the asset and describes how it works.
- In your example file, include a camera called 'cam1' focused on your asset.
- Do not embed any extra assets. Example .hip files can only include the asset itself and any dependencies.
- To help users understand how assets work, authors can embed documentation directly into nodes in Houdini. For more information on adding help and documentation onto your asset, read this topic in the FAQ.
If you have any questions, feel free to contact us at firstname.lastname@example.org.
Find more answers in the FAQ.