You should use the UFO memory allocation mechanism to dynamically allocate and free memory. This will make use of the XSI Compositor’s memory manager. The functions ufoMalloc, ufoRealloc, and ufoFree have the same functionality as the malloc, realloc and free system calls.
Order of UFO Process User Function Calls
UFO user functions are called as follows:
ufoProcessDefine
ufoProcessCopyUserData
UFO Process Instance Destruction
ufoProcessDeleteUserData
UFO Process Instance Saving and Loading
ufoProcessWriteAsciiData ufoProcessReadAsciiData ufoProcessWriteBinaryData ufoProcessReadBinaryData
ufoProcessPreSequenceRender
:
Rendering Frame f ufoProcessCanAvoidRendering ufoProcessCalcDefinedRectangle ufoProcessCalcDefinePixelType ufoProcessCalcNeedRectangles ufoProcessSpecifyConvertPixelTypes ufoProcessPreRender Render Pass 0
:
Rendering Pass p
ufoProcessPreRenderPass
ufoProcessRenderRectangle
[ufoProcessRenderRectangle ..]
(possibly rendered in tiles or slices)
or
ufoProcessRenderLine ..
[ufoProcessRenderLine ..]
or
ufoProcessRenderPixel..
[ufoProcessRenderPixel..]
ufoProcessPostRenderPass
Rendering Pass p+1
:
ufoProcessPostRender
Render Frame f+1
:
ufoProcessPostSequenceRender
SOFTIMAGE|XSI v6.01