Render Buffers

The following are the supported buffer savers in Janus:

Janus recreates the interface for each of these buffer savers and configures them internally for use. Users are not advised to manually add buffer savers if using in conjunction with Janus. Firstly, it automatically creates directories for the buffers. Secondly, unless it takes control over the creation of the ImageFilter buffer savers, it considers all Image Filter plugins as it would normally. That means the user must always be aware of the effect their commands are making on the activation / deactivation of ImageFilter plugins.

Note that users can use different render buffer savers at the same time, but extra care must be taken to ensure proper image output file paths.

LightWave Render Buffer Export (Newtek) (LWBUFFER)
The “native” or bundled Image Filter plugin of LightWave is the Render Buffer Export. Natively, it only exports one buffer per plugin instance. Janus, however, consolidates the multiple buffer export functionality into one interface. If multiple buffers are checked for export, it will automatically create as many plugin instances of Render Buffer Export as needed to output those buffers.

Buffers can activated by checking the buffer. The Neg button can be checked if you wish for the buffer to be inverted or negativised. Some buffers can also be normalised via the Normalise button. The Dir field specifies the sub-directory that the images will be placed under. The bottom part of GUI shows the normalise functions available for the Normal buffer; again, these functions only affect the Normal buffer.

Remember that you need to click on Activate LW Render Buffer Export for this buffer saver to be active. Without it, Janus will ignore any settings to place here during breakout.

Added Subcommand Functionality. LWBUFFER can be controlled by the subcommand called BUFFERDATA. Here are the parameters available.

Parameter Subcommand Keyword Sub-parameters
Surface Custom
srfcustom
active, neg, subdir
Luminous
lum
active, neg, subdir
Diffuse
diff
active, neg, subdir
Specular
spec
active, neg, subdir
Mirror (Reflection)
reflect
active, neg, subdir
Transparency
transp
active, neg, subdir
Raw RGB
rawrgb
active, neg, subdir
Shading
shading
active, neg, subdir
Shadow
shadow
active, neg, subdir
Geometry
geometry
active, neg, subdir
Depth
depth
active, norm, neg, subdir
Diffuse Shading
diffshd
active, neg, subdir
Specular Shading
specshd
active, neg, subdir
Motion X
motx
active, norm, neg, subdir
Motion Y
moty
active, norm, neg, subdir
Shaded Reflection
shadedref
active, norm, neg, subdir
Shaded Diffuse
shadeddiff
active, norm, neg, subdir
Background
bkgnd
active, neg, subdir
Normal
normal
active, norm, neg, subdir
Surface ID
surfid
active, neg, subdir
Object ID
objid
active, neg, subdir
Radiosity
rad
active, neg, subdir
Ambient Occlusion
ao
active, neg, subdir
UV Tangent Space Normal
uvtanspcnorm
active, neg, subdir
UV Tangent Space Tangent
uvtanspctan
active, neg, subdir
UV Tangent Space Bitan
uvtanspcbitan
active, neg, subdir
Camera Tangent Space Normal
camtanspcnorm
active, neg, subdir
Save Image Format
format
n/a

When using BUFFERDATA, you must start with the buffer saver's name, followed by the parameter, and then the sub-parameter (if applicable), then the value. Here are some examples:

BufferData"LWBUFFER.diffshd.active.1" (activates Diffuse Shading)

BufferData"LWBUFFER.format.1" (switches format to DeluxeRLA)

Remember that Janus will use default values of the buffer saver. If you do not specify a value for a particular parameter / sub-parameter, then it will just draw on default values. Particularly with the save image format parameter, Janus will use the Global Preferences Save Image Format value automatically, unless you specify a different value.

Here is a summary of the sub-parameters:

DSTORM Buffer_Saver 1.12 (D-STORM) (DSTORMBUFFER)
D-Storm's Buffer_Saver is supported because it is freeware, and sports a few extended capabilities from the LightWave Render Buffer Export. Janus's implementation of the Buffer_Saver removes direct access to the Near Clip and Far Clip envelopes that is otherwise available in the plugin. This has been replaced by filename fields pointing to envelope files for each respective field. If you choose to use the envelopes for Near Clip or Far Clip, do so normally in Layout. Then save the envelopes as files (from the Graph Editor) and input the filenames into the Janus's Buffer_Saver interface.

D-Storm's Buffer_Saver's output image structuring differs significantly from the LightWave Render Buffer Export. In Render Buffer Export each pass can have its own subdirectory. However, in D-Storm's Buffer_Saver, only a suffix is attached, and a 'global' base filename is provided for. This base filename has been changed in Janus's implementation to a user-specified subdirectory in which to output the resulting images to.

