Softimage SDK Programmer's Guide > What's New / What's Changed >

# Softimage 2013

The following have been added to the Softimage 2013 SDK.

## New Commands

- AddPortToICENode2 - Adds a new port at the specified location and returns an XSICollection of new port objects.
- HideAllPortValues - Hides all port values in specific container node(s).
- SetCheckerboardMode - Sets the Checkerboard mode of a particular Texture Editor view.
- TransferAllPropertiesAcrossGenOp - Added new IncludeAllClusters parameter to specify that clusters with no properties are included in the transfer

## New Methods (C++)

- CICEAttributeDataArray<T>::operator [] - Accessor to the encapsulated array. This operator is used for writing to the data array.

- CICEAttributeDataArray<bool>::SetData - Accessor to the bool array for writing to the data array.

- CICEAttributeDataArray2D::ResizeSubArray - Changes the size of the sub-array at a given index and returns a new array pointing to the resized sub-array.

- Geometry::AddICEAttribute - Adds a new ICEAttribute object to this geometry and returns this object.

- Geometry::RemoveICEAttribute - Removes an attribute from this geometry.

- CMatrix3f::Get - Gets a pointer to the const version of the internal matrix.

- CMatrix4f::Get - Gets a pointer to the const version of the internal matrix.

- ProjectItem::AddICEAttribute - Adds a new ICEAttribute object to this ProjectItem and returns this object.

- ProjectItem::RemoveICEAttribute - Removes an attribute from this ProjectItem.

- CString::TrimLeft - Removes a character or a group of characters from the beginning of this string.

- CString::TrimRight - Removes a character or a group of characters at the end of this string.

- Camera::GetFrustum - Gets the camera frustum values of the near plane.
- ViewContext::GetMetadata - Returns the user data stored in the Context.
- ViewContext::GetView - Returns the View object associated with the Context.
- Application::GetCustomPropertyCount - Returns the Custom Property count for a given type.
- ShaderParamDef::SetReadOnly - Sets the ReadOnly capability of the Shader parameter.

## New Methods (Object Model)

- ICEAttribute.DataArray - Sets a 1D Array object containing the data defined by an attribute.

- ICEAttribute.DataArray2D - Sets a 2D Array object containing the 2D data defined by an attribute.

- XSICollection.Filter - Returns a subset of this collection as a new collection of objects matching the filter criteria.

- Clip.AddProperty2 - Creates and adds a UserDataBlob or CustomProperty to a Clip object. This method is specific to the python language.

- Geometry.AddICEAttribute - Adds and returns a new attribute data on a geometry.

- Geometry.RemoveICEAttribute - Removes a non-built-in attribute from a geometry if not required by an ICETree.

- Layout.CreateViewFromDefinitionFile2 - Creates a new View object given the path to its definition on disk. This method is similar to Layout.CreateViewFromDefinitionFile but specific to the python language.

- Layout.FindView2 - Finds an existing View object given a name in this layout. This method is similar to Layout.FindView but specific to the python language.

- Menu.AddItem2 - Adds a menu item at to end of the menu. This method is similar to Menu.AddItem but specific to the python language.

- Menu.AddCommandItem2 - Adds a menu item at the end of the menu and attaches a command. This method is similar to Menu.AddCommandItem but specific to the python language.

- Menu.AddCallbackItem2 - Adds a menu item to the end of the menu and attaches a callback function. This method is similar to Menu.AddCallbackItem but specific to the python language.

- ICENode.GetPortFromName2 - Returns the ICENodePort object that matches a specific port name. This method is similar to ICENode.GetPortFromName but specific to the python language.

- ICENode.GetPortFromIndex2 - Returns the ICENodePort object specified by a port index, group index and group instance index. This method is similar to ICENode.GetPortFromIndex but specific to the python language.

- Operator.GetPortAt - Returns the specified Port object. This method is similar to Operator.PortAt but specific to the python language.

- Operator.GetPort3 - Returns the specified Port object for the operator. This method is similar to Operator.GetPort2 but specific to the python language.

- Override.AddParameterEntry2 - Adds a new entry to override the input parameter and returns the new overriding parameter. This method is similar to Override.AddParameterEntry but specific to the python language.

- Primitive.GetGeometry3 - Returns a Geometry object containing the object's geometry. This method is similar to Primitive.GetGeometry2 but specific to the python language.

- ProjectItem.AddICEAttribute - Adds and returns a new attribute data on this object.

- ProjectItem.RemoveICEAttribute - Removes a non-built-in attribute from a geometry if not required by an ICETree.

- SceneItem.GetPropertyFromName2 - Returns a property, given its scripting name. This method is similar to SceneItem.GetPropertyFromName but specific to the python language.

- SceneItem.GetLocalPropertyFromName2 - Returns a local property, given its scripting name. This method is similar to SceneItem.GetLocalPropertyFromName but specific to the python language.

- ShaderArrayParamDef.ItemDef2 - Returns the underlying ShaderParamDef or ShaderStructParamDef object for this array item. This method is similar to ShaderArrayParamDef.ItemDef but specific to the Python language.

