ParticleOp
 
 
 

ParticleOp

This C++ example shows how to write a particle operator that manipulates a particle cloud. The particle operator makes the particles in a cloud flock together. The property page of the custom operator allows you to tweak the variables that control the flocking behavior.

Example Files

Location
Files
ParticleOpCpp.cpp
ParticleOpCpp.vcproj
DemoParticleOp.vbs
GNUmakefile

Running the Example

To run the example

  • Run the command DemoParticleOp.

    DemoParticleOp creates a particle cloud, sets up the particles, applies the ParticleOpCpp operator, and opens the operator's property page.

  • Change the ParticleOpCpp parameters to control the flocking behavior of the particles.

Building the C++ Example

Softimage SDK includes a compiled version of ParticleOp. If you want to modify the code, you can rebuild the example by following these instructions.

To build the example on Windows

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

    Starting Visual Studio .NET from an 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 ParticleOpCpp project from the command line, type:

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

To build the example on Linux

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

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

    cppsrc
    
  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:

C++ example, CustomOperator, Update, OutputPort, OperatorContext, Evaluate, Term, ParticleCloudPrimitive, PutUserData, GetUserData, PutPositionArray,   AddParticleEmitter, ParticleEmitter_emission.Rate, FreezeObj, XSIMath.CreateVector3, Particles