Houdini Main Changelogs

Houdini 6.0.193 Added new parameter to light object "Use Far Clipping Plane as Active Radius". This parameter, not yet implemented in mantra, will limit the light's effect beyond a certain radius. Mon. January 27, 2003
Houdini 6.0.190 Mostly for doc and tutotial writers: the word "state" has been eliminated from the interfce and has been replaced with "tool". Thus, all interactive operations in Houdini are now called "tools". Fri. January 24, 2003
Houdini 6.0.190 When holding a right-mouse click over emptiness in the Object/SOP viewers, the "Nothing is pickable" menu no longer appears. This allows the user to continue on with right-mouse dragging. Fri. January 24, 2003
Houdini 6.0.190 The quit command in hscript will now prompt the user to confirm termination. This behaviour can be overridden with the -f option. If the quit command occurs within a script, the response to the quit command will be read from the next line in the script. For example:

        #
        # hscript quit command
        #
        set RESPONSE = yes
        quit
        $RESPONSE

If hscript is not started interactively (i.e. reading from a pipe or I/O redirection), the quit command will not prompt for confirmation.

This means that some scripts may have to be adjusted to work correctly.

Fri. January 24, 2003
Houdini 6.0.190 The quit command in hscript will now prompt the user to confirm termination. This behaviour can be overridden with the -f option. If the quit command occurs within a script, the response to the quit command will be read from the next line in the script. For example:

        #
        # hscript quit command
        #
        set RESPONSE = yes
        quit
        $RESPONSE

If hscript is not started interactively (i.e. reading from a pipe or I/O redirection), the quit command will not prompt for confirmation.

Fri. January 24, 2003
Houdini 6.0.190 Fixing bug where bypassing and un-bypassing a subnet SOP would leave the subnet with no geometry. Fri. January 24, 2003
Houdini 6.0.189 Ctrl+c/v hotkeys have been enabled for the graph mode of the channel editor. They do the same as the C/P buttons in the upper-right corner. ie. copy the values at the current time and paste the previously copied values at the current time. Thu. January 23, 2003
Houdini 6.0.189 The Shader SOP now can have an arbitrary number of shaders applied in the single op. It also uses the new dynamic parm method of reference rather than the old shop path, allowing it to use relative references to SHOPs. Rather than default the group to an expression which reads the surface group, a toggle is now provided to override the group field with the surface group's field. Thu. January 23, 2003
Houdini 6.0.189 The File Still COP has been removed, as the File COP now detects if its File parameter is time dependent. If it is time dependent (ie, $F is in the filename), then it assumes the input is a sequence of files. If not time dependent, it assumes a still file.

Hip files with File Still COPs will load them as File COPs.

Thu. January 23, 2003
Houdini 6.0.189 The File Still COP has been removed, as File COPs now interpret non-animated filename expressions as stills. Hip files with File Still COPs in them will be auto-converted to use File COPs on load. Thu. January 23, 2003
Houdini 6.0.189 These are just some notes on procedural geometry generators in mantra. Mantra can currently get geometry to render in two (or three) ways:
  • The geometry can be read in directly (whether in-lined in the IFD or from a disk file)

  • The geometry can be read in from a disk file conditionally. That is, if a ray intersects the bounding box specified for the geometry, then the geometry is loaded on demand.

  • Geometry can be generated on the fly using a procedural object.

These two mechanisms have different properties inside the rendering engine and these notes are intended to help identify the advantages and short-comings of each approach.

  • When geometry is read in, mantra has to spend time parsing the geometry file. The geometry uses memory up. Most of these resources are wasted if the geometry isn't ever rendered (i.e. it's occluded or off screen).

    However, a single piece of geometry can be instanced multiple times resulting in potentially huge memory savings. Savings are lessened if:

    • The geometry has a lot of NURBs/Bezier surfaces or curves

    • The geometry is displacement mapped
  • The first method can be improved by referring to an external disk file and specifying a bounding box for the geometry. In this case, the cost of parsing of the geometry and memory use is only incurred if the geometry is actually rendered.

    As with the first case, mantra is able to re-use the geometry for multiple instances resulting in much better memory performance.

  • Procedural geometry is handled slightly differently in mantra with regards to instancing. Procedurals cannot currently be shared between instances. Thus, procedurals can consume a lot more memory than referencing disk files.

    However, procedurals are able to generate geometry on the fly. This means that they can generate geometry suitable for the frame being rendered. For example, a procedural tree might generate open polygon curves if the tree is very small in screen space, but generate highly detailed tubes if the tree is in very close to the camera. The procedural also has the ability to change shaders based on the level of detail required for rendering.

