Houdini 13.0 Nodes

interface version 1

Stores and manages information and settings relevant to a shot.

(alpha | work-in-progress)

This operator allows to store all shot-specific information on one single node (indepentently of any hip file). Once such a shot-information node is set up, it can be easily dropped into any new .hip file so it can be set up to match shot settings with a few mouse clicks.

Features

The node can store the following:

  • Project name: full and abbreviated version, shot label

  • Frame ranges: several ranges are available by default (for runups and retimes), plus user-defined extra ranges

  • Scene unit settings: FPS, length and mass units (can be automatically set up on hip file load)

  • Misc info: “Notes” and “Related Files” fields (to pass on info to other users)

  • Shot camera(s), with nodes and look-through function

  • Scene locations, storing a list of 3d view and construction plane (grid) locations

  • Shot sequencing: allows a joint flipbook of multiple shot nodes

  • Sub-directories, with support for auto-creating subfolders on hip file load

See the Parameters section below for details.

Note

(wip) means the functionality is work-in-progress and subject to change. (Undocumented parameters are also strictly w.i.p.)

Contents

(todo) BG

(a camera bg image copnet)

obj

(an obj subnet)

Parameters

Project Name

Name of the project the shot belongs to. This is usually the name of the movie, commercial, etc. the shot is part of.

Project (Short)

An (optional) abbreviated name of the project. (Might be useful for log files, folder names, etc.)

Shot Name

Name of the shot itself. (No limitations are imposed–name it any way you like.)

Tip

The short project name (access as chs('projs') ) and shot name (as chs('shot') ) can be very useful when building shot-specific expressions, such as folder paths.

For example, if you have a project Hola42 (short name H42) and shot 5600a, the expression

/media/projects/`chs("proj")`/`chs("shot")`/shot.hip

will result in /media/projects/Hola42/5600a/shot.hip.

(Note that this form of the expression works only on parameters of the same shot node since it refers to local parameters).

Globals

All shot-relevant information are stored under this tab.

Frame Ranges

This section stores frame range(s) related to the shot. Clicking the 'Set' button of a range will apply it to as current scene range.

Shot Frame Range

Start/end frame for the shot, plain and simple.

The Set Range button here sets the $FSTART, $FEND variables.

Note

For all ranges below, the Set Range button sets the $RFSTART, $RFEND variables. If having problems with setting these ranges, open the Global Animation Options window and disable “Restrict playback range to Start and End frames”.

Work Range

An optional alternative frame range for the shot that can be used at will (an example is to have it as a bit extended version of the regular range to allow room for simulation runups, editing, etc).

The Set Range button here (and below) sets the $RFSTART, $RFEND variables.

Non-Retimed Range

If the shot has any retime, time offset or 'time warp' effect, this range can store the 'original' start/end frames with the retiming effects removed.

Disable “Restrict playback range”

Disable the global animation option of the same name. This allows any range to be set as playback range (otherwise the playback range has to be within the global animation range).

Extra Ranges

Any number of extra frame ranges can be stored here, along with a note. (Useful for storing simulation ranges, etc.)

Unit Settings

This section can store various unit settings of the shot.

Apply Unit Settings on File Load

If enabled, all the active (enabled) unit setting values will be set up (applied) on scene load.

FPS

Frames per second setting of the current shot.

Unit Length, Unit Mass

Length and mass settings for the current shot. These are the same settings as in “Edit->Preferences->Hip File Options...”.

Apply to Scene Now...

By pressing this button will apply all active (enabled) unit setting values to the currently open scene (hip file).

Get Settings from Scene...

Pressing this button will read all active (enabled) unit setting values from the currently open scene, and store the values in the appropriate parameter fields.

Information

Miscellaneous scene info, to pass written information and related file references between users.

Echo Notes on File Load

If this is enabled, all Description/Note field contents will be written to the standard error.

Tip

This can be useful for sending feedback when doing batch render operations (note that variables are expanded).

Description & Notes

A multi-line text field for storing shot description, notes, and the like.

Note

These notes are automatically copied to the node’s Node Comment field whenever edited (so they can be read by pressing MMB on the node in a network view).

Get from Node Comment, Copy to Node Comment

Buttons for transfer notes between the parameter fields and the node comment.

This section stores a list of files (and an optional note for each). Useful for quickly accessing any file related to the shot, such as concept drawings, reference images or movies, etc.

Views

(wip) This tab provides functionality for storing (and describing) shot cameras. It also allows to save and restore 3D viewing locations of the scenario (view and related construction plane both).

The latter can be useful if you have to work with multiple spatial locations in a single shot (e.g. simulations at different places, etc).

3D Viewport

Name of the 3d viewport to work with. If empty, the current active 3d viewport will be used.

Shot Camera(s)

(wip) A list of camera objects (with notes) for quickly access (look through, select, etc.) individual shot-related cameras.

(Only the names (paths) are stored–the cameras themselves have to exist in the scene.)

Scene Locations

This section provides functions for saving/restoring 3d view locations (along with construction plane settings). This is like the viewports' memory buttons, but with some additions:

  • Saved views can (and should) have a description

  • Any view/c-plane setting combination can be saved/restored

  • Since the view locations are stored on a node, it can be saved/loaded, copy/pasted, etc.

The Construction Planes and Views toggles can be used to specify what is to be saved to a location slot, and what is to be restored.

Construction Planes

If enabled, construction plane settings will be saved/restored. (Even if you saved cplane settings for a view location, it will be restored only if this toggle is on.)

Views

If enabled, view location settings will be saved/restored. (No view location will be restored if this toggle is off.)

To store a new view location...

  • Enable what you'd like to store (view, c-plane)

  • Add a new location to the list

  • Enter a name of the location (the additional controls will only appear if the location is named)

  • Click the location slot’s Save button.

Tip

The most practical way of usage is to enable both Construction Planes and Views when saving, then use the toggles as filters when restoring a view (so you can restore cplane settings, view location, or both).

The c/v letters indicate if a view slot has c-plane/view saved.

Shot Sequence

(wip) Within this tab a sequence of shots can be defined (where each entry is a Shot qL node). From this shot sequence, a joint flipbook can be generated.

Paths

(wip) This section deals with filesystem paths related to the shot.

Create sub-folders on File Load

If enabled, all specified sub-folders will be created during the loading of the scene hip file. This can be useful for situations where file output node(s) expect a subfolder that might not exist.

Root Directory

Path to the working root folder. (The path to the current hip file by default.)

Folders

A space-separated list of subdirectories that should exist under the root directory.

Create/Update Sub-Directories...

Click this button to create any sub-folders that does not exist.

Todo

  • option for “obj” subnet contents to be invisible outside of shot range

  • ssi_length# parameter expression is buggy (hou bug, more than one “#”-s in expression are not substituted → log this)

    • ch(chsop("ssi_op#")+'/'+chs('ss_rangeparm')+'y') - ch(chsop("ssi_op#")+'/'+chs('ss_rangeparm')+'x') + 1

  • finish “shot sequence” functions

  • a flipbook with various captions over it – how to achieve?

    • finish fake OSD

      • constant shading (both OpenGL and mantra)

      • font size independent of camera field-of-view

  • The 'open folder' function should work cross-platform (currently it’s linux-only, calling nautilus on the folder)

  • The 'open file' button should work on any platform :(

  • Have some way to quickly display images (concepts/references), preferably using mplay (like Note qL)

  • Utilize node’s Comment field to store logs of shot-related events

Release Notes

interface version 1

2014-10-12
  • New Shot qL OPs are now created as non-displayed and non-selectable (viewport)

2014-09-08
  • “Name Shot Node” button now uses project short name for naming

  • Shot Sequencing: added Houdini workaround for “extra first frame” bug

    • (no need: it was a daily build bug that already got fixed)

  • Added “fb/Within Range” parameter (value is 1 if current frame is within the shot’s frame range)

  • Both Camera OSD and OBJ Subnet have “Display” parameters (with a preset menu that can connect them to “within range”)

2014-09-05
  • Added editable “RENDER” subnet (for OpenGL flipbook ROPs, etc.)

  • WIP: Adding “OSD” geo (workaround on-screen display)

2014-09-03
  • First working version of shot sequence flipbooking

2014-09-02
  • Added editable “obj” subnet (for adding “payload”, e.g. camera, etc.)

2014-08-19
  • Minor UI changes

  • ...

2014-08-08

Imported multi-platform file/dir open function from Waypoint qL SOP.

  • The Related Files -> Open button now works for files and folders both (on any platform)

  • ..

2013-08-31

Added a “hidden” feature – a COP network that generates a shotinfo image that can be used as viewport display background.

2013-07-10

Frame ramge 'Set Range' buttons related stuff.

  • Global animation range is adjusted only when pressed for 'Shot Frame Range', other ranges change only the playback range.

  • An attempt to fix frame/time conversion inaccuracies when setting up global animation range.

2013-04-19

Added descriptive parm (info display in network editor).

2013-02-09

Description & Notes are now copied to the node’s comment field (hence can be read when pressing MMB on node, etc).

2013-02-08

Added support for storing and applying scene unit settings: FPS, Unit Length, Unit Mass (can also be set up automatically on scene load.)

Option for automatically creating sub-folders on scene load.

Option for printing notes on the standard error on scene load (for batch render logs, etc).

older versions

Version 0.0.1

Initial release.