c4d_particles.h File Reference

Classes

class   TP_PGroupArray
struct   TP_Spin
class   TP_BaseCollision
struct   TP_CollisionInterface
struct   TP_PShapeI
class   TP_PShapePtr
class   TP_BaseShape
struct   TP_PShapeInterface
struct   TP_FreeParticle_CB
struct   TP_FreePShape_CB
struct   TP_Msg
struct   TP_PGroupPreRemove
class   TP_MasterSystem
class   TP_ParticleNode
class   TP_PGroup

Macros

#define  ID_THINKINGPARTICLES
#define  ID_TP_PGROUP
#define  ID_TP_PARTICLEGEOMETRY
#define  ID_TP_VALUE_TYPE_PARTICLE
#define  ID_TP_DATA_TYPE_PARTICLE
#define  ID_TP_VALUE_TYPE_SHAPE
#define  ID_TP_DATA_TYPE_SHAPE
#define  ID_TP_VALUE_TYPE_GROUP
#define  ID_TP_DATA_TYPE_GROUP
#define  ID_TP_VALUE_TYPE_SPIN
#define  ID_TP_DATA_TYPE_SPIN
#define  ID_TP_OPCLASS
#define  ID_TP_OPGROUP_CONDITION
#define  ID_TP_OPGROUP_HELPER
#define  ID_TP_OPGROUP_INITIATOR
#define  ID_TP_OPGROUP_GENERATOR
#define  ID_TP_OPGROUP_STANDARD
#define  ID_TP_OPGROUP_DYNAMIC
#define  ID_TP_OP_STORM
#define  ID_TP_IN_SELFDYNAMIC
#define  ID_TP_HP_PARTICLEDATA
#define  ID_TP_OP_PARTICLEDATA
#define  ID_TP_IN_INTERACT
#define  ID_TP_IF_PARTICLEAGE
#define  ID_TP_HP_SPINCONVERT
#define  ID_TP_HP_PGROUP
#define  ID_TP_HP_VELOCITYCONVERT
#define  ID_TP_OP_DEFLECTOR
#define  ID_TP_OP_POSFOLLOW
#define  ID_TP_OP_OBJECTSHAPE
#define  ID_TP_OP_SPIN
#define  ID_TP_OP_ALIGNMENT
#define  ID_TP_OP_PGROUP
#define  ID_TP_OP_MASS
#define  ID_TP_OP_SIZE
#define  ID_TP_OP_SCALE
#define  ID_TP_OP_FRICTION
#define  ID_TP_OP_VELOCITY
#define  ID_TP_OP_MOTIONINHERI
#define  ID_TP_OP_BUBBLE
#define  ID_TP_OP_DIE
#define  ID_TP_OP_GRAVITY
#define  ID_TP_OP_WIND
#define  ID_TP_HP_TIMER
#define  ID_TP_HP_CHRONOMETER
#define  ID_TP_OP_FRAGMENT
#define  ID_TP_OP_FREEZE
#define  ID_TP_OP_REPULSEBOUNCE
#define  ID_TP_OP_ROLLING
#define  ID_TP_IF_LIGHT
#define  ID_THINKINGCOMMAND
#define  ID_TP_HP_SURFACEPOSITION
#define  ID_TP_HP_VOLUMEPOSITION
#define  ID_TP_OP_BORN
#define  TP_SN_HOOK
#define  ID_TP_OP_BLURP
#define  ID_TP_OP_PARTICLEDRAW
#define  ID_TP_OP_PARTICLEDRAWTOOL
#define  ID_TP_OP_MATTERWAVES
#define  ID_TP_OP_FORCEOBJECT
#define  THINKINGPARTICLES_VERSION
#define  THINKINGPARTICLES_PRIORITY
#define  TP_PGroupInfo
#define  TP_DataChannelInfo
#define  DATACHANNEL_INFO_CHAN
#define  DATACHANNEL_INFO_NAME
#define  DATACHANNEL_INFO_TYPE
#define  TP_Collision

Enumerations

enum   TP_InsertMode {
   TP_INSERT_NONE ,
   TP_INSERT_UNDERFIRST ,
   TP_INSERT_UNDERLAST ,
   TP_INSERT_BEFORE ,
   TP_INSERT_AFTER
}
enum   TP_GetPGroupMode {
   TP_GETPGROUP_ALL ,
   TP_GETPGROUP_WITHPARTICLES ,
   TP_GETPGROUP_SELECTED
}
enum   {
   TP_MSG_PGROUP_PREREMOVE ,
   TP_MSG_PGROUP_TREECHANGED ,
   TP_MSG_DCHANNEL_PREREMOVE ,
   TP_MSG_DCHANNEL_CHANGED ,
   TP_MSG_GET_PSHAPEINTERFACE ,
   TP_MSG_GET_COLLISIONINTERFACE ,
   TP_MSG_OBJECT_GETPARTICLES
}