So in short, there are advantages to using procedurals, but at the cost of a potentially larger memory footprint for renderings. Especially where multiple instances are being rendered.

Thu. January 23, 2003
Houdini 6.0.189 The HUDs display can now be toggled by a menu option or hotkey. The default hotkey is ';'. Thu. January 23, 2003
Houdini 6.0.189 There are two more procedural geometry generators in mantra:
  • The "program" procedural runs a program to generate geometry for rendering.

  • The "image3d" procedural will generate an iso-surface from a 3D texture map. Any channels defined in the 3D texture map are automatically bound to geometry attributes of the iso-surface and can thus be used in shading.

Thu. January 23, 2003
Houdini 6.0.189 The class VRAY_ProcIsoBase.h was added to the HDK. This is a general class which can be used to generate iso-surfaces as procedurals in mantra. Thu. January 23, 2003
Houdini 6.0.187 Added quaternion operators based on the new quaternion-based VEX functions:

        "Euler To Quaternion"
        "Quaternion"
        "Matrix3 To Quaternion"
        "Quaternion to Matrix3"
        "Quaternion Multiply"
        "Spherical Linear Interp"
Wed. January 22, 2003
Houdini 6.0.188 CHOP track names can now have the character '.' in them. Previously any '.' would be silently converted to underscores ('_'). This allows relative paths to be specified in the track name. Likewise, while a path of /obj/model/tx used to never export, it will now export as an absolute path of "/obj/model/tx". Wed. January 22, 2003
Houdini 6.0.187 There is a new built-in procedural geometry shader for mantra:

metapoly [-o object] [-v velocity_attrib] [-t shutter] [-L LOD]

The metapoly procedural will convert metaball geometry to polygons at render time. This will typically use more memory than direct rendering of metaballs.

However, this means that render speed of metaball geometry can be tuned using the level of detail parameters in objects (or the -L option to mantra, or the -L option to the procedural).

Displacement shaders may also be applied to the procedural.

Motion blur of metaballs can also be accomplished by specifying a velocity attribute name (and time scale).

Tue. January 21, 2003
Houdini 6.0.187 Mantra now supports procedural geometry generation. This allows a procedural geometry shader to generate geometry at render time, rather than having the geometry passed through from Houdini. Tue. January 21, 2003
Houdini 6.0.187 The Cookie SOP now has the ability to create primitive groups out of the pieces it creates. Tue. January 21, 2003
Houdini 6.0.187 Fixed bug where putting a point group in the CaptureProximity SOP could cause Houdini to crash. Tue. January 21, 2003
Houdini 6.0.186 Fixed a bug in the pixel cop where the local variable $A was not being set properly. Instead, it was defaulting to 0. Tue. January 21, 2003
Houdini 6.0.186 Using the attribute pop to create a local variable for a one element attribute called FOO will now also create a local variable called FOO along with FOO1 (previous behavior). Tue. January 21, 2003
Houdini 6.0.185 Added some quaternion manipulation functions to vex. Mon. January 20, 2003
Houdini 6.0.183 There is now the ability to indiviually key the translate, rotate, scale parameters in the Transform and Multi-Transform handlse. The default hotkeys are Shift+t, Shift+r, Shift+e respectively. Fri. January 17, 2003
Houdini 6.0.183 There are now options from the Main Preferences dialog to scope channels when setting keys from handles: (defaults are indicated in brackets)
  • Open Channel Editor If Closed When Scoping From Handles [off]
  • Scope Channels When Keying From Handles:
    • Do not scope
    • Add to scope
    • Replace scope [default]
Fri. January 17, 2003