Custom ICENode Examples

This addon shows various self-installing custom ICENodes.

CustomVector3ToScalar
This is a simple example of an ICENode. The node reads a vector3 input value, extracts the XYZ components and write each one to individual output ports. This sample node is demonstrated with the CustomVector3ToScalar.scn scene which contains an ICENode graph that performs a twist operation on a cube.

BBoxGenerator
This sample demonstrates how to use the single-threading model for implementing a custom ICENode. The node reads all the points of a geometry at once and write the min and max point value on the output.

ElementGenerator
This sample demonstrates how to implement an element generator ICENode typically used for generating particles. The ElementGenerator.scn contains an instance of the ElementGenerator node and creates a 2D particle grid whose size is specified with the node's Size input port.

Vector3Union
This sample demonstrates how to create an array of CVector3f objects by combining the similar objects of 2 input CVector3f arrays in multi-threading. The sample scene Vector3Union.scn demonstrates how to generates particles from the union of 2 point position vectors output by GetClosestPoints nodes.

YPosFilter
The YPosFilter demonstrates how to remove elements from a node index set to achieve a filtering operation in an ICE graph. The YPosFilter.scn uses the ICENode sample to remove all point elements of a cone whose Y components are below 0.0. You can watch the resulting effect by translating the cone in the Y direction.

Example Files

Location
Files
CustomVector3ToScalar.cpp
BBoxGenerator.cpp
ElementGenerator.cpp
Vector3UnionNode.cpp
YPosFilter.cpp

Running the Example

To run the CustomVector3ToScalar example

To run the BBoxGenerator example

To run the ElementGenerator example

To run the Vector3Union example

To run the YPosFilter example

Building the Examples

Use the following instructions to build the ICENode samples.

To build the CustomVector3ToScalar example on Windows

  1. Open a Softimage command prompt, and type devenv to start Visual Studio .NET.

    Starting Visual Studio .NET from a Softimage command prompt ensures that environment variables such as XSISDK_ROOT are set (otherwise you'll get build and link errors).

    Tip To load the CustomVector3ToScalar project from the command line, type:

    devenv cppsrc_CustomVector3ToScalar\CustomVector3ToScalar.vcproj
  2. In Visual Studio .NET, open the project file .vcproj.
  3. Select a configuration (Release or Debug) and build the DLL.

To build the CustomVector3ToScalar example on Linux

  1. In a shell (tcsh) window, type:

    source $XSI_HOME/.xsi_<xsi_version>
  2. Change directories to

    cppsrc_CustomVector3ToScalar
  3. To remove all intermediate files before building the example, run this command:

    gmake clean
  4. To compile the example, run this command:

    gmake

To build the BBoxGenerator example on Windows

  1. Open a Softimage command prompt, and type devenv to start Visual Studio .NET.

    Starting Visual Studio .NET from a Softimage command prompt ensures that environment variables such as XSISDK_ROOT are set (otherwise you'll get build and link errors).

    Tip To load the BBoxGenerator project from the command line, type:

    devenv cppsrc_BBoxGenerator\BBoxGenerator.vcproj
  2. In Visual Studio .NET, open the project file .vcproj.
  3. Select a configuration (Release or Debug) and build the DLL.

To build the BBoxGenerator example on Linux

  1. In a shell (tcsh) window, type:

    source $XSI_HOME/.xsi_<xsi_version>
  2. Change directories to

    cppsrc_BBoxGenerator
  3. To remove all intermediate files before building the example, run this command:

    gmake clean
  4. To compile the example, run this command:

    gmake

To build the ElementGenerator example on Windows

  1. Open a Softimage command prompt, and type devenv to start Visual Studio .NET.

    Starting Visual Studio .NET from a Softimage command prompt ensures that environment variables such as XSISDK_ROOT are set (otherwise you'll get build and link errors).

    Tip To load the ElementGenerator project from the command line, type:

    devenv cppsrc_ElementGenerator\ElementGenerator.vcproj
  2. In Visual Studio .NET, open the project file .vcproj.
  3. Select a configuration (Release or Debug) and build the DLL.

To build the ElementGenerator example on Linux

  1. In a shell (tcsh) window, type:

    source $XSI_HOME/.xsi_<xsi_version>
  2. Change directories to

    cppsrc_ElementGenerator
  3. To remove all intermediate files before building the example, run this command:

    gmake clean
  4. To compile the example, run this command:

    gmake

To build the Vector3Union example on Windows

  1. Open a Softimage command prompt, and type devenv to start Visual Studio .NET.

    Starting Visual Studio .NET from a Softimage command prompt ensures that environment variables such as XSISDK_ROOT are set (otherwise you'll get build and link errors).

    Tip To load the Vector3Union project from the command line, type:

    devenv cppsrc_vector3_union\Vector3Union.vcproj
  2. In Visual Studio .NET, open the project file .vcproj.
  3. Select a configuration (Release or Debug) and build the DLL.

To build the Vector3Union example on Linux

  1. In a shell (tcsh) window, type:

    source $XSI_HOME/.xsi_<xsi_version>
  2. Change directories to

    cppsrc_vector3_union
  3. To remove all intermediate files before building the example, run this command:

    gmake clean
  4. To compile the example, run this command:

    gmake

To build the YPosFilter example on Windows

  1. Open a Softimage command prompt, and type devenv to start Visual Studio .NET.

    Starting Visual Studio .NET from a Softimage command prompt ensures that environment variables such as XSISDK_ROOT are set (otherwise you'll get build and link errors).

    Tip To load the YPosFilter project from the command line, type:

    devenv cppsrc_YPosFilter\YPosFilter.vcproj
  2. In Visual Studio .NET, open the project file .vcproj.
  3. Select a configuration (Release or Debug) and build the DLL.

To build the YPosFilter example on Linux

  1. In a shell (tcsh) window, type:

    source $XSI_HOME/.xsi_<xsi_version>
  2. Change directories to

    cppsrc_YPosFilter
  3. To remove all intermediate files before building the example, run this command:

    gmake clean
  4. To compile the example, run this command:

    gmake

Keywords

This example uses the following keywords:

ICENode ICENodeContext C++