- ShaderArrayParameter.Item2 - Returns the specified ShaderParameter item in this array. This method is similar to ShaderArrayParameter.Item but specific to the Python language.

- ShaderParamDefContainer.AddParamDef2 - This method is similar to ShaderParamDefContainer.AddParamDef but specific to the Python language.

- ShaderParamDefContainer.GetParamDefByName2 - Returns the ShaderParamDef that matches the specified name from this container. This method is similar to ShaderParamDefContainer.GetParamDefByName but specific to the Python language.

- ShaderParameter.Definition2 - Returns the shader parameter definition as a ShaderParamDef object. This method is similar to ShaderParameter.Definition but specific to the Python language.

- View.FindView2 - Finds an existing View object given a name. This method is similar to View.FindView but specific to the Python language.

- X3DObject.GetActivePrimitive3 - Returns the 3D object's active Primitive for a given frame. This method is similar to X3DObject.GetActivePrimitive2 but specific to the Python language.

- XSIApplication.ActiveProject3 - Returns or sets the active XSIProject object. This method is similar to XSIApplication.ActiveProject2 but specific to the Python language.

- XSIApplication.GetObjectFromID2 - Returns the object matching the specified ID. This method is similar to XSIApplication.GetObjectFromID but specific to the python language.

- XSIFactory.CreateObjectFromPreset2 - Creates an object from a preset and optional preset family name. This method is similar to XSIFactory.CreateObjectFromPreset but specific to the Python language.

- ShaderParamDefOptions.SetReadOnly - Sets the Read Only capability of the Shader parameter.
- XSIApplication.GetCustomPropertyCount - Returns the Custom Property count for a given type.

## New Enumerations

- siHLEOperationAbsoluteOffset, siHLEOperationRelativeOffset, siHLEOperationAbsoluteScaling - Constants that define the high-level editing (HLE) operation used in the FCurve Editor, when the HLE tool is enabled.

- siRenderRegionRefreshMode - This indicates the render region refresh mode to use for render regions.

## New Events

- siOnBeginScrubbing - Fired before setting a parameter value(s) with a PPG slider control.
- siOnEndScrubbing - Fired after a parameter value(s) have been changed with a slider control.
- siOnPreParseShaderDef - Fired after a shader definition is pre parsed.
- siOnPreDefineShaderDef - Fired after a shader definition is pre defined.

## New Anchorpoints

- siMenuTbICECrowdFXActorsID

- siMenuTbICECrowdFXSimulationID

- siMenuTbICECrowdFXCrowdID

- siMenuFCurveEditorTopLevelID

- siMenuFCurveEditorFileID

- siMenuFCurveEditorEditID

- siMenuFCurveEditorViewID

- siMenuFCurveEditorKeysID

- siMenuFCurveEditorCurvesID

- siMenuFCurveEditorSelectID

- siMenuSchematicViewTopLevelID

- siMenuMaterialManagerTopLevelID

- siMenuAnimMixerEditID

- siMenuAnimMixerViewID

- siMenuAnimMixerTrackID

- siMenuAnimMixerClipID

- siMenuAnimMixerMixID

- siMenuAnimMixerEffectID

- siMenuShaderCodeEditContextID

## View Attributes

- MaterialManagerAttributes
  - selection - Returns a comma-delimited string containing the full name(s) of the selected materials currently displayed in the Material Manager
- WeightEditorAttributes
  - invaliddeformers - Returns an XSICollection containing the invalid X3DObject deformer object(s) currently displayed in the Weight Editor.
  - selecteddeformers - Returns an XSICollection containing the selected X3DObject deformer object(s) currently displayed in the Weight Editor.
  - verticesnotfullyassigned - Returns a one-dimension SAFEARRAY containing the string expression of point components which are not full assigned weight.
  - verticesexceedingdeformerlimit - Returns one-dimension SAFEARRAY containing the string expression of point components which are exceeding the deformer limit.
  - painttoolactivated - Determine whether or not the paint tool is activated in Weight Paint Panel.
