The HtoA installer supports silent installs and silent extractions (an install will update houdini.env, an extract does not).
-?, -h, --help Displays help on commandline options.
--help-all Displays help including Qt specific options.
-v, --verbose Verbose mode. Prints out more information.
--extract Extract installation contents in the current directory.
--extract-to <dir> Extract installation contents in <dir>.
--accept-license Do not prompt for license acceptance in silent mode.
IMPORTANT: By using this option, you accept the end-user
--silent Silent installation (no GUI).
For example, this command silently installs HtoA on Windows. The –verbose gives you a log in the command prompt window.
Error running pythonrc.py:
Traceback (most recent call last):
File "C:/Users/example/htoa/htoa-220.127.116.11_ra766b1f_houdini-17.5.460/scripts/python/pythonrc.py", line 5, in <module>
File "C:/Users/example/htoa/htoa-18.104.22.168_ra766b1f_houdini-17.5.460/scripts/python\htoa\searchpath.py", line 7, in <module>
File "C:/Users/example/htoa//htoa-22.214.171.124_ra766b1f_houdini-17.5.460/scripts/python\htoa\dialog.py", line 3, in <module>
from builtins import str
ImportError: No module named builtins
If you see errors like this, it’s because as of HtoA 5.6.3, the builtins module is required. Houdini 17.5 doesn’t include this module (unlike Houdini 18 and later), so you’ll have to install it.
There’s an Arnold error that recommends setting the load_at_init parameter, but people don’t always know where to find that in their favorite Arnold plugin.
ERROR| [proc] c4d|Arnold_Procedural: bounds supplied to procedural node are not large enough to contain the actual underlying geometry.
Replace given bounds: (-1, -1, -1) X (1, 1, 1), with: (-9.4028616, -9.43616867, -9.21633244) X (9.3304739, 9.43616867, 9.21633244).
Setting the procedural's load_at_init parameter to true would also fix this.
The load_at_init parameter controls whether the procedural (standin) is loaded during scene intialization (before rendering starts), or during rendering (when a ray hits the procedural bounding box).
By default, load_at_init is false, which means that procedural loading is deferred until render time.
And so, in MtoA, C4DtoA, and SItoA, the load_at_init parameter is exposed as Defer Standin Load, which is enabled by default. In HtoA, you have a Load At Init parameter on for the Arnold Procedural node.
In MtoA, Defer Standin Load is a parameter of the aiStandin node.
Merging your velocity vel.x, vel.y, and vel.z grids into a single vector grid using a Vdb Vector Merge node can speed up your renders.
You can safely ignore the “component grids have different transforms” warning on the VDB Vector Merge. The x, y, and z components of the velocity have slightly different transforms because they located on the center of the cell faces in each direction; that’s coming from the marker-and-cell (MAC) grid used in the simulation.
If you really want to be precise with the velocities, you need to resample them on the same grid, say the density grid:
A few quick notes about instancing support in HtoA:
For instancing, use the Instance object with fast point instancing. HtoA doesn’t support full point instancing.
You can assign material to instances with the shop_materialpath string attribute on the instance points.
Fast point instancing supports per-instance user data and instance OBJ property overrides.
Light instancing is not supported [yet]. Actually, Arnold itself doesn’t support light instances, but what plugins like MtoA and SItoA do is translate the light instances into duplicates of the light for Arnold.