Object Replacement Object Agents

 

A LScript Object Replacement (LS/OR) script allows you to arbitrarily replace an object in Layout on a frame-by-frame basis.

The process() function of a LS/OR plug-in receives a single argument. This argument is an instance of a Replacement Object Agent. The LS/OR Replacement Object Agent provides the following data members:

Data Members

objID                                              (READ-ONLY)
objID is an Object Agent that represents the object whose geometry you are replacing.

curFrame                                       (READ-ONLY)
curFrame is an integer that represents the frame number for the currently loaded geometry.

curTime                                         (READ-ONLY)
curTime is a number that represents the time index for the currently loaded geometry.

newFrame                                      (READ-ONLY)
newFrame is an integer value that represents the frame number for the next step. New geometry should be loaded if the object needs to look different at this new frame

newTime                                        (READ-ONLY)
newTime is a number that represents the time index for the next step. New geometry should be loaded if the object needs to look different at this new time index. 'curTime' and 'newTime' may not be sequential, because network rendering can cause the renderer to jump around between non-sequential times.

curType                                         (READ-ONLY)
curType is a constant value that indicates the current type of rendering to be done. The script can provide different geometry for interactive previewing and actual rendering by examining this value. This value can be one of NONE, PREVIEW, or RENDER. NONE is present if no geometry is loaded for the current time index.

PREVIEW indicates that a Layout preview is being generated, and

RENDER is used when a complete render is being done.

newType                                     (READ-ONLY)
newType is a constant that indicates the type of rendering that will be done at the next frame/time index. This member can be one of NONE, PREVIEW, or RENDER.

curFilename                                (READ-ONLY)
curFilename is a string value that represents the object geometry file currently loaded, and may be 'nil' if there is no geometry loaded.

newFilename
newFilename is a string value that represents the filename of a new object file to be loaded as the geometry for this item at the new time index, and is the only data member set by the script. It should be set only if the new geometry differs from that currently loaded, because loading new geometry incurs significant overhead.