- FCurveEditorAttributes / AnimationEditorAttributes

  - ripple - Determines whether or not existing keys are pushed ahead on the timeline when you parse keys on an fcurve or when you scale a region of keys

  - selectedcurves - Returns or sets the selected FCurve objects as a comma-delimited string containing the full name of the FCurve's parent

  - frameall - Frames all displayed fcurves

  - frameselection - Frames selection

  - frameplaybackrange - Frames all the fcurves within the time span specified by the timeline

  - frameselectedkeys - Frames selected keys

  - frameselectedcurves - Frames selected fcurves

  - frameregion - Frames a region

  - centercurrenttime - Centers the fcurve graph around the timeline cursor's position

  - autoframe - Determines whether or not animation editor will frame all fcurves automatically

  - interactiveupdate - Determines whether or not to see the effect of the changes in viewports as you edit the fcurves.

  - showbuffercurves - Determines whether or not to display a temporary copy of the original function curve that has been saved into a buffer.

  - displaynormalized - Determines whether or not to display the normalized fcurves.

  - classicmode - Switches between Suite and Classic Mode

  - hle - Determines whether or not to enable the high-level editing (HLE) tool.

  - hlecompensation - Determines whether or not to enable the high-level editing (HLE) compensation mode

  - hleoperation - Determines which high-level editing (HLE) operation the HLE tool uses

  - displayoptions - Determines which fcurves are displayed in the graph by default

  - isolatecurve - Determines whether or not to isolate the selected fcurves so that only they appear in the graph

  - clearallcurves - Hides all fcurves associated with the selected object without collapsing the animation explorer

  - hidecurve - Hides the selected fcurves

  - unhideallcurves - Displays all hidden fcurves

  - keysonunselectedcurves - Determines whether or not to display keys on all unselected curves

  - slopesonunselectedkeys - Determines whether or not to display the slope handles of all unselected keys on a selected curve

  - showlabels - Determines whether or not to display labels on all selected curves

  - keyscoordinates - Determines whether or not to display the X and Y coordinate values for each selected key

  - grid - Determines whether or not to display the X and Y axis grid lines

  - rulers - Determines whether or not to display the rulers on the horizontal X(time) and vertical Y(value) axes

  - timecursorvisible - Determines whether or not to display the red playback cursor in the fcurve graph

  - timecursorselectable - Determines whether or not the red playback cursor is selectable in the fcurve graph

  - metacurveregion - Determines whether or not to display a bar below the graph showing an overview representation of all the keys of the selected fcurves

  - localtime - Determines whether or not to display the corresponding time of the animation between the action in the animation mixer and the fcurve editor

  - framerange - Returns or sets the frame range in frame values

  - timerange - Returns or sets the frame range in time values

  - valuerange - Returns or sets the minimum/maximum values (Y axis) range

  - displayedcurves - Returns or sets the displayed FCurve objects as a comma delimited string containing the full name of the FCurve's parent

  - selectedkeysatframes - Returns or sets the selected keys of FCurve objects as a string

  - selectedkeysattimes - Returns or sets the selected keys of FCurve objects as a string

  - savebuffer - Saves the buffer copy of the edited curve, when buffer curves option is active

  - swapbuffer - Swaps between the edited curve and its buffer copy, when buffer curves option is active

- DopeSheetAttributes

  - pasteoperation - The behavior when copied keys are paste into the current DopeSheet

  - frameall - Frames all the keys in the DopeSheet

  - frameselection - Frames the selected keys in the DopeSheet

  - frameplaybackrange - Frames the playback range in the DopeSheet

  - displayoptions - Determines which tracks are displayed in the DopeSheet

  - aligntrackswithtreeview - Determines whether the DopeSheet tracks align with its corresponding node in the tree view on the left

  - displayscenesummarytrack - Determines whether the scene summary track is displayed

  - displaydopesheetsummarytrack - Determines whether the DopeSheet summary track is displayed

  - phonemekeydisplay - Determines whether the phoneme keys display mode is active

  - phonemeshowinbetweens - Determines whether the shape key names between the shape keys are displayed in phoneme key display mode

  - phonemekeythreshold -Determines the weight threshold used by the phoneme key display mode

  - ripple - Determines whether ripple is enabled

- AnimationMixerAttributes
  - targetcontent - The name of the object for which to display in the Animation Mixer
- CustomDisplayHostAttributes
  - metadata - The string-based data associated with the Custom Display Host View
- ObjectViewAttributes

  - holdselection - Controls whether to show the last selection when nothing is selected in Object View

- TextureEditorAttributes

  - checkerboard - Enables/Disables the checkerboard mode

  - frameselection - Frames the selected components in the Texture Editor view

  - frameall - Frames all the vertices in the Texture Editor view

  - frameimage - Frames the image in the Texture Editor view

  - showselected - Show the selected components in the Texture Editor view

  - hideselected - Hide the selected components in the Texture Editor view

  - showall - Show all the components in the Texture Editor view

  - maxdisplayresolution - Sets/Gets the maximum display resolution of the image in the Texture Editor view

  - interpolateimage - Enables/Disables the interpolation of the image

  - dimimage - Enables/Disables the dimming of the image

  - overlaps - Enables/Disables the highlighting of overlaps in the Texture Editor view

  - oddoverlaps - Enables/Disables the highlighting of odd overlaps in the Texture Editor view

  - coverage - Enables/Disables the display of the coverage in the Texture Editor view

  - connectivity - Enables/Disables the display of the connectivity in the Texture Editor view.

  - statusbar - Enables/Disables the display of the statusbar in the Texture Editor view

  - clip - Sets/Gets the image clip in the Texture Editor view

  - projection - Sets/Gets the UV projection in the Texture Editor view

  - lock - Controls the lock selection state button in the toolbar

- WeightPaintPanelAttributes
  - solo - Determine whether or not to display the weight map for only the current deformer in Weight Paint Panel