函数

Bool   InitThinkingParticles (void)

变量

class CINEWARE_SINGLEINHERITANCE   TP_PGroup
class CINEWARE_SINGLEINHERITANCE   TP_ParticleNode
class CINEWARE_SINGLEINHERITANCE   TP_MasterSystem

Macro Definition Documentation

◆  ID_THINKINGPARTICLES

#define ID_THINKINGPARTICLES

Thinking Particles scene hook ID.

◆  ID_TP_PGROUP

#define ID_TP_PGROUP

Thinking Particles particle group plugin ID.

◆  ID_TP_PARTICLEGEOMETRY

#define ID_TP_PARTICLEGEOMETRY

Thinking Particles particle geometry plugin ID.

◆  ID_TP_VALUE_TYPE_PARTICLE

#define ID_TP_VALUE_TYPE_PARTICLE

Particle value type ID.

◆  ID_TP_DATA_TYPE_PARTICLE

#define ID_TP_DATA_TYPE_PARTICLE

Particle data type ID.

◆  ID_TP_VALUE_TYPE_SHAPE

#define ID_TP_VALUE_TYPE_SHAPE

Shape value type ID.

◆  ID_TP_DATA_TYPE_SHAPE

#define ID_TP_DATA_TYPE_SHAPE

Shape data type ID.

◆  ID_TP_VALUE_TYPE_GROUP

#define ID_TP_VALUE_TYPE_GROUP

Group value type ID.

◆  ID_TP_DATA_TYPE_GROUP

#define ID_TP_DATA_TYPE_GROUP

Group data type ID.

◆  ID_TP_VALUE_TYPE_SPIN

#define ID_TP_VALUE_TYPE_SPIN

Spin value type ID.

◆  ID_TP_DATA_TYPE_SPIN

#define ID_TP_DATA_TYPE_SPIN

Spin data type ID.

◆  ID_TP_OPCLASS

#define ID_TP_OPCLASS

Thinking Particles class ID.

◆  ID_TP_OPGROUP_CONDITION

#define ID_TP_OPGROUP_CONDITION

Thinking Particles condition group ID.

◆  ID_TP_OPGROUP_HELPER

#define ID_TP_OPGROUP_HELPER

Thinking Particles helper group ID.

◆  ID_TP_OPGROUP_INITIATOR

#define ID_TP_OPGROUP_INITIATOR

Thinking Particles initiator group ID.

◆  ID_TP_OPGROUP_GENERATOR

#define ID_TP_OPGROUP_GENERATOR

Thinking Particles generator group ID.

◆  ID_TP_OPGROUP_STANDARD

#define ID_TP_OPGROUP_STANDARD

Thinking Particles standard group ID.

◆  ID_TP_OPGROUP_DYNAMIC

#define ID_TP_OPGROUP_DYNAMIC

Thinking Particles dynamic group ID.

◆  ID_TP_OP_STORM

#define ID_TP_OP_STORM

Particle storm ID.

◆  ID_TP_IN_SELFDYNAMIC

#define ID_TP_IN_SELFDYNAMIC

PPass ID.

◆  ID_TP_HP_PARTICLEDATA

#define ID_TP_HP_PARTICLEDATA

PGetData ID.

◆  ID_TP_OP_PARTICLEDATA

#define ID_TP_OP_PARTICLEDATA

PSetData ID.

◆  ID_TP_IN_INTERACT

#define ID_TP_IN_INTERACT

PPass AB ID.

◆  ID_TP_IF_PARTICLEAGE

#define ID_TP_IF_PARTICLEAGE

PAge ID.

◆  ID_TP_HP_SPINCONVERT

#define ID_TP_HP_SPINCONVERT

PSpinConvert ID.

◆  ID_TP_HP_PGROUP

#define ID_TP_HP_PGROUP

PGroup ID (under TP Helper).

◆  ID_TP_HP_VELOCITYCONVERT

#define ID_TP_HP_VELOCITYCONVERT

PVelocityConvert ID.

◆  ID_TP_OP_DEFLECTOR

#define ID_TP_OP_DEFLECTOR

PDeflector ID.

◆  ID_TP_OP_POSFOLLOW

#define ID_TP_OP_POSFOLLOW

PPosition Follow ID.

◆  ID_TP_OP_OBJECTSHAPE

#define ID_TP_OP_OBJECTSHAPE

PShape ID.

◆  ID_TP_OP_SPIN

#define ID_TP_OP_SPIN

PSpin ID.

◆  ID_TP_OP_ALIGNMENT

#define ID_TP_OP_ALIGNMENT

PAlignment ID.

◆  ID_TP_OP_PGROUP

#define ID_TP_OP_PGROUP

PGroup ID (under TP Standard).

◆  ID_TP_OP_MASS

#define ID_TP_OP_MASS

PMass ID.

◆  ID_TP_OP_SIZE