Denis Pontonnier GlobalBuffers / GetExtraBuffer Saver (Denis Pontonnier) (DPONTBUFFER)
Pontonnier's plugin GlobalBuffer and GetExtraBuffer (e.g. DP_Filter)are supported because it introduces something useful, novel and beyond the capabilities of either of the two savers listed above. Janus supports the saving aspect of the GetExtraBuffer node, but does not set up, or in any way assists in the set-up of these nodes. It is necessary to set up the GetExtraBuffer nodes in order for Janus to use it. Janus will only enable you to turn buffers on and off and automate image paths, as well select image format types for each buffer. In the original node, image format can be changed for every buffer. Janus consolidates the image format for all buffers to one.

When using the buffer nodes, be cognizant of the fact they are both the PixelFilter NE (Node Editor) and ImageFilter NE. As such they are categorised separately. Furthermore, Janus only supports one instance of the buffer saver node for one instance in PixelFilter NE, and one instance in ImageFilter NE. In other words, do not utilise more than one buffer node for image saving in PixelFilter NE or ImageFilter NE. You may, of course, utilise it for other things if you wish.

Furthermore, in order to correctly identify which buffer node is to be modified by Janus, the user must rename the node has PE_DPONTBUFFER (case-sensitive). This signifies that this node is intended for buffer export. Janus will ignore any other node.

Workflow tip: maintain a consistent "buffer slot assignment", which means to conventionalise which slots are for, say, occlusion, depth, or normals. In this way you do not need to repeatedly assign subdir/suffix names. For example:

And this, ideally, should be standard across all scenes.

Note the difference between GetGlobalBuffer and GetExtraBuffer, which is a functional difference in DP_Filter.

DPONTBUFFER also has subcommand parameters. Only buffer activation parameters can be affected. You can specify multiple buffer indices by using commas and dashes to delimit the numbers. Exampl:

DPONTBUFFER.GBuffer1.active.0

... turns off Global Buffer 1

DPONTBUFFER.Buffer1,3-7.active.1

... this turns on Extra Buffer 1, and Extra Buffer 3 thru 7.

Again, note the use of GBuffer (Global Buffer) and Buffer (Extra Buffer).

Download the DP_PFNE tutorial for Janus on how to use this plugin with Janus.

** Denis Pontonnier's plugin does not specify its version number. Mr. Pontonnier may issue updates and the reliability of Janus's implementation may be compromised. Therefore no guarantee regarding this aspect of compatibility is given. At the time of this writing DP_Filter was updated on Jan. 31, 2011 and Janus has been tested on that.

LightWave RPF Export (Newtek) (LWRPFBUFFER)
The bundled RPF Export is supported due to its some of its unique buffers and that it works very well with After Effects and combustion. RPF export has some convenience features like being able to output a normals pass without needing to assign a shader to the objects. All options in the RPF export saver are mimicked in Janus's implementation. RPF export outputs a single RPF file per frame. The Subdir/Suffix input field should correspond to the subdirectory that will be created under that pass and the suffix that will be appended to it. Furthermore you must specify a name in Subdir/Suffix field, or else, Janus's will override this with "RPF". This is needed to avoid clashing with Janus's standard outputs.

db&w exrTrader (DBWEXRBUFFER)
db&w's exrTrader is supported due to its extensive support for the OpenEXR format. Note that you must be a licensed user of db&w's exrTrader to use the Janus front-end for exrTrader. Also note that only exrTrader v1.4 (and up) is supported; if you are still using an older version of exrTrader, please upgrade it as to be compatible with Janus v1.5.

Janus's front-end interface handles the overall control of choosing presets and more global parameters. You need to do make your own presets in the exrTrader GUI to make it work in Janus.

Activate db&w exrTrader Buffer Export. This option needs to be ticked if you are using exrTrader; this is the main on/off switch; even if you have DBWEXR subcommands in your cmd line it will not take if this option is not turned on.

Use exrTrader for test render. exrTrader is also specially tied to Janus through the test render. If Use exrTrader for test render is checked Janus will bring up the rendered image saved by exrTrader, rather than LightWave's saver.

Presets. This is the preset list that is listed in the same way that presets are listed in exrTrader's GUI. This preset list serves as a default preset selection; this means that the selected preset will be applied to every render layer that uses exrTrader. However, the DBWEXR subcommand will take precedence if you choose to apply a preset to a particular layer. If you do not choose a preset from this list then you are telling Janus that you will be relying only on the DBWEXR subcommand to specify the preset. If still left unspecified, then Janus does nothing.