#define ID_TP_OP_SIZE

PSize ID.

◆  ID_TP_OP_SCALE

#define ID_TP_OP_SCALE

PScale ID.

◆  ID_TP_OP_FRICTION

#define ID_TP_OP_FRICTION

PFriction ID.

◆  ID_TP_OP_VELOCITY

#define ID_TP_OP_VELOCITY

PVelocity ID.

◆  ID_TP_OP_MOTIONINHERI

#define ID_TP_OP_MOTIONINHERI

PMotionInheritance ID.

◆  ID_TP_OP_BUBBLE

#define ID_TP_OP_BUBBLE

PBubble ID.

◆  ID_TP_OP_DIE

#define ID_TP_OP_DIE

PDie ID.

◆  ID_TP_OP_GRAVITY

#define ID_TP_OP_GRAVITY

PGravity ID.

◆  ID_TP_OP_WIND

#define ID_TP_OP_WIND

PWind ID.

◆  ID_TP_HP_TIMER

#define ID_TP_HP_TIMER

PTimer ID.

◆  ID_TP_HP_CHRONOMETER

#define ID_TP_HP_CHRONOMETER

PChronometer ID.

◆  ID_TP_OP_FRAGMENT

#define ID_TP_OP_FRAGMENT

PFragment ID.

◆  ID_TP_OP_FREEZE

#define ID_TP_OP_FREEZE

PFreeze ID.

◆  ID_TP_OP_REPULSEBOUNCE

#define ID_TP_OP_REPULSEBOUNCE

PRepulse and Bounce ID.

◆  ID_TP_OP_ROLLING

#define ID_TP_OP_ROLLING

PRolling ID.

◆  ID_TP_IF_LIGHT

#define ID_TP_IF_LIGHT

PLight ID.

◆  ID_THINKINGCOMMAND

#define ID_THINKINGCOMMAND

Thinking Particles Settings command ID.

◆  ID_TP_HP_SURFACEPOSITION

#define ID_TP_HP_SURFACEPOSITION

PSurfacePosition ID.

◆  ID_TP_HP_VOLUMEPOSITION

#define ID_TP_HP_VOLUMEPOSITION

PVolumePosition ID.

◆  ID_TP_OP_BORN

#define ID_TP_OP_BORN

PBorn ID.

◆  TP_SN_HOOK

#define TP_SN_HOOK

Thinking Particles serial ID.

◆  ID_TP_OP_BLURP

#define ID_TP_OP_BLURP

PBlurp ID.

◆  ID_TP_OP_PARTICLEDRAW

#define ID_TP_OP_PARTICLEDRAW

PDraw ID.

◆  ID_TP_OP_PARTICLEDRAWTOOL

#define ID_TP_OP_PARTICLEDRAWTOOL

Particle Draw tool ID.

◆  ID_TP_OP_MATTERWAVES

#define ID_TP_OP_MATTERWAVES

PMatterWaves ID.

◆  ID_TP_OP_FORCEOBJECT

#define ID_TP_OP_FORCEOBJECT

PForceObject ID.

◆  THINKINGPARTICLES_VERSION

#define THINKINGPARTICLES_VERSION

Thinking Particles library version.

◆  THINKINGPARTICLES_PRIORITY

#define THINKINGPARTICLES_PRIORITY

Thinking Particles priority.

◆  TP_PGroupInfo

#define TP_PGroupInfo

Container with information about a group. The container IDs are private.

◆  TP_DataChannelInfo

#define TP_DataChannelInfo

Container with information about a channel. The container IDs are: DATACHANNEL_INFO

◆  TP_Collision

#define TP_Collision

Collision ID.

Function Documentation

◆  InitThinkingParticles()

Bool InitThinkingParticles ( void  )

Must be called before Thinking Particles is used. The best way is to call it in PluginMessage() :

Bool PluginMessage ( Int32 id , void *data) { switch ( id ) { case C4DPL_STARTACTIVITY : { InitThinkingParticles ( void ); } break ;

// ... } return true ; }

返回
true if Thinking Particles initialization was successful, otherwise false .

Variable Documentation

◆  TP_PGroup

class CINEWARE_SINGLEINHERITANCE TP_PGroup

◆  TP_ParticleNode

class CINEWARE_SINGLEINHERITANCE TP_ParticleNode

◆  TP_MasterSystem

class CINEWARE_SINGLEINHERITANCE TP_MasterSystem
C4DPL_STARTACTIVITY
#define C4DPL_STARTACTIVITY
Sent to all plugins after all PluginStart() have been called.
定义: c4d_plugin.h:62
Int32
maxon::Int32 Int32
定义: ge_sys_math.h:58
InitThinkingParticles
Bool InitThinkingParticles(void)
定义: c4d_particles.h:1617
PluginMessage
Bool PluginMessage(Int32 id, void *data)
Bool
maxon::Bool Bool
定义: ge_sys_math.h:53