Output File. This setting's behavior was not changed; it works just like exrTrader's, therefore be careful when using this in conjunction with multi-layer rendering. Remember that Janus will typically breakout scenes on a per-layer basis. If Output File remains constant throughout those breakout scenes, then they will overwrite each other's renders. Typically you will want to enable Use Render Path for use with Janus. Nevertheless, this setting was still made available just in case a situation needed it.

Save LW Output. This checkbox allows you to enable to disable LightWave's internal saving mechanism. This is a useful control if you intend to work with .exr files exclusively. If unchecked, Janus will disable LightWave's internal saver. Note that this is a Janus-specific function; it's not an exrTrader feature.

Use Render Path. This is the same function as exrTrader's. In Janus, you have the choices "No", "Ye"s, and "Use preset". "No" will deactivate it this option completely from all render layers, requiring you to have specified a render path; "Yes" will activate it for all render layers; "Use preset" will apply the preset's setting to it, whatever you have saved.

Name Format (Padding). If "Use preset" is used, the preset's setting for this parameter is applied. Choosing "Use Janus" will apply the Janus setting that is retrieved frp, the Global Preferences' Frame Digit Padding setting.

Single Name Format. If "Use preset" is used, the preset's setting for this parameter is applied. You can also choose any of the other options available in exrTrader.

Compression. If "Use preset" is used, the preset's setting for this parameter is applied. You can also choose any of the other options available in exrTrader.

Subcommand Parameters
You can use subcommands to cotnrol exrTrader presets on a per-pass absis. There are two ways of doing this.

Method 1: Use the BUFFERDATA subcommand. Here is an example of how to use it:

BUFFERDATA"dbwExrBuffer.preset.savedPresetName1.user"

Explanation: BUFFERDATA is the subcommand, and is followed by the Janus-registered name, then the attribute to change ('preset'), and the value of the attribute - in this case it is the name of the preset without the extension. The last element that you see is an optional directive that specifies what kind of preset you are referring to. Possible values are user, global, or content. This is useful if you have presets of similar names and want to home in on one particular one. Remember that this is optional. If omitted, it will use the first preset that matches the name you typed. At this point, only the preset attribute is supported, but may in the future expand to other settings in exrTrader (and possibly the other buffer savers). In the context of exrTrader presets, the use of BUFFERDATA is discouraged as the future revisions may lead it to have a totally dedicated way of controlling the plugin.

Method 2: Use the dedicated DBWEXR subcommand. Here is an example of how to use it:

DBWEXR"preset_allbuffers.user"

In this example, the user preset called "preset_allbuffers" is called to be applied. DBWEXR is a dedicated subcommand that changes the preset directly. It is shorter than using BUFFERDATA, thus its use is encouraged.

The DBWEXR subcommand can also be accessed through the Global Settings panel (under the Render Buffers parameter). Like all subcommands, checking the exrTrader Presets checkbox will make that selected preset be the default one (this is functionally the same as going into the exrTrader Janus front-end and selected the preset from there. The +/- buttons will apply the selected preset in the same way as any other subcommand. Lastly, the last entry in the exrTrader Presets drop-down menu features an "Add new exrTrader preset" item, which, when selected, will bring up the exrTrader GUI. However, be sure that the you unload the exrTrader plugin before breaking the scene out (unless it is intentional).

 

Download the exrTrader tutorial for Janus on how to use this plugin with Janus.

RSMB Export (RSMBBUFFER)
RSMB Export by Richard Nichols (for the compositing plugin ReelSmart Motion Blur) is supported due to its unique support for the RSMB data.

Janus's front-end interface handles the global control RSMB Export's parameters.

Activate RSMB Buffer Export. This option needs to be ticked if you are using RSMB Export, even if you are using RSMB subcommands.

Janus includes a Subdirectory parameter signifying an optional subfolder for the files to be placed within the final output pass folder.

All other options are the same as what you will find in the actual RSMB Export plugin.

Note: you can leave Filename field blank and Janus will fill in the pass name for this. It may be a good idea to input, at least, something in the subdirectory field so that it is properly organised. You can also use constant and user variables in the Max Pixel Move, Subdirectory, and Filename fields.

Subcommand Parameters
Janus gives you some RSMB subcommands which enables you to control RSMB Export at a per-pass level. The subcommand is RSMB.

The following is a list of parameters and their examples. Note that parameters are case-insensitive.

Note that the RSMB parameter can appear multiple times in the command line.

Planned Support for Other Buffer Savers