Oxparticle
Attributes
-
ENGLISH NAME : X-ParticlesEmitterObject
-
NAME : Oxparticle
-
INCLUDE : Obase
-
PATH : res/description/oxparticle.res
-
PLUGIN : X-Particles
-
MAXON online help (may not exist): OXPARTICLE
Elements
Example Code
The following code does not use the correct values when setting the data. You should check directly in C4D for the correct values that you should use in place of the ones that are shown.
This code is just to show you how to access the values for getting and setting the parameters.
Python
import c4d
from c4d import gui
def main():
obj = c4d.BaseObject(c4d.Oxparticle)
doc.InsertObject(obj)
c4d.EventAdd(c4d.EVENT_FORCEREDRAW)
#You can set parameters two different ways.
#First way
obj[c4d.PARTICLES_EMITTER_SHAPE] = c4d.PARTICLES_EMITTER_SHAPE_RECT
obj[c4d.PARTICLES_EMITTER_SHAPE_ROTATION] = c4d.EMORIENT_XPOS
obj[c4d.PARTICLES_EMITTER_SHAPE_RECT_W] = 0.1
obj[c4d.PARTICLES_EMITTER_SHAPE_RECT_H] = 0.1
obj[c4d.PARTICLES_EMITTER_SHAPE_RECT_ANGLEH] = 0.1
obj[c4d.PARTICLES_EMITTER_SHAPE_RECT_ANGLEV] = 0.1
obj[c4d.PARTICLES_EMITTER_SHAPE_DISC_RAD] = 0.1
obj[c4d.PARTICLES_EMITTER_SHAPE_DISC_ANGLE] = 0.1
obj[c4d.PARTICLES_EMITTER_SHAPE_ELLIPSE_RAD_H] = 0.1
obj[c4d.PARTICLES_EMITTER_SHAPE_ELLIPSE_RAD_V] = 0.1
obj[c4d.PARTICLES_EMITTER_SHAPE_ELLIPSE_ANGLE] = 0.1
obj[c4d.PARTICLES_EMITTER_SHAPE_DISC_RINGONLY] = True
obj[c4d.PARTICLES_EMITTER_SHAPE_DISC_ANGLEVAR] = 0.1
obj[c4d.PARTICLES_EMITTER_SHAPE_3D] = True
obj[c4d.PARTICLES_EMITTER_SHAPE_LENGTH] = 0.1
obj[c4d.PARTICLES_EMITTER_SHAPE_OFFSET_RANDOM] = True
obj[c4d.PARTICLES_EMITTER_SOURCE_OFFSET] = 0.1
obj[c4d.PARTICLES_EMITTER_SHAPE_SPHERE_RAD] = 0.1
obj[c4d.PARTICLES_EMITTER_SHAPE_SPHERE_SURFACEONLY] = True
obj[c4d.PARTICLES_EMITTER_SHAPE_BOX_SIZE] = c4d.Vector(1.0,1.0,1.0)
obj[c4d.PARTICLES_EMITTER_SHAPE_BOX_SURFACEONLY] = True
obj[c4d.PARTICLES_EMITTER_SHAPE_BOX_EMITMODE] = c4d.BSOURCE_EMITMODE_RANDOM
obj[c4d.PARTICLES_EMITTER_SHAPE_BOX_GRIDSIZE] = 0.1
obj[c4d.PARTICLES_EMITTER_BOX_DIR] = c4d.BSOURCE_DIR_FACES
obj[c4d.PARTICLES_EMITTER_SHAPE_CYLINDER_RADIUS] = 0.1
obj[c4d.PARTICLES_EMITTER_SHAPE_CYLINDER_HEIGHT] = 0.1
obj[c4d.PARTICLES_EMITTER_CYLINDER_DIR] = c4d.CSOURCE_DIR_RADIAL
obj[c4d.PARTICLES_EMITTER_SHAPE_CYLINDER_SURFACEONLY] = True
obj[c4d.PARTICLES_EMITTER_SPHERE_DIR] = c4d.SOURCE_DIR_NORMAL
obj[c4d.PARTICLES_EMITTER_TIMESCALE] = 0.1
obj[c4d.PARTICLES_EMITTER_SHAPE_OBJECT_NURBS] = c4d.OBJECT_NURBS_BOTH
obj[c4d.PARTICLES_EMITTER_SHAPE_OBJECT_NURBS_C1] = True
obj[c4d.PARTICLES_EMITTER_SHAPE_OBJECT_NURBS_R1] = True
obj[c4d.PARTICLES_EMITTER_SHAPE_OBJECT_NURBS_C2] = True
obj[c4d.PARTICLES_EMITTER_SHAPE_OBJECT_NURBS_R2] = True
obj[c4d.PARTICLES_EMITTER_SHAPE_OBJECT_EMISSION] = c4d.PARTICLES_EMITTER_SHAPE_OBJECT_EMISSION_POLYCENTRE
obj[c4d.PARTICLES_EMITTER_SHAPE_OBJECT_RETRIES] = 1
obj[c4d.PARTICLES_EMITTER_SHAPE_OBJECT_GRIDSIZE] = 0.1
obj[c4d.PARTICLES_EMITTER_SHAPE_OBJECT_GRIDMODE] = c4d.EMITTER_GRIDMODE_RANDOM
obj[c4d.PARTICLES_EMITTER_SHAPE_OBJECT_GRIDAXIS] = c4d.EMITTER_GRIDAXIS_X
obj[c4d.PARTICLES_EMITTER_SHAPE_OBJECT_GRIDFULLSTOP] = True
obj[c4d.PARTICLES_EMITTER_SHAPE_OBJECT_EDGES_SPLINE_POSITION_MODE] = c4d.EDGES_SPLINE_POSITION_MODE_RANDOM
obj[c4d.PARTICLES_EMITTER_SHAPE_OBJECT_EDGES_SPLINE_POSITION] = 0.1
obj[c4d.PARTICLES_EMITTER_SHAPE_OBJECT_EDGES_SPLINE_POSITION_SPREAD] = 0.1
obj[c4d.PARTICLES_EMITTER_SHAPE_OBJECT_EDGES_SPLINE_POSITION_POSSPREAD] = True
obj[c4d.PARTICLES_EMITTER_SHAPE_OBJECT_EDGES_SPLINE_POSITION_NOWRAP] = True
obj[c4d.PARTICLES_EMITTER_SHAPE_OBJECT_EDGES_SPLINE_SEGMENT_MODE] = c4d.EDGES_SPLINE_SEGMENT_MODE_ALL
obj[c4d.PARTICLES_EMITTER_SHAPE_OBJECT_EDGES_SPLINE_SEGMENT_NUM] = 1
obj[c4d.PARTICLES_EMITTER_SHAPE_OBJECT_EDGES_EVEN] = True
obj[c4d.PARTICLES_EMITTER_SHAPE_OBJECT_EDGES_DISTRIB] = 0.1
obj[c4d.PARTICLES_EMITTER_SOURCE_DIR] = c4d.SOURCE_DIR_PHONG_NORMAL
obj[c4d.PARTICLES_EMITTER_SOURCE_DIR_INVERT] = True
obj[c4d.PARTICLES_EMITTER_SHAPE_OBJECT_STICK] = True
obj[c4d.PARTICLES_EMITTER_SHAPE_OBJECT_PERPOINT] = True
obj[c4d.PARTICLES_EMITTER_SHAPE_OBJECT_INPUTGEN] = c4d.OBJECT_INPUTGEN_FIRST
obj[c4d.PARTICLES_EMITTER_SHAPE_OBJECT_SPECIFIC] = 1
obj[c4d.PARTICLES_EMITTER_SOURCE_TEXTURE_CHANNEL_EMIT] = c4d.SOURCE_CHANNEL_NONE
obj[c4d.PARTICLES_EMITTER_SOURCE_TEXTURE_CHANNEL_COLOR] = c4d.SOURCE_CHANNEL_NONE
obj[c4d.PARTICLES_EMITTER_SOURCE_TEXTURE_CHANNEL_SPEED] = c4d.SOURCE_CHANNEL_NONE
obj[c4d.PARTICLES_EMITTER_SOURCE_TEXTURE_CHANNEL_SCALE] = c4d.SOURCE_CHANNEL_NONE
obj[c4d.PARTICLES_EMITTER_SOURCE_TEXTURE_CHANNEL_SCALE_MULTI] = c4d.Vector(1.0,1.0,1.0)
obj[c4d.PARTICLES_EMITTER_SOURCE_TEXTURE_CHANNEL_SCALE_MASK] = c4d.SCALE_MASK_XYZ
obj[c4d.PARTICLES_EMITTER_SOURCE_TEXTURE_SCALE_ZOFFSET] = True
obj[c4d.PARTICLES_EMITTER_SOURCE_TEXTURE_SHADERMODE] = c4d.TEXTURE_SHADERMODE_COLOR
obj[c4d.PARTICLES_EMITTER_SOURCE_TEXTURE_TEST] = c4d.TEXTURE_TEST_BRIGHT
obj[c4d.PARTICLES_EMITTER_SOURCE_TEXTURE_CONTRAST] = 0.1
obj[c4d.PARTICLES_EMITTER_SOURCE_TEXTURE_INVERT] = True
obj[c4d.PARTICLES_EMITTER_SOURCE_TEXTURE_SAMPLES] = 1
obj[c4d.PARTICLES_EMITTER_SOURCE_TEXTURE_CENTREONLY] = True
obj[c4d.PARTICLES_EMITTER_SOURCE_LIGHTS_SAMPLES] = 1
obj[c4d.PARTICLES_EMITTER_SOURCE_LIGHTS_COLOUR] = True
obj[c4d.PARTICLES_EMITTER_DEFINED_MODE] = c4d.DEFINED_MODE_LINE
obj[c4d.PARTICLES_EMITTER_DEFINED_LINE_COUNT] = 1
obj[c4d.PARTICLES_EMITTER_DEFINED_LINE_SPACING] = c4d.Vector(1.0,1.0,1.0)
obj[c4d.PARTICLES_EMITTER_DEFINED_GRID_COUNT] = c4d.Vector(1.0,1.0,1.0)
obj[c4d.PARTICLES_EMITTER_DEFINED_GRID_SPACING] = c4d.Vector(1.0,1.0,1.0)
obj[c4d.PARTICLES_EMITTER_DEFINED_CIRCLE_RADIUS] = 0.1
obj[c4d.PARTICLES_EMITTER_DEFINED_CIRCLE_SEGMENTS] = 1
obj[c4d.PARTICLES_EMITTER_DEFINED_CIRCLE_SPACING] = 0.1
obj[c4d.PARTICLES_EMITTER_DEFINED_CIRCLE_SLICE_START] = 0.1
obj[c4d.PARTICLES_EMITTER_DEFINED_CIRCLE_SLICE_END] = 0.1
obj[c4d.PARTICLES_EMITTER_DEFINED_DIR] = c4d.SOURCE_DIR_SPHERICAL
obj[c4d.PARTICLES_EMITTER_DEFINED_DIR_TANGENT] = True
obj[c4d.PARTICLES_EMITTER_DEFINED_BOXSIZE] = 0.1
obj[c4d.PARTICLES_EMITTER_DEFINED_STATIC_ON] = True
obj[c4d.PARTICLES_EMITTER_DEFINED_STATIC_FRAME] = 1
obj[c4d.PARTICLES_USE_INITIAL_STATE] = True
obj[c4d.PARTICLES_USE_INITIAL_STATE_COMPRESSED] = True
obj[c4d.PARTICLES_USE_INITIAL_STATE_SCALE] = 0.1
obj[c4d.PARTICLES_CACHEINFO_CACHEDELEMENTS] = 1
obj[c4d.PARTICLES_EMITTER_SOURCE_SUBSAMP] = True
obj[c4d.PARTICLES_EMITTER_NOCONTROL] = True
obj[c4d.PARTICLES_EMITTER_MAXCOUNT] = 1
obj[c4d.PARTICLES_EMITTER_OBJCOUNT_MODE] = c4d.EMITTER_OBJCOUNT_MODE_POINTS
obj[c4d.PARTICLES_EMITTER_EMITTYPE] = c4d.EMITTYPE_RATE
obj[c4d.PARTICLES_EMITTER_TRIGNUMTYPE] = c4d.TRIGNUMTYPE_BIRTHRATE
obj[c4d.PARTICLES_EMITTER_TRIGNUM] = 1
obj[c4d.PARTICLES_EMITTER_PULLTRIGGER] = True
obj[c4d.PARTICLES_EMITTER_PULSE_EXACT] = True
obj[c4d.PARTICLES_EMITTER_SHOT_COUNT] = 1
obj[c4d.PARTICLES_EMITTER_SHOT_SPACE] = True
obj[c4d.PARTICLES_EMITTER_CONSTANT] = True
obj[c4d.PARTICLES_EMITTER_LIFESPAN_DOCUMENT] = True
obj[c4d.PARTICLES_EMITTER_BIRTHRATE] = 1
obj[c4d.PARTICLES_EMITTER_BIRTHRATE_VAR] = 1
obj[c4d.PARTICLES_EMITTER_RATETIME] = c4d.PARTICLES_RATETIME_SECOND
obj[c4d.PARTICLES_EMITTER_SOURCE_OVERLAP] = True
obj[c4d.PARTICLES_EMITTER_SOURCE_OVERLAP_RADIUS] = 0.1
obj[c4d.PARTICLES_EMITTER_SPEED] = 0.1
obj[c4d.PARTICLES_EMITTER_SPEED_VAR] = 0.1
obj[c4d.PARTICLES_EMITTER_RADIUS] = 0.1
obj[c4d.PARTICLES_EMITTER_RADIUS_VAR] = 0.1
obj[c4d.PARTICLES_EMITTER_SCALE] = c4d.Vector(1.0,1.0,1.0)
obj[c4d.PARTICLES_EMITTER_SCALE_UNIFORM] = True
obj[c4d.PARTICLES_EMITTER_SCALE_VAR] = c4d.Vector(1.0,1.0,1.0)
obj[c4d.PARTICLES_EMITTER_SCALE_VAR_UNIFORM] = True
obj[c4d.PARTICLES_EMITTER_MINHERIT_USE] = True
obj[c4d.PARTICLES_EMITTER_MINHERIT_LINDIR] = True
obj[c4d.PARTICLES_EMITTER_MINHERIT_ROTDIR] = True
obj[c4d.PARTICLES_EMITTER_MINHERIT_SPEEDMIX] = 0.1
obj[c4d.PARTICLES_TP_GENERATE] = True
obj[c4d.PARTICLES_TP_EXACT] = True
obj[c4d.PARTICLES_TP_IGNORESPEED] = True
obj[c4d.PARTICLES_TP_DISCONNECT] = True
obj[c4d.PARTICLES_TP_SIZE] = 0.1
obj[c4d.PARTICLES_EMITTER_ROTATE_USE] = True
obj[c4d.PARTICLES_EMITTER_ROTATE_MODE] = c4d.EMITTER_ROTATE_NONE
obj[c4d.PARTICLES_EMITTER_ROTATE_INVERT] = True
obj[c4d.PARTICLES_EMITTER_ROTATE_PERSIST] = True
obj[c4d.PARTICLES_EMITTER_ROTATE_SETROT] = c4d.Vector(1.0,1.0,1.0)
obj[c4d.PARTICLES_EMITTER_ROTATE_RANDOM] = c4d.EMITTER_ROTATE_RANDOM_HPB
obj[c4d.PARTICLES_EMITTER_ROTATE_SIMPLESPIN] = True
obj[c4d.PARTICLES_EMITTER_ROTATE_SPIN] = c4d.Vector(1.0,1.0,1.0)
obj[c4d.PARTICLES_EMITTER_ROTATE_SPIN_VAR] = c4d.Vector(1.0,1.0,1.0)
obj[c4d.PARTICLES_EMITTER_MASS] = 0.1
obj[c4d.PARTICLES_EMITTER_MASS_VAR] = 0.1
obj[c4d.PARTICLES_EMITTER_TEMP] = 0.1
obj[c4d.PARTICLES_EMITTER_TEMP_VAR] = 0.1
obj[c4d.PARTICLES_EMITTER_DENSITY] = 0.1
obj[c4d.PARTICLES_EMITTER_DENSITY_VAR] = 0.1
obj[c4d.PARTICLES_EMITTER_FUEL] = 0.1
obj[c4d.PARTICLES_EMITTER_FUEL_VAR] = 0.1
obj[c4d.PARTICLES_EMITTER_BURN] = 0.1
obj[c4d.PARTICLES_EMITTER_BURN_VAR] = 0.1
obj[c4d.ID_XPART_XDATA_REWIND] = True
obj[c4d.PARTICLES_EDITOR_GROUPS_MODE] = 1
obj[c4d.PARTICLES_EDITOR_GROUPS_USEDISPLAY] = True
obj[c4d.PARTICLES_EMITTER_ICON] = c4d.EMITTER_ICON_GREEN
obj[c4d.PARTICLES_EMITTER_ONOFF] = True
obj[c4d.ID_XPART_CONSTRAINTS_SHOW] = True
obj[c4d.PARTICLES_EDITOR_FASTMODE] = True
obj[c4d.PARTICLES_EDITOR_FORCE] = True
obj[c4d.PARTICLES_EMITTER_SHAPE_DRAW] = True
obj[c4d.PARTICLES_EMITTER_SHAPE_DRAW_ORIGIN] = True
obj[c4d.PARTICLES_EDITOR_LOD] = 0.1
obj[c4d.PARTICLES_EDITOR_MULTI] = 0.1
obj[c4d.PARTICLES_EDITOR_FILLCIRC_SEGMENTS] = 1
obj[c4d.PARTICLES_EDITOR_FILLCIRC_OUTLINE] = True
obj[c4d.PARTICLES_SPHERE_TRANSP] = 0.1
obj[c4d.PARTICLES_EDITOR_AXISCOLORS] = True
obj[c4d.PARTICLES_EDITOR] = c4d.PARTICLES_EDITOR_DOT
obj[c4d.PARTICLES_COLOR_MODE] = c4d.PARTICLES_COLOR_MODE_SINGLE
obj[c4d.PARTICLES_GRADIENT_MODE] = c4d.PARTICLES_GRADIENT_MODE_AGE
obj[c4d.PARTICLES_GRADIENT_AUTO] = True
obj[c4d.PARTICLES_GRADIENT_MIN] = 0.1
obj[c4d.PARTICLES_GRADIENT_MAX] = 0.1
obj[c4d.PARTICLES_EMITTER_HUD_SHOW] = True
obj[c4d.PARTICLES_EMITTER_HUD_IFSELECTED] = True
obj[c4d.PARTICLES_EMITTER_HUD_SHOWINDICES] = True
obj[c4d.PARTICLES_EMITTER_HUD_PARAM] = c4d.HUD_PARAM_NONE
obj[c4d.PARTICLES_EMITTER_HUD_OPACITY] = 0.1
obj[c4d.PARTICLES_EMITTER_HUD_XPOS] = 0.1
obj[c4d.PARTICLES_EMITTER_HUD_YPOS] = 0.1
obj[c4d.PARTICLES_COLLIDER_ENABLE] = True
obj[c4d.PARTICLES_COLLIDER_TYPE] = c4d.COLLIDE_TYPE_PARTICLES_SPHERE
obj[c4d.PARTICLES_COLLIDER_NOSPAWN] = True
obj[c4d.PARTICLES_COLLIDER_MAX_ITER] = 1
obj[c4d.PARTICLES_COLLIDER_KILL_LEAKS] = True
obj[c4d.PARTICLES_COLLIDER_SELF_ENABLE] = True
obj[c4d.PARTICLES_COLLIDER_SELF] = True
obj[c4d.PARTICLES_COLLIDER_ELASTICITY] = 0.1
obj[c4d.PARTICLES_COLLIDER_ELASTICITY_VAR] = 0.1
obj[c4d.PARTICLES_COLLIDER_FRICTION] = 0.1
obj[c4d.PARTICLES_COLLIDER_FRICTION_VAR] = 0.1
obj[c4d.PARTICLES_COLLIDER_SCATTER] = 0.1
obj[c4d.PARTICLES_COLLIDER_SELF_RADIUS] = 0.1
obj[c4d.PARTICLES_COLLIDER_SELF_SPAWN] = True
obj[c4d.PARTICLES_COLLIDER_SELF_SPAWNCOUNT] = 1
obj[c4d.PARTICLES_COLLIDER_SELF_SPAWNONCEONLY] = True
obj[c4d.PARTICLES_COLLIDER_SELF_KILL] = True
obj[c4d.PARTICLES_PP_STIFFNESS] = 0.1
obj[c4d.PARTICLES_PP_ITER] = 1
obj[c4d.PARTICLES_FLUID] = True
obj[c4d.PARTICLES_FLUID_COLLIDERS] = True
obj[c4d.PARTICLES_FLUID_DENSITY_TYPE] = c4d.PARTICLES_FLUID_DENSITY_TYPE_CUSTOM
obj[c4d.PARTICLES_FLUID_DENSITY] = 0.1
obj[c4d.PARTICLES_FLUID_VISCOSITY] = 0.1
obj[c4d.PARTICLES_FLUID_VORTICITY] = 0.1
obj[c4d.PARTICLES_FLUID_TENSION] = 0.1
obj[c4d.PARTICLES_FLUID_REPULSION] = 0.1
obj[c4d.PARTICLES_FLUID_DIFFUSE] = True
obj[c4d.PARTICLES_FLUID_DIFFUSE_CREST_RATE] = 0.1
obj[c4d.PARTICLES_FLUID_DIFFUSE_AIR_RATE] = 0.1
obj[c4d.PARTICLES_FLUID_DIFFUSE_BUOYANCY] = 0.1
obj[c4d.PARTICLES_FLUID_DIFFUSE_DRAG] = 0.1
obj[c4d.PARTICLES_FLUID_DIFFUSE_SPRAY] = 0.1
obj[c4d.PARTICLES_FLUID_DIFFUSE_ROT] = 0.1
obj[c4d.PARTICLES_FLUID_DIFFUSE_FOAM_DENSITY] = 0.1
obj[c4d.PARTICLES_FLUID_DIFFUSE_SPRAY_DENSITY] = 0.1
obj[c4d.PARTICLES_FLUID_DIFFUSE_KE_MIN] = 0.1
obj[c4d.PARTICLES_FLUID_DIFFUSE_KE_MAX] = 0.1
obj[c4d.PARTICLES_FLUID_DIFFUSE_WC_MIN] = 0.1
obj[c4d.PARTICLES_FLUID_DIFFUSE_WC_MAX] = 0.1
obj[c4d.PARTICLES_FLUID_DIFFUSE_TA_MIN] = 0.1
obj[c4d.PARTICLES_FLUID_DIFFUSE_TA_MAX] = 0.1
obj[c4d.PARTICLES_FLUID_RADIUS] = 0.1
obj[c4d.PARTICLES_FLUID_STIFFNESS] = 0.1
obj[c4d.PARTICLES_FLUID_ITER] = 1
obj[c4d.PARTICLES_FLUID_DAMPING] = 0.1
obj[c4d.PARTICLES_FLUID_SCALE] = 0.1
obj[c4d.PARTICLES_FLUID_STEPS_MODE] = c4d.PARTICLES_FLUID_STEPS_MODE_1
obj[c4d.ID_XPART_COLLIDER_CONSTRAINTS] = True
obj[c4d.ID_XPART_COLLIDER_CONSTRAINT_POLY_FORCES] = True
obj[c4d.ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_BIRTH] = True
obj[c4d.ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_BIRTH_ONLY] = True
obj[c4d.ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_GROUP_ONLY] = True
obj[c4d.ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_BIRTH_LIMIT] = 1
obj[c4d.ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_BIRTH_RADIUS] = 0.1
obj[c4d.ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_BIRTH_STIFFNESS] = 0.1
obj[c4d.ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_BIRTH_BREAK] = 0.1
obj[c4d.ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_PP_COLLISION] = True
obj[c4d.ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_PP_GROUP_ONLY] = True
obj[c4d.ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_PP_COLLISION_LIMIT] = 1
obj[c4d.ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_PP_COLLISION_STIFFNESS] = 0.1
obj[c4d.ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_PP_COLLISION_BREAK] = 0.1
obj[c4d.ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_PP_DIST] = True
obj[c4d.ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_PP_DIST_GROUP_ONLY] = True
obj[c4d.ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_PP_DIST_LIMIT] = 1
obj[c4d.ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_PP_DIST_RADIUS] = 0.1
obj[c4d.ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_PP_DIST_STIFFNESS] = 0.1
obj[c4d.ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_PP_DIST_BREAK] = 0.1
obj[c4d.ID_XPART_COLLIDER_CONSTRAINT_PP_FORCES] = True
obj[c4d.ID_XPART_COLLIDER_CONSTRAINTS_FORCES_GROUP_ONLY] = True
obj[c4d.ID_XPART_COLLIDER_CONSTRAINTS_PP_ATTRACTION] = 0.1
obj[c4d.ID_XPART_COLLIDER_CONSTRAINTS_PP_ATTRACTION_RADIUS] = 0.1
obj[c4d.ID_XPART_COLLIDER_CONSTRAINTS_PP_REPULSION] = 0.1
obj[c4d.ID_XPART_COLLIDER_CONSTRAINTS_PP_REPULSION_RADIUS] = 0.1
obj[c4d.ID_XPART_COLLIDER_CONSTRAINTS_ITER] = 1
obj[c4d.PARTICLES_QUESTIONS_MODE] = c4d.PARTICLES_QUESTIONS_MODE_BYPASS
obj[c4d.PARTICLES_MODIFIERS_SAMESYSTEM] = True
obj[c4d.PARTICLES_MODIFIERS_INEX] = c4d.MODIFIERS_INEX_INCLUDE
obj[c4d.PARTICLES_DEFORMERS_SAMESYSTEM] = True
obj[c4d.PARTICLES_DEFORMERS_INEX] = c4d.MODIFIERS_INEX_INCLUDE
obj[c4d.PARTICLES_EDIT_EDITABLE] = True
obj[c4d.PARTICLES_EDIT_MODE] = c4d.PARTICLES_EDIT_MODE_POINTS
obj[c4d.PARTICLES_EDIT_BLEND_MODE] = c4d.PARTICLES_EDIT_BLEND_MODE_CLIPPED
obj[c4d.PARTICLES_EDIT_TRACKDATA] = 0.1
obj[c4d.PARTICLES_EDIT_SHOW_DELETED] = True
obj[c4d.ID_XPARTICLES_DEBUG_THREADING] = True
obj[c4d.PARTICLES_EMITTER_RANDOMSEED] = 1
#Second way, using the base container.
bc = obj.GetDataInstance()
bc.SetInt32(c4d.PARTICLES_EMITTER_SHAPE,c4d.PARTICLES_EMITTER_SHAPE_RECT)
bc.SetInt32(c4d.PARTICLES_EMITTER_SHAPE_ROTATION,c4d.EMORIENT_XPOS)
bc.SetFloat(c4d.PARTICLES_EMITTER_SHAPE_RECT_W,0.1)
bc.SetFloat(c4d.PARTICLES_EMITTER_SHAPE_RECT_H,0.1)
bc.SetFloat(c4d.PARTICLES_EMITTER_SHAPE_RECT_ANGLEH,0.1)
bc.SetFloat(c4d.PARTICLES_EMITTER_SHAPE_RECT_ANGLEV,0.1)
bc.SetFloat(c4d.PARTICLES_EMITTER_SHAPE_DISC_RAD,0.1)
bc.SetFloat(c4d.PARTICLES_EMITTER_SHAPE_DISC_ANGLE,0.1)
bc.SetFloat(c4d.PARTICLES_EMITTER_SHAPE_ELLIPSE_RAD_H,0.1)
bc.SetFloat(c4d.PARTICLES_EMITTER_SHAPE_ELLIPSE_RAD_V,0.1)
bc.SetFloat(c4d.PARTICLES_EMITTER_SHAPE_ELLIPSE_ANGLE,0.1)
bc.SetBool(c4d.PARTICLES_EMITTER_SHAPE_DISC_RINGONLY,True)
bc.SetFloat(c4d.PARTICLES_EMITTER_SHAPE_DISC_ANGLEVAR,0.1)
bc.SetBool(c4d.PARTICLES_EMITTER_SHAPE_3D,True)
bc.SetFloat(c4d.PARTICLES_EMITTER_SHAPE_LENGTH,0.1)
bc.SetBool(c4d.PARTICLES_EMITTER_SHAPE_OFFSET_RANDOM,True)
bc.SetFloat(c4d.PARTICLES_EMITTER_SOURCE_OFFSET,0.1)
bc.SetFloat(c4d.PARTICLES_EMITTER_SHAPE_SPHERE_RAD,0.1)
bc.SetBool(c4d.PARTICLES_EMITTER_SHAPE_SPHERE_SURFACEONLY,True)
bc.SetVector(c4d.PARTICLES_EMITTER_SHAPE_BOX_SIZE, c4d.Vector(1.0,1.0,1.0)
bc.SetBool(c4d.PARTICLES_EMITTER_SHAPE_BOX_SURFACEONLY,True)
bc.SetInt32(c4d.PARTICLES_EMITTER_SHAPE_BOX_EMITMODE,c4d.BSOURCE_EMITMODE_RANDOM)
bc.SetFloat(c4d.PARTICLES_EMITTER_SHAPE_BOX_GRIDSIZE,0.1)
bc.SetInt32(c4d.PARTICLES_EMITTER_BOX_DIR,c4d.BSOURCE_DIR_FACES)
bc.SetFloat(c4d.PARTICLES_EMITTER_SHAPE_CYLINDER_RADIUS,0.1)
bc.SetFloat(c4d.PARTICLES_EMITTER_SHAPE_CYLINDER_HEIGHT,0.1)
bc.SetInt32(c4d.PARTICLES_EMITTER_CYLINDER_DIR,c4d.CSOURCE_DIR_RADIAL)
bc.SetBool(c4d.PARTICLES_EMITTER_SHAPE_CYLINDER_SURFACEONLY,True)
bc.SetInt32(c4d.PARTICLES_EMITTER_SPHERE_DIR,c4d.SOURCE_DIR_NORMAL)
bc.SetFloat(c4d.PARTICLES_EMITTER_TIMESCALE,0.1)
bc.SetInt32(c4d.PARTICLES_EMITTER_SHAPE_OBJECT_NURBS,c4d.OBJECT_NURBS_BOTH)
bc.SetBool(c4d.PARTICLES_EMITTER_SHAPE_OBJECT_NURBS_C1,True)
bc.SetBool(c4d.PARTICLES_EMITTER_SHAPE_OBJECT_NURBS_R1,True)
bc.SetBool(c4d.PARTICLES_EMITTER_SHAPE_OBJECT_NURBS_C2,True)
bc.SetBool(c4d.PARTICLES_EMITTER_SHAPE_OBJECT_NURBS_R2,True)
bc.SetInt32(c4d.PARTICLES_EMITTER_SHAPE_OBJECT_EMISSION,c4d.PARTICLES_EMITTER_SHAPE_OBJECT_EMISSION_POLYCENTRE)
bc.SetInt32(c4d.PARTICLES_EMITTER_SHAPE_OBJECT_RETRIES,1)
bc.SetFloat(c4d.PARTICLES_EMITTER_SHAPE_OBJECT_GRIDSIZE,0.1)
bc.SetInt32(c4d.PARTICLES_EMITTER_SHAPE_OBJECT_GRIDMODE,c4d.EMITTER_GRIDMODE_RANDOM)
bc.SetInt32(c4d.PARTICLES_EMITTER_SHAPE_OBJECT_GRIDAXIS,c4d.EMITTER_GRIDAXIS_X)
bc.SetBool(c4d.PARTICLES_EMITTER_SHAPE_OBJECT_GRIDFULLSTOP,True)
bc.SetInt32(c4d.PARTICLES_EMITTER_SHAPE_OBJECT_EDGES_SPLINE_POSITION_MODE,c4d.EDGES_SPLINE_POSITION_MODE_RANDOM)
bc.SetFloat(c4d.PARTICLES_EMITTER_SHAPE_OBJECT_EDGES_SPLINE_POSITION,0.1)
bc.SetFloat(c4d.PARTICLES_EMITTER_SHAPE_OBJECT_EDGES_SPLINE_POSITION_SPREAD,0.1)
bc.SetBool(c4d.PARTICLES_EMITTER_SHAPE_OBJECT_EDGES_SPLINE_POSITION_POSSPREAD,True)
bc.SetBool(c4d.PARTICLES_EMITTER_SHAPE_OBJECT_EDGES_SPLINE_POSITION_NOWRAP,True)
bc.SetInt32(c4d.PARTICLES_EMITTER_SHAPE_OBJECT_EDGES_SPLINE_SEGMENT_MODE,c4d.EDGES_SPLINE_SEGMENT_MODE_ALL)
bc.SetInt32(c4d.PARTICLES_EMITTER_SHAPE_OBJECT_EDGES_SPLINE_SEGMENT_NUM,1)
bc.SetBool(c4d.PARTICLES_EMITTER_SHAPE_OBJECT_EDGES_EVEN,True)
bc.SetFloat(c4d.PARTICLES_EMITTER_SHAPE_OBJECT_EDGES_DISTRIB,0.1)
bc.SetInt32(c4d.PARTICLES_EMITTER_SOURCE_DIR,c4d.SOURCE_DIR_PHONG_NORMAL)
bc.SetBool(c4d.PARTICLES_EMITTER_SOURCE_DIR_INVERT,True)
bc.SetBool(c4d.PARTICLES_EMITTER_SHAPE_OBJECT_STICK,True)
bc.SetBool(c4d.PARTICLES_EMITTER_SHAPE_OBJECT_PERPOINT,True)
bc.SetInt32(c4d.PARTICLES_EMITTER_SHAPE_OBJECT_INPUTGEN,c4d.OBJECT_INPUTGEN_FIRST)
bc.SetInt32(c4d.PARTICLES_EMITTER_SHAPE_OBJECT_SPECIFIC,1)
bc.SetInt32(c4d.PARTICLES_EMITTER_SOURCE_TEXTURE_CHANNEL_EMIT,c4d.SOURCE_CHANNEL_NONE)
bc.SetInt32(c4d.PARTICLES_EMITTER_SOURCE_TEXTURE_CHANNEL_COLOR,c4d.SOURCE_CHANNEL_NONE)
bc.SetInt32(c4d.PARTICLES_EMITTER_SOURCE_TEXTURE_CHANNEL_SPEED,c4d.SOURCE_CHANNEL_NONE)
bc.SetInt32(c4d.PARTICLES_EMITTER_SOURCE_TEXTURE_CHANNEL_SCALE,c4d.SOURCE_CHANNEL_NONE)
bc.SetVector(c4d.PARTICLES_EMITTER_SOURCE_TEXTURE_CHANNEL_SCALE_MULTI, c4d.Vector(1.0,1.0,1.0)
bc.SetInt32(c4d.PARTICLES_EMITTER_SOURCE_TEXTURE_CHANNEL_SCALE_MASK,c4d.SCALE_MASK_XYZ)
bc.SetBool(c4d.PARTICLES_EMITTER_SOURCE_TEXTURE_SCALE_ZOFFSET,True)
bc.SetInt32(c4d.PARTICLES_EMITTER_SOURCE_TEXTURE_SHADERMODE,c4d.TEXTURE_SHADERMODE_COLOR)
bc.SetInt32(c4d.PARTICLES_EMITTER_SOURCE_TEXTURE_TEST,c4d.TEXTURE_TEST_BRIGHT)
bc.SetFloat(c4d.PARTICLES_EMITTER_SOURCE_TEXTURE_CONTRAST,0.1)
bc.SetBool(c4d.PARTICLES_EMITTER_SOURCE_TEXTURE_INVERT,True)
bc.SetInt32(c4d.PARTICLES_EMITTER_SOURCE_TEXTURE_SAMPLES,1)
bc.SetBool(c4d.PARTICLES_EMITTER_SOURCE_TEXTURE_CENTREONLY,True)
bc.SetInt32(c4d.PARTICLES_EMITTER_SOURCE_LIGHTS_SAMPLES,1)
bc.SetBool(c4d.PARTICLES_EMITTER_SOURCE_LIGHTS_COLOUR,True)
bc.SetInt32(c4d.PARTICLES_EMITTER_DEFINED_MODE,c4d.DEFINED_MODE_LINE)
bc.SetInt32(c4d.PARTICLES_EMITTER_DEFINED_LINE_COUNT,1)
bc.SetVector(c4d.PARTICLES_EMITTER_DEFINED_LINE_SPACING, c4d.Vector(1.0,1.0,1.0)
bc.SetVector(c4d.PARTICLES_EMITTER_DEFINED_GRID_COUNT, c4d.Vector(1.0,1.0,1.0)
bc.SetVector(c4d.PARTICLES_EMITTER_DEFINED_GRID_SPACING, c4d.Vector(1.0,1.0,1.0)
bc.SetFloat(c4d.PARTICLES_EMITTER_DEFINED_CIRCLE_RADIUS,0.1)
bc.SetInt32(c4d.PARTICLES_EMITTER_DEFINED_CIRCLE_SEGMENTS,1)
bc.SetFloat(c4d.PARTICLES_EMITTER_DEFINED_CIRCLE_SPACING,0.1)
bc.SetFloat(c4d.PARTICLES_EMITTER_DEFINED_CIRCLE_SLICE_START,0.1)
bc.SetFloat(c4d.PARTICLES_EMITTER_DEFINED_CIRCLE_SLICE_END,0.1)
bc.SetInt32(c4d.PARTICLES_EMITTER_DEFINED_DIR,c4d.SOURCE_DIR_SPHERICAL)
bc.SetBool(c4d.PARTICLES_EMITTER_DEFINED_DIR_TANGENT,True)
bc.SetFloat(c4d.PARTICLES_EMITTER_DEFINED_BOXSIZE,0.1)
bc.SetBool(c4d.PARTICLES_EMITTER_DEFINED_STATIC_ON,True)
bc.SetInt32(c4d.PARTICLES_EMITTER_DEFINED_STATIC_FRAME,1)
bc.SetBool(c4d.PARTICLES_USE_INITIAL_STATE,True)
bc.SetBool(c4d.PARTICLES_USE_INITIAL_STATE_COMPRESSED,True)
bc.SetFloat(c4d.PARTICLES_USE_INITIAL_STATE_SCALE,0.1)
bc.SetInt32(c4d.PARTICLES_CACHEINFO_CACHEDELEMENTS,1)
bc.SetBool(c4d.PARTICLES_EMITTER_SOURCE_SUBSAMP,True)
bc.SetBool(c4d.PARTICLES_EMITTER_NOCONTROL,True)
bc.SetInt32(c4d.PARTICLES_EMITTER_MAXCOUNT,1)
bc.SetInt32(c4d.PARTICLES_EMITTER_OBJCOUNT_MODE,c4d.EMITTER_OBJCOUNT_MODE_POINTS)
bc.SetInt32(c4d.PARTICLES_EMITTER_EMITTYPE,c4d.EMITTYPE_RATE)
bc.SetInt32(c4d.PARTICLES_EMITTER_TRIGNUMTYPE,c4d.TRIGNUMTYPE_BIRTHRATE)
bc.SetInt32(c4d.PARTICLES_EMITTER_TRIGNUM,1)
bc.SetBool(c4d.PARTICLES_EMITTER_PULLTRIGGER,True)
bc.SetBool(c4d.PARTICLES_EMITTER_PULSE_EXACT,True)
bc.SetInt32(c4d.PARTICLES_EMITTER_SHOT_COUNT,1)
bc.SetBool(c4d.PARTICLES_EMITTER_SHOT_SPACE,True)
bc.SetBool(c4d.PARTICLES_EMITTER_CONSTANT,True)
bc.SetBool(c4d.PARTICLES_EMITTER_LIFESPAN_DOCUMENT,True)
bc.SetInt32(c4d.PARTICLES_EMITTER_BIRTHRATE,1)
bc.SetInt32(c4d.PARTICLES_EMITTER_BIRTHRATE_VAR,1)
bc.SetInt32(c4d.PARTICLES_EMITTER_RATETIME,c4d.PARTICLES_RATETIME_SECOND)
bc.SetBool(c4d.PARTICLES_EMITTER_SOURCE_OVERLAP,True)
bc.SetFloat(c4d.PARTICLES_EMITTER_SOURCE_OVERLAP_RADIUS,0.1)
bc.SetFloat(c4d.PARTICLES_EMITTER_SPEED,0.1)
bc.SetFloat(c4d.PARTICLES_EMITTER_SPEED_VAR,0.1)
bc.SetFloat(c4d.PARTICLES_EMITTER_RADIUS,0.1)
bc.SetFloat(c4d.PARTICLES_EMITTER_RADIUS_VAR,0.1)
bc.SetVector(c4d.PARTICLES_EMITTER_SCALE, c4d.Vector(1.0,1.0,1.0)
bc.SetBool(c4d.PARTICLES_EMITTER_SCALE_UNIFORM,True)
bc.SetVector(c4d.PARTICLES_EMITTER_SCALE_VAR, c4d.Vector(1.0,1.0,1.0)
bc.SetBool(c4d.PARTICLES_EMITTER_SCALE_VAR_UNIFORM,True)
bc.SetBool(c4d.PARTICLES_EMITTER_MINHERIT_USE,True)
bc.SetBool(c4d.PARTICLES_EMITTER_MINHERIT_LINDIR,True)
bc.SetBool(c4d.PARTICLES_EMITTER_MINHERIT_ROTDIR,True)
bc.SetFloat(c4d.PARTICLES_EMITTER_MINHERIT_SPEEDMIX,0.1)
bc.SetBool(c4d.PARTICLES_TP_GENERATE,True)
bc.SetBool(c4d.PARTICLES_TP_EXACT,True)
bc.SetBool(c4d.PARTICLES_TP_IGNORESPEED,True)
bc.SetBool(c4d.PARTICLES_TP_DISCONNECT,True)
bc.SetFloat(c4d.PARTICLES_TP_SIZE,0.1)
bc.SetBool(c4d.PARTICLES_EMITTER_ROTATE_USE,True)
bc.SetInt32(c4d.PARTICLES_EMITTER_ROTATE_MODE,c4d.EMITTER_ROTATE_NONE)
bc.SetBool(c4d.PARTICLES_EMITTER_ROTATE_INVERT,True)
bc.SetBool(c4d.PARTICLES_EMITTER_ROTATE_PERSIST,True)
bc.SetVector(c4d.PARTICLES_EMITTER_ROTATE_SETROT, c4d.Vector(1.0,1.0,1.0)
bc.SetInt32(c4d.PARTICLES_EMITTER_ROTATE_RANDOM,c4d.EMITTER_ROTATE_RANDOM_HPB)
bc.SetBool(c4d.PARTICLES_EMITTER_ROTATE_SIMPLESPIN,True)
bc.SetVector(c4d.PARTICLES_EMITTER_ROTATE_SPIN, c4d.Vector(1.0,1.0,1.0)
bc.SetVector(c4d.PARTICLES_EMITTER_ROTATE_SPIN_VAR, c4d.Vector(1.0,1.0,1.0)
bc.SetFloat(c4d.PARTICLES_EMITTER_MASS,0.1)
bc.SetFloat(c4d.PARTICLES_EMITTER_MASS_VAR,0.1)
bc.SetFloat(c4d.PARTICLES_EMITTER_TEMP,0.1)
bc.SetFloat(c4d.PARTICLES_EMITTER_TEMP_VAR,0.1)
bc.SetFloat(c4d.PARTICLES_EMITTER_DENSITY,0.1)
bc.SetFloat(c4d.PARTICLES_EMITTER_DENSITY_VAR,0.1)
bc.SetFloat(c4d.PARTICLES_EMITTER_FUEL,0.1)
bc.SetFloat(c4d.PARTICLES_EMITTER_FUEL_VAR,0.1)
bc.SetFloat(c4d.PARTICLES_EMITTER_BURN,0.1)
bc.SetFloat(c4d.PARTICLES_EMITTER_BURN_VAR,0.1)
bc.SetBool(c4d.ID_XPART_XDATA_REWIND,True)
bc.SetInt32(c4d.PARTICLES_EDITOR_GROUPS_MODE,1)
bc.SetBool(c4d.PARTICLES_EDITOR_GROUPS_USEDISPLAY,True)
bc.SetInt32(c4d.PARTICLES_EMITTER_ICON,c4d.EMITTER_ICON_GREEN)
bc.SetBool(c4d.PARTICLES_EMITTER_ONOFF,True)
bc.SetBool(c4d.ID_XPART_CONSTRAINTS_SHOW,True)
bc.SetBool(c4d.PARTICLES_EDITOR_FASTMODE,True)
bc.SetBool(c4d.PARTICLES_EDITOR_FORCE,True)
bc.SetBool(c4d.PARTICLES_EMITTER_SHAPE_DRAW,True)
bc.SetBool(c4d.PARTICLES_EMITTER_SHAPE_DRAW_ORIGIN,True)
bc.SetFloat(c4d.PARTICLES_EDITOR_LOD,0.1)
bc.SetFloat(c4d.PARTICLES_EDITOR_MULTI,0.1)
bc.SetInt32(c4d.PARTICLES_EDITOR_FILLCIRC_SEGMENTS,1)
bc.SetBool(c4d.PARTICLES_EDITOR_FILLCIRC_OUTLINE,True)
bc.SetFloat(c4d.PARTICLES_SPHERE_TRANSP,0.1)
bc.SetBool(c4d.PARTICLES_EDITOR_AXISCOLORS,True)
bc.SetInt32(c4d.PARTICLES_EDITOR,c4d.PARTICLES_EDITOR_DOT)
bc.SetInt32(c4d.PARTICLES_COLOR_MODE,c4d.PARTICLES_COLOR_MODE_SINGLE)
bc.SetInt32(c4d.PARTICLES_GRADIENT_MODE,c4d.PARTICLES_GRADIENT_MODE_AGE)
bc.SetBool(c4d.PARTICLES_GRADIENT_AUTO,True)
bc.SetFloat(c4d.PARTICLES_GRADIENT_MIN,0.1)
bc.SetFloat(c4d.PARTICLES_GRADIENT_MAX,0.1)
bc.SetBool(c4d.PARTICLES_EMITTER_HUD_SHOW,True)
bc.SetBool(c4d.PARTICLES_EMITTER_HUD_IFSELECTED,True)
bc.SetBool(c4d.PARTICLES_EMITTER_HUD_SHOWINDICES,True)
bc.SetInt32(c4d.PARTICLES_EMITTER_HUD_PARAM,c4d.HUD_PARAM_NONE)
bc.SetFloat(c4d.PARTICLES_EMITTER_HUD_OPACITY,0.1)
bc.SetFloat(c4d.PARTICLES_EMITTER_HUD_XPOS,0.1)
bc.SetFloat(c4d.PARTICLES_EMITTER_HUD_YPOS,0.1)
bc.SetBool(c4d.PARTICLES_COLLIDER_ENABLE,True)
bc.SetInt32(c4d.PARTICLES_COLLIDER_TYPE,c4d.COLLIDE_TYPE_PARTICLES_SPHERE)
bc.SetBool(c4d.PARTICLES_COLLIDER_NOSPAWN,True)
bc.SetInt32(c4d.PARTICLES_COLLIDER_MAX_ITER,1)
bc.SetBool(c4d.PARTICLES_COLLIDER_KILL_LEAKS,True)
bc.SetBool(c4d.PARTICLES_COLLIDER_SELF_ENABLE,True)
bc.SetBool(c4d.PARTICLES_COLLIDER_SELF,True)
bc.SetFloat(c4d.PARTICLES_COLLIDER_ELASTICITY,0.1)
bc.SetFloat(c4d.PARTICLES_COLLIDER_ELASTICITY_VAR,0.1)
bc.SetFloat(c4d.PARTICLES_COLLIDER_FRICTION,0.1)
bc.SetFloat(c4d.PARTICLES_COLLIDER_FRICTION_VAR,0.1)
bc.SetFloat(c4d.PARTICLES_COLLIDER_SCATTER,0.1)
bc.SetFloat(c4d.PARTICLES_COLLIDER_SELF_RADIUS,0.1)
bc.SetBool(c4d.PARTICLES_COLLIDER_SELF_SPAWN,True)
bc.SetInt32(c4d.PARTICLES_COLLIDER_SELF_SPAWNCOUNT,1)
bc.SetBool(c4d.PARTICLES_COLLIDER_SELF_SPAWNONCEONLY,True)
bc.SetBool(c4d.PARTICLES_COLLIDER_SELF_KILL,True)
bc.SetFloat(c4d.PARTICLES_PP_STIFFNESS,0.1)
bc.SetInt32(c4d.PARTICLES_PP_ITER,1)
bc.SetBool(c4d.PARTICLES_FLUID,True)
bc.SetBool(c4d.PARTICLES_FLUID_COLLIDERS,True)
bc.SetInt32(c4d.PARTICLES_FLUID_DENSITY_TYPE,c4d.PARTICLES_FLUID_DENSITY_TYPE_CUSTOM)
bc.SetFloat(c4d.PARTICLES_FLUID_DENSITY,0.1)
bc.SetFloat(c4d.PARTICLES_FLUID_VISCOSITY,0.1)
bc.SetFloat(c4d.PARTICLES_FLUID_VORTICITY,0.1)
bc.SetFloat(c4d.PARTICLES_FLUID_TENSION,0.1)
bc.SetFloat(c4d.PARTICLES_FLUID_REPULSION,0.1)
bc.SetBool(c4d.PARTICLES_FLUID_DIFFUSE,True)
bc.SetFloat(c4d.PARTICLES_FLUID_DIFFUSE_CREST_RATE,0.1)
bc.SetFloat(c4d.PARTICLES_FLUID_DIFFUSE_AIR_RATE,0.1)
bc.SetFloat(c4d.PARTICLES_FLUID_DIFFUSE_BUOYANCY,0.1)
bc.SetFloat(c4d.PARTICLES_FLUID_DIFFUSE_DRAG,0.1)
bc.SetFloat(c4d.PARTICLES_FLUID_DIFFUSE_SPRAY,0.1)
bc.SetFloat(c4d.PARTICLES_FLUID_DIFFUSE_ROT,0.1)
bc.SetFloat(c4d.PARTICLES_FLUID_DIFFUSE_FOAM_DENSITY,0.1)
bc.SetFloat(c4d.PARTICLES_FLUID_DIFFUSE_SPRAY_DENSITY,0.1)
bc.SetFloat(c4d.PARTICLES_FLUID_DIFFUSE_KE_MIN,0.1)
bc.SetFloat(c4d.PARTICLES_FLUID_DIFFUSE_KE_MAX,0.1)
bc.SetFloat(c4d.PARTICLES_FLUID_DIFFUSE_WC_MIN,0.1)
bc.SetFloat(c4d.PARTICLES_FLUID_DIFFUSE_WC_MAX,0.1)
bc.SetFloat(c4d.PARTICLES_FLUID_DIFFUSE_TA_MIN,0.1)
bc.SetFloat(c4d.PARTICLES_FLUID_DIFFUSE_TA_MAX,0.1)
bc.SetFloat(c4d.PARTICLES_FLUID_RADIUS,0.1)
bc.SetFloat(c4d.PARTICLES_FLUID_STIFFNESS,0.1)
bc.SetInt32(c4d.PARTICLES_FLUID_ITER,1)
bc.SetFloat(c4d.PARTICLES_FLUID_DAMPING,0.1)
bc.SetFloat(c4d.PARTICLES_FLUID_SCALE,0.1)
bc.SetInt32(c4d.PARTICLES_FLUID_STEPS_MODE,c4d.PARTICLES_FLUID_STEPS_MODE_1)
bc.SetBool(c4d.ID_XPART_COLLIDER_CONSTRAINTS,True)
bc.SetBool(c4d.ID_XPART_COLLIDER_CONSTRAINT_POLY_FORCES,True)
bc.SetBool(c4d.ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_BIRTH,True)
bc.SetBool(c4d.ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_BIRTH_ONLY,True)
bc.SetBool(c4d.ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_GROUP_ONLY,True)
bc.SetInt32(c4d.ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_BIRTH_LIMIT,1)
bc.SetFloat(c4d.ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_BIRTH_RADIUS,0.1)
bc.SetFloat(c4d.ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_BIRTH_STIFFNESS,0.1)
bc.SetFloat(c4d.ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_BIRTH_BREAK,0.1)
bc.SetBool(c4d.ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_PP_COLLISION,True)
bc.SetBool(c4d.ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_PP_GROUP_ONLY,True)
bc.SetInt32(c4d.ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_PP_COLLISION_LIMIT,1)
bc.SetFloat(c4d.ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_PP_COLLISION_STIFFNESS,0.1)
bc.SetFloat(c4d.ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_PP_COLLISION_BREAK,0.1)
bc.SetBool(c4d.ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_PP_DIST,True)
bc.SetBool(c4d.ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_PP_DIST_GROUP_ONLY,True)
bc.SetInt32(c4d.ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_PP_DIST_LIMIT,1)
bc.SetFloat(c4d.ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_PP_DIST_RADIUS,0.1)
bc.SetFloat(c4d.ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_PP_DIST_STIFFNESS,0.1)
bc.SetFloat(c4d.ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_PP_DIST_BREAK,0.1)
bc.SetBool(c4d.ID_XPART_COLLIDER_CONSTRAINT_PP_FORCES,True)
bc.SetBool(c4d.ID_XPART_COLLIDER_CONSTRAINTS_FORCES_GROUP_ONLY,True)
bc.SetFloat(c4d.ID_XPART_COLLIDER_CONSTRAINTS_PP_ATTRACTION,0.1)
bc.SetFloat(c4d.ID_XPART_COLLIDER_CONSTRAINTS_PP_ATTRACTION_RADIUS,0.1)
bc.SetFloat(c4d.ID_XPART_COLLIDER_CONSTRAINTS_PP_REPULSION,0.1)
bc.SetFloat(c4d.ID_XPART_COLLIDER_CONSTRAINTS_PP_REPULSION_RADIUS,0.1)
bc.SetInt32(c4d.ID_XPART_COLLIDER_CONSTRAINTS_ITER,1)
bc.SetInt32(c4d.PARTICLES_QUESTIONS_MODE,c4d.PARTICLES_QUESTIONS_MODE_BYPASS)
bc.SetBool(c4d.PARTICLES_MODIFIERS_SAMESYSTEM,True)
bc.SetInt32(c4d.PARTICLES_MODIFIERS_INEX,c4d.MODIFIERS_INEX_INCLUDE)
bc.SetBool(c4d.PARTICLES_DEFORMERS_SAMESYSTEM,True)
bc.SetInt32(c4d.PARTICLES_DEFORMERS_INEX,c4d.MODIFIERS_INEX_INCLUDE)
bc.SetBool(c4d.PARTICLES_EDIT_EDITABLE,True)
bc.SetInt32(c4d.PARTICLES_EDIT_MODE,c4d.PARTICLES_EDIT_MODE_POINTS)
bc.SetInt32(c4d.PARTICLES_EDIT_BLEND_MODE,c4d.PARTICLES_EDIT_BLEND_MODE_CLIPPED)
bc.SetFloat(c4d.PARTICLES_EDIT_TRACKDATA,0.1)
bc.SetBool(c4d.PARTICLES_EDIT_SHOW_DELETED,True)
bc.SetBool(c4d.ID_XPARTICLES_DEBUG_THREADING,True)
bc.SetInt32(c4d.PARTICLES_EMITTER_RANDOMSEED,1)
if __name__=='__main__':
main()
C++
#include "c4d.h"
#include "../res/description/oxparticle.h"
void SampleFunction()
{
BaseDocument *pDoc = GetActiveDocument();
BaseObject *pObject = BaseObject::Alloc(Oxparticle);
pDoc->InsertObject(pObject);
pDoc->StartUndo();
pDoc->AddUndo(UNDO_NEW,pObject);
pDoc->EndUndo();
EventAdd(EVENT_FORCEREDRAW);
//You can set parameters two different ways.
//First way
//Some objects do not store all their data in the container. You need to use GetParameter()/SetParameter() instead.
DESCFLAGS_SET flags = DESCFLAGS_SET_PARAM_SET;
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE),GeData(PARTICLES_EMITTER_SHAPE_RECT),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_ROTATION),GeData(EMORIENT_XPOS),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_RECT_W),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_RECT_H),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_RECT_ANGLEH),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_RECT_ANGLEV),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_DISC_RAD),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_DISC_ANGLE),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_ELLIPSE_RAD_H),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_ELLIPSE_RAD_V),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_ELLIPSE_ANGLE),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_DISC_RINGONLY),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_DISC_ANGLEVAR),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_3D),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_LENGTH),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_OFFSET_RANDOM),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SOURCE_OFFSET),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_SPHERE_RAD),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_SPHERE_SURFACEONLY),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_BOX_SIZE),GeData(Vector(1.0,1.0,1.0)),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_BOX_SURFACEONLY),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_BOX_EMITMODE),GeData(BSOURCE_EMITMODE_RANDOM),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_BOX_GRIDSIZE),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_BOX_DIR),GeData(BSOURCE_DIR_FACES),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_CYLINDER_RADIUS),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_CYLINDER_HEIGHT),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_CYLINDER_DIR),GeData(CSOURCE_DIR_RADIAL),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_CYLINDER_SURFACEONLY),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SPHERE_DIR),GeData(SOURCE_DIR_NORMAL),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_TIMESCALE),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_OBJECT_NURBS),GeData(OBJECT_NURBS_BOTH),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_OBJECT_NURBS_C1),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_OBJECT_NURBS_R1),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_OBJECT_NURBS_C2),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_OBJECT_NURBS_R2),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_OBJECT_EMISSION),GeData(PARTICLES_EMITTER_SHAPE_OBJECT_EMISSION_POLYCENTRE),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_OBJECT_RETRIES),GeData(1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_OBJECT_GRIDSIZE),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_OBJECT_GRIDMODE),GeData(EMITTER_GRIDMODE_RANDOM),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_OBJECT_GRIDAXIS),GeData(EMITTER_GRIDAXIS_X),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_OBJECT_GRIDFULLSTOP),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_OBJECT_EDGES_SPLINE_POSITION_MODE),GeData(EDGES_SPLINE_POSITION_MODE_RANDOM),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_OBJECT_EDGES_SPLINE_POSITION),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_OBJECT_EDGES_SPLINE_POSITION_SPREAD),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_OBJECT_EDGES_SPLINE_POSITION_POSSPREAD),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_OBJECT_EDGES_SPLINE_POSITION_NOWRAP),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_OBJECT_EDGES_SPLINE_SEGMENT_MODE),GeData(EDGES_SPLINE_SEGMENT_MODE_ALL),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_OBJECT_EDGES_SPLINE_SEGMENT_NUM),GeData(1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_OBJECT_EDGES_EVEN),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_OBJECT_EDGES_DISTRIB),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SOURCE_DIR),GeData(SOURCE_DIR_PHONG_NORMAL),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SOURCE_DIR_INVERT),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_OBJECT_STICK),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_OBJECT_PERPOINT),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_OBJECT_INPUTGEN),GeData(OBJECT_INPUTGEN_FIRST),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_OBJECT_SPECIFIC),GeData(1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SOURCE_TEXTURE_CHANNEL_EMIT),GeData(SOURCE_CHANNEL_NONE),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SOURCE_TEXTURE_CHANNEL_COLOR),GeData(SOURCE_CHANNEL_NONE),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SOURCE_TEXTURE_CHANNEL_SPEED),GeData(SOURCE_CHANNEL_NONE),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SOURCE_TEXTURE_CHANNEL_SCALE),GeData(SOURCE_CHANNEL_NONE),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SOURCE_TEXTURE_CHANNEL_SCALE_MULTI),GeData(Vector(1.0,1.0,1.0)),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SOURCE_TEXTURE_CHANNEL_SCALE_MASK),GeData(SCALE_MASK_XYZ),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SOURCE_TEXTURE_SCALE_ZOFFSET),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SOURCE_TEXTURE_SHADERMODE),GeData(TEXTURE_SHADERMODE_COLOR),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SOURCE_TEXTURE_TEST),GeData(TEXTURE_TEST_BRIGHT),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SOURCE_TEXTURE_CONTRAST),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SOURCE_TEXTURE_INVERT),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SOURCE_TEXTURE_SAMPLES),GeData(1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SOURCE_TEXTURE_CENTREONLY),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SOURCE_LIGHTS_SAMPLES),GeData(1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SOURCE_LIGHTS_COLOUR),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_DEFINED_MODE),GeData(DEFINED_MODE_LINE),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_DEFINED_LINE_COUNT),GeData(1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_DEFINED_LINE_SPACING),GeData(Vector(1.0,1.0,1.0)),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_DEFINED_GRID_COUNT),GeData(Vector(1.0,1.0,1.0)),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_DEFINED_GRID_SPACING),GeData(Vector(1.0,1.0,1.0)),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_DEFINED_CIRCLE_RADIUS),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_DEFINED_CIRCLE_SEGMENTS),GeData(1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_DEFINED_CIRCLE_SPACING),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_DEFINED_CIRCLE_SLICE_START),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_DEFINED_CIRCLE_SLICE_END),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_DEFINED_DIR),GeData(SOURCE_DIR_SPHERICAL),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_DEFINED_DIR_TANGENT),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_DEFINED_BOXSIZE),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_DEFINED_STATIC_ON),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_DEFINED_STATIC_FRAME),GeData(1),flags);
pObject->SetParameter(DescID(PARTICLES_USE_INITIAL_STATE),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_USE_INITIAL_STATE_COMPRESSED),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_USE_INITIAL_STATE_SCALE),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_CACHEINFO_CACHEDELEMENTS),GeData(1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SOURCE_SUBSAMP),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_NOCONTROL),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_MAXCOUNT),GeData(1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_OBJCOUNT_MODE),GeData(EMITTER_OBJCOUNT_MODE_POINTS),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_EMITTYPE),GeData(EMITTYPE_RATE),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_TRIGNUMTYPE),GeData(TRIGNUMTYPE_BIRTHRATE),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_TRIGNUM),GeData(1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_PULLTRIGGER),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_PULSE_EXACT),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHOT_COUNT),GeData(1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHOT_SPACE),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_CONSTANT),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_LIFESPAN_DOCUMENT),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_BIRTHRATE),GeData(1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_BIRTHRATE_VAR),GeData(1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_RATETIME),GeData(PARTICLES_RATETIME_SECOND),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SOURCE_OVERLAP),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SOURCE_OVERLAP_RADIUS),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SPEED),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SPEED_VAR),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_RADIUS),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_RADIUS_VAR),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SCALE),GeData(Vector(1.0,1.0,1.0)),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SCALE_UNIFORM),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SCALE_VAR),GeData(Vector(1.0,1.0,1.0)),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SCALE_VAR_UNIFORM),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_MINHERIT_USE),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_MINHERIT_LINDIR),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_MINHERIT_ROTDIR),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_MINHERIT_SPEEDMIX),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_TP_GENERATE),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_TP_EXACT),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_TP_IGNORESPEED),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_TP_DISCONNECT),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_TP_SIZE),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_ROTATE_USE),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_ROTATE_MODE),GeData(EMITTER_ROTATE_NONE),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_ROTATE_INVERT),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_ROTATE_PERSIST),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_ROTATE_SETROT),GeData(Vector(1.0,1.0,1.0)),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_ROTATE_RANDOM),GeData(EMITTER_ROTATE_RANDOM_HPB),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_ROTATE_SIMPLESPIN),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_ROTATE_SPIN),GeData(Vector(1.0,1.0,1.0)),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_ROTATE_SPIN_VAR),GeData(Vector(1.0,1.0,1.0)),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_MASS),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_MASS_VAR),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_TEMP),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_TEMP_VAR),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_DENSITY),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_DENSITY_VAR),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_FUEL),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_FUEL_VAR),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_BURN),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_BURN_VAR),GeData(0.1),flags);
pObject->SetParameter(DescID(ID_XPART_XDATA_REWIND),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EDITOR_GROUPS_MODE),GeData(1),flags);
pObject->SetParameter(DescID(PARTICLES_EDITOR_GROUPS_USEDISPLAY),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_ICON),GeData(EMITTER_ICON_GREEN),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_ONOFF),GeData(true),flags);
pObject->SetParameter(DescID(ID_XPART_CONSTRAINTS_SHOW),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EDITOR_FASTMODE),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EDITOR_FORCE),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_DRAW),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_SHAPE_DRAW_ORIGIN),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EDITOR_LOD),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EDITOR_MULTI),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EDITOR_FILLCIRC_SEGMENTS),GeData(1),flags);
pObject->SetParameter(DescID(PARTICLES_EDITOR_FILLCIRC_OUTLINE),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_SPHERE_TRANSP),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EDITOR_AXISCOLORS),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EDITOR),GeData(PARTICLES_EDITOR_DOT),flags);
pObject->SetParameter(DescID(PARTICLES_COLOR_MODE),GeData(PARTICLES_COLOR_MODE_SINGLE),flags);
pObject->SetParameter(DescID(PARTICLES_GRADIENT_MODE),GeData(PARTICLES_GRADIENT_MODE_AGE),flags);
pObject->SetParameter(DescID(PARTICLES_GRADIENT_AUTO),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_GRADIENT_MIN),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_GRADIENT_MAX),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_HUD_SHOW),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_HUD_IFSELECTED),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_HUD_SHOWINDICES),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_HUD_PARAM),GeData(HUD_PARAM_NONE),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_HUD_OPACITY),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_HUD_XPOS),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_HUD_YPOS),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_COLLIDER_ENABLE),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_COLLIDER_TYPE),GeData(COLLIDE_TYPE_PARTICLES_SPHERE),flags);
pObject->SetParameter(DescID(PARTICLES_COLLIDER_NOSPAWN),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_COLLIDER_MAX_ITER),GeData(1),flags);
pObject->SetParameter(DescID(PARTICLES_COLLIDER_KILL_LEAKS),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_COLLIDER_SELF_ENABLE),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_COLLIDER_SELF),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_COLLIDER_ELASTICITY),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_COLLIDER_ELASTICITY_VAR),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_COLLIDER_FRICTION),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_COLLIDER_FRICTION_VAR),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_COLLIDER_SCATTER),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_COLLIDER_SELF_RADIUS),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_COLLIDER_SELF_SPAWN),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_COLLIDER_SELF_SPAWNCOUNT),GeData(1),flags);
pObject->SetParameter(DescID(PARTICLES_COLLIDER_SELF_SPAWNONCEONLY),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_COLLIDER_SELF_KILL),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_PP_STIFFNESS),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_PP_ITER),GeData(1),flags);
pObject->SetParameter(DescID(PARTICLES_FLUID),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_FLUID_COLLIDERS),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_FLUID_DENSITY_TYPE),GeData(PARTICLES_FLUID_DENSITY_TYPE_CUSTOM),flags);
pObject->SetParameter(DescID(PARTICLES_FLUID_DENSITY),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_FLUID_VISCOSITY),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_FLUID_VORTICITY),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_FLUID_TENSION),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_FLUID_REPULSION),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_FLUID_DIFFUSE),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_FLUID_DIFFUSE_CREST_RATE),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_FLUID_DIFFUSE_AIR_RATE),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_FLUID_DIFFUSE_BUOYANCY),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_FLUID_DIFFUSE_DRAG),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_FLUID_DIFFUSE_SPRAY),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_FLUID_DIFFUSE_ROT),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_FLUID_DIFFUSE_FOAM_DENSITY),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_FLUID_DIFFUSE_SPRAY_DENSITY),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_FLUID_DIFFUSE_KE_MIN),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_FLUID_DIFFUSE_KE_MAX),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_FLUID_DIFFUSE_WC_MIN),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_FLUID_DIFFUSE_WC_MAX),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_FLUID_DIFFUSE_TA_MIN),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_FLUID_DIFFUSE_TA_MAX),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_FLUID_RADIUS),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_FLUID_STIFFNESS),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_FLUID_ITER),GeData(1),flags);
pObject->SetParameter(DescID(PARTICLES_FLUID_DAMPING),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_FLUID_SCALE),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_FLUID_STEPS_MODE),GeData(PARTICLES_FLUID_STEPS_MODE_1),flags);
pObject->SetParameter(DescID(ID_XPART_COLLIDER_CONSTRAINTS),GeData(true),flags);
pObject->SetParameter(DescID(ID_XPART_COLLIDER_CONSTRAINT_POLY_FORCES),GeData(true),flags);
pObject->SetParameter(DescID(ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_BIRTH),GeData(true),flags);
pObject->SetParameter(DescID(ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_BIRTH_ONLY),GeData(true),flags);
pObject->SetParameter(DescID(ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_GROUP_ONLY),GeData(true),flags);
pObject->SetParameter(DescID(ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_BIRTH_LIMIT),GeData(1),flags);
pObject->SetParameter(DescID(ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_BIRTH_RADIUS),GeData(0.1),flags);
pObject->SetParameter(DescID(ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_BIRTH_STIFFNESS),GeData(0.1),flags);
pObject->SetParameter(DescID(ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_BIRTH_BREAK),GeData(0.1),flags);
pObject->SetParameter(DescID(ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_PP_COLLISION),GeData(true),flags);
pObject->SetParameter(DescID(ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_PP_GROUP_ONLY),GeData(true),flags);
pObject->SetParameter(DescID(ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_PP_COLLISION_LIMIT),GeData(1),flags);
pObject->SetParameter(DescID(ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_PP_COLLISION_STIFFNESS),GeData(0.1),flags);
pObject->SetParameter(DescID(ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_PP_COLLISION_BREAK),GeData(0.1),flags);
pObject->SetParameter(DescID(ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_PP_DIST),GeData(true),flags);
pObject->SetParameter(DescID(ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_PP_DIST_GROUP_ONLY),GeData(true),flags);
pObject->SetParameter(DescID(ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_PP_DIST_LIMIT),GeData(1),flags);
pObject->SetParameter(DescID(ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_PP_DIST_RADIUS),GeData(0.1),flags);
pObject->SetParameter(DescID(ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_PP_DIST_STIFFNESS),GeData(0.1),flags);
pObject->SetParameter(DescID(ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_PP_DIST_BREAK),GeData(0.1),flags);
pObject->SetParameter(DescID(ID_XPART_COLLIDER_CONSTRAINT_PP_FORCES),GeData(true),flags);
pObject->SetParameter(DescID(ID_XPART_COLLIDER_CONSTRAINTS_FORCES_GROUP_ONLY),GeData(true),flags);
pObject->SetParameter(DescID(ID_XPART_COLLIDER_CONSTRAINTS_PP_ATTRACTION),GeData(0.1),flags);
pObject->SetParameter(DescID(ID_XPART_COLLIDER_CONSTRAINTS_PP_ATTRACTION_RADIUS),GeData(0.1),flags);
pObject->SetParameter(DescID(ID_XPART_COLLIDER_CONSTRAINTS_PP_REPULSION),GeData(0.1),flags);
pObject->SetParameter(DescID(ID_XPART_COLLIDER_CONSTRAINTS_PP_REPULSION_RADIUS),GeData(0.1),flags);
pObject->SetParameter(DescID(ID_XPART_COLLIDER_CONSTRAINTS_ITER),GeData(1),flags);
pObject->SetParameter(DescID(PARTICLES_QUESTIONS_MODE),GeData(PARTICLES_QUESTIONS_MODE_BYPASS),flags);
pObject->SetParameter(DescID(PARTICLES_MODIFIERS_SAMESYSTEM),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_MODIFIERS_INEX),GeData(MODIFIERS_INEX_INCLUDE),flags);
pObject->SetParameter(DescID(PARTICLES_DEFORMERS_SAMESYSTEM),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_DEFORMERS_INEX),GeData(MODIFIERS_INEX_INCLUDE),flags);
pObject->SetParameter(DescID(PARTICLES_EDIT_EDITABLE),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EDIT_MODE),GeData(PARTICLES_EDIT_MODE_POINTS),flags);
pObject->SetParameter(DescID(PARTICLES_EDIT_BLEND_MODE),GeData(PARTICLES_EDIT_BLEND_MODE_CLIPPED),flags);
pObject->SetParameter(DescID(PARTICLES_EDIT_TRACKDATA),GeData(0.1),flags);
pObject->SetParameter(DescID(PARTICLES_EDIT_SHOW_DELETED),GeData(true),flags);
pObject->SetParameter(DescID(ID_XPARTICLES_DEBUG_THREADING),GeData(true),flags);
pObject->SetParameter(DescID(PARTICLES_EMITTER_RANDOMSEED),GeData(1),flags);
pObject->Message(MSG_UPDATE);
//Second way, using the base container.
BaseContainer *bc = pObject->GetDataInstance();
bc->SetInt32(PARTICLES_EMITTER_SHAPE,PARTICLES_EMITTER_SHAPE_RECT);
bc->SetInt32(PARTICLES_EMITTER_SHAPE_ROTATION,EMORIENT_XPOS);
bc->SetFloat(PARTICLES_EMITTER_SHAPE_RECT_W,0.1);
bc->SetFloat(PARTICLES_EMITTER_SHAPE_RECT_H,0.1);
bc->SetFloat(PARTICLES_EMITTER_SHAPE_RECT_ANGLEH,0.1);
bc->SetFloat(PARTICLES_EMITTER_SHAPE_RECT_ANGLEV,0.1);
bc->SetFloat(PARTICLES_EMITTER_SHAPE_DISC_RAD,0.1);
bc->SetFloat(PARTICLES_EMITTER_SHAPE_DISC_ANGLE,0.1);
bc->SetFloat(PARTICLES_EMITTER_SHAPE_ELLIPSE_RAD_H,0.1);
bc->SetFloat(PARTICLES_EMITTER_SHAPE_ELLIPSE_RAD_V,0.1);
bc->SetFloat(PARTICLES_EMITTER_SHAPE_ELLIPSE_ANGLE,0.1);
bc->SetBool(PARTICLES_EMITTER_SHAPE_DISC_RINGONLY,true);
bc->SetFloat(PARTICLES_EMITTER_SHAPE_DISC_ANGLEVAR,0.1);
bc->SetBool(PARTICLES_EMITTER_SHAPE_3D,true);
bc->SetFloat(PARTICLES_EMITTER_SHAPE_LENGTH,0.1);
bc->SetBool(PARTICLES_EMITTER_SHAPE_OFFSET_RANDOM,true);
bc->SetFloat(PARTICLES_EMITTER_SOURCE_OFFSET,0.1);
bc->SetFloat(PARTICLES_EMITTER_SHAPE_SPHERE_RAD,0.1);
bc->SetBool(PARTICLES_EMITTER_SHAPE_SPHERE_SURFACEONLY,true);
bc->SetVector(PARTICLES_EMITTER_SHAPE_BOX_SIZE, c4d.Vector(1.0,1.0,1.0);
bc->SetBool(PARTICLES_EMITTER_SHAPE_BOX_SURFACEONLY,true);
bc->SetInt32(PARTICLES_EMITTER_SHAPE_BOX_EMITMODE,BSOURCE_EMITMODE_RANDOM);
bc->SetFloat(PARTICLES_EMITTER_SHAPE_BOX_GRIDSIZE,0.1);
bc->SetInt32(PARTICLES_EMITTER_BOX_DIR,BSOURCE_DIR_FACES);
bc->SetFloat(PARTICLES_EMITTER_SHAPE_CYLINDER_RADIUS,0.1);
bc->SetFloat(PARTICLES_EMITTER_SHAPE_CYLINDER_HEIGHT,0.1);
bc->SetInt32(PARTICLES_EMITTER_CYLINDER_DIR,CSOURCE_DIR_RADIAL);
bc->SetBool(PARTICLES_EMITTER_SHAPE_CYLINDER_SURFACEONLY,true);
bc->SetInt32(PARTICLES_EMITTER_SPHERE_DIR,SOURCE_DIR_NORMAL);
bc->SetFloat(PARTICLES_EMITTER_TIMESCALE,0.1);
bc->SetInt32(PARTICLES_EMITTER_SHAPE_OBJECT_NURBS,OBJECT_NURBS_BOTH);
bc->SetBool(PARTICLES_EMITTER_SHAPE_OBJECT_NURBS_C1,true);
bc->SetBool(PARTICLES_EMITTER_SHAPE_OBJECT_NURBS_R1,true);
bc->SetBool(PARTICLES_EMITTER_SHAPE_OBJECT_NURBS_C2,true);
bc->SetBool(PARTICLES_EMITTER_SHAPE_OBJECT_NURBS_R2,true);
bc->SetInt32(PARTICLES_EMITTER_SHAPE_OBJECT_EMISSION,PARTICLES_EMITTER_SHAPE_OBJECT_EMISSION_POLYCENTRE);
bc->SetInt32(PARTICLES_EMITTER_SHAPE_OBJECT_RETRIES,1);
bc->SetFloat(PARTICLES_EMITTER_SHAPE_OBJECT_GRIDSIZE,0.1);
bc->SetInt32(PARTICLES_EMITTER_SHAPE_OBJECT_GRIDMODE,EMITTER_GRIDMODE_RANDOM);
bc->SetInt32(PARTICLES_EMITTER_SHAPE_OBJECT_GRIDAXIS,EMITTER_GRIDAXIS_X);
bc->SetBool(PARTICLES_EMITTER_SHAPE_OBJECT_GRIDFULLSTOP,true);
bc->SetInt32(PARTICLES_EMITTER_SHAPE_OBJECT_EDGES_SPLINE_POSITION_MODE,EDGES_SPLINE_POSITION_MODE_RANDOM);
bc->SetFloat(PARTICLES_EMITTER_SHAPE_OBJECT_EDGES_SPLINE_POSITION,0.1);
bc->SetFloat(PARTICLES_EMITTER_SHAPE_OBJECT_EDGES_SPLINE_POSITION_SPREAD,0.1);
bc->SetBool(PARTICLES_EMITTER_SHAPE_OBJECT_EDGES_SPLINE_POSITION_POSSPREAD,true);
bc->SetBool(PARTICLES_EMITTER_SHAPE_OBJECT_EDGES_SPLINE_POSITION_NOWRAP,true);
bc->SetInt32(PARTICLES_EMITTER_SHAPE_OBJECT_EDGES_SPLINE_SEGMENT_MODE,EDGES_SPLINE_SEGMENT_MODE_ALL);
bc->SetInt32(PARTICLES_EMITTER_SHAPE_OBJECT_EDGES_SPLINE_SEGMENT_NUM,1);
bc->SetBool(PARTICLES_EMITTER_SHAPE_OBJECT_EDGES_EVEN,true);
bc->SetFloat(PARTICLES_EMITTER_SHAPE_OBJECT_EDGES_DISTRIB,0.1);
bc->SetInt32(PARTICLES_EMITTER_SOURCE_DIR,SOURCE_DIR_PHONG_NORMAL);
bc->SetBool(PARTICLES_EMITTER_SOURCE_DIR_INVERT,true);
bc->SetBool(PARTICLES_EMITTER_SHAPE_OBJECT_STICK,true);
bc->SetBool(PARTICLES_EMITTER_SHAPE_OBJECT_PERPOINT,true);
bc->SetInt32(PARTICLES_EMITTER_SHAPE_OBJECT_INPUTGEN,OBJECT_INPUTGEN_FIRST);
bc->SetInt32(PARTICLES_EMITTER_SHAPE_OBJECT_SPECIFIC,1);
bc->SetInt32(PARTICLES_EMITTER_SOURCE_TEXTURE_CHANNEL_EMIT,SOURCE_CHANNEL_NONE);
bc->SetInt32(PARTICLES_EMITTER_SOURCE_TEXTURE_CHANNEL_COLOR,SOURCE_CHANNEL_NONE);
bc->SetInt32(PARTICLES_EMITTER_SOURCE_TEXTURE_CHANNEL_SPEED,SOURCE_CHANNEL_NONE);
bc->SetInt32(PARTICLES_EMITTER_SOURCE_TEXTURE_CHANNEL_SCALE,SOURCE_CHANNEL_NONE);
bc->SetVector(PARTICLES_EMITTER_SOURCE_TEXTURE_CHANNEL_SCALE_MULTI, c4d.Vector(1.0,1.0,1.0);
bc->SetInt32(PARTICLES_EMITTER_SOURCE_TEXTURE_CHANNEL_SCALE_MASK,SCALE_MASK_XYZ);
bc->SetBool(PARTICLES_EMITTER_SOURCE_TEXTURE_SCALE_ZOFFSET,true);
bc->SetInt32(PARTICLES_EMITTER_SOURCE_TEXTURE_SHADERMODE,TEXTURE_SHADERMODE_COLOR);
bc->SetInt32(PARTICLES_EMITTER_SOURCE_TEXTURE_TEST,TEXTURE_TEST_BRIGHT);
bc->SetFloat(PARTICLES_EMITTER_SOURCE_TEXTURE_CONTRAST,0.1);
bc->SetBool(PARTICLES_EMITTER_SOURCE_TEXTURE_INVERT,true);
bc->SetInt32(PARTICLES_EMITTER_SOURCE_TEXTURE_SAMPLES,1);
bc->SetBool(PARTICLES_EMITTER_SOURCE_TEXTURE_CENTREONLY,true);
bc->SetInt32(PARTICLES_EMITTER_SOURCE_LIGHTS_SAMPLES,1);
bc->SetBool(PARTICLES_EMITTER_SOURCE_LIGHTS_COLOUR,true);
bc->SetInt32(PARTICLES_EMITTER_DEFINED_MODE,DEFINED_MODE_LINE);
bc->SetInt32(PARTICLES_EMITTER_DEFINED_LINE_COUNT,1);
bc->SetVector(PARTICLES_EMITTER_DEFINED_LINE_SPACING, c4d.Vector(1.0,1.0,1.0);
bc->SetVector(PARTICLES_EMITTER_DEFINED_GRID_COUNT, c4d.Vector(1.0,1.0,1.0);
bc->SetVector(PARTICLES_EMITTER_DEFINED_GRID_SPACING, c4d.Vector(1.0,1.0,1.0);
bc->SetFloat(PARTICLES_EMITTER_DEFINED_CIRCLE_RADIUS,0.1);
bc->SetInt32(PARTICLES_EMITTER_DEFINED_CIRCLE_SEGMENTS,1);
bc->SetFloat(PARTICLES_EMITTER_DEFINED_CIRCLE_SPACING,0.1);
bc->SetFloat(PARTICLES_EMITTER_DEFINED_CIRCLE_SLICE_START,0.1);
bc->SetFloat(PARTICLES_EMITTER_DEFINED_CIRCLE_SLICE_END,0.1);
bc->SetInt32(PARTICLES_EMITTER_DEFINED_DIR,SOURCE_DIR_SPHERICAL);
bc->SetBool(PARTICLES_EMITTER_DEFINED_DIR_TANGENT,true);
bc->SetFloat(PARTICLES_EMITTER_DEFINED_BOXSIZE,0.1);
bc->SetBool(PARTICLES_EMITTER_DEFINED_STATIC_ON,true);
bc->SetInt32(PARTICLES_EMITTER_DEFINED_STATIC_FRAME,1);
bc->SetBool(PARTICLES_USE_INITIAL_STATE,true);
bc->SetBool(PARTICLES_USE_INITIAL_STATE_COMPRESSED,true);
bc->SetFloat(PARTICLES_USE_INITIAL_STATE_SCALE,0.1);
bc->SetInt32(PARTICLES_CACHEINFO_CACHEDELEMENTS,1);
bc->SetBool(PARTICLES_EMITTER_SOURCE_SUBSAMP,true);
bc->SetBool(PARTICLES_EMITTER_NOCONTROL,true);
bc->SetInt32(PARTICLES_EMITTER_MAXCOUNT,1);
bc->SetInt32(PARTICLES_EMITTER_OBJCOUNT_MODE,EMITTER_OBJCOUNT_MODE_POINTS);
bc->SetInt32(PARTICLES_EMITTER_EMITTYPE,EMITTYPE_RATE);
bc->SetInt32(PARTICLES_EMITTER_TRIGNUMTYPE,TRIGNUMTYPE_BIRTHRATE);
bc->SetInt32(PARTICLES_EMITTER_TRIGNUM,1);
bc->SetBool(PARTICLES_EMITTER_PULLTRIGGER,true);
bc->SetBool(PARTICLES_EMITTER_PULSE_EXACT,true);
bc->SetInt32(PARTICLES_EMITTER_SHOT_COUNT,1);
bc->SetBool(PARTICLES_EMITTER_SHOT_SPACE,true);
bc->SetBool(PARTICLES_EMITTER_CONSTANT,true);
bc->SetBool(PARTICLES_EMITTER_LIFESPAN_DOCUMENT,true);
bc->SetInt32(PARTICLES_EMITTER_BIRTHRATE,1);
bc->SetInt32(PARTICLES_EMITTER_BIRTHRATE_VAR,1);
bc->SetInt32(PARTICLES_EMITTER_RATETIME,PARTICLES_RATETIME_SECOND);
bc->SetBool(PARTICLES_EMITTER_SOURCE_OVERLAP,true);
bc->SetFloat(PARTICLES_EMITTER_SOURCE_OVERLAP_RADIUS,0.1);
bc->SetFloat(PARTICLES_EMITTER_SPEED,0.1);
bc->SetFloat(PARTICLES_EMITTER_SPEED_VAR,0.1);
bc->SetFloat(PARTICLES_EMITTER_RADIUS,0.1);
bc->SetFloat(PARTICLES_EMITTER_RADIUS_VAR,0.1);
bc->SetVector(PARTICLES_EMITTER_SCALE, c4d.Vector(1.0,1.0,1.0);
bc->SetBool(PARTICLES_EMITTER_SCALE_UNIFORM,true);
bc->SetVector(PARTICLES_EMITTER_SCALE_VAR, c4d.Vector(1.0,1.0,1.0);
bc->SetBool(PARTICLES_EMITTER_SCALE_VAR_UNIFORM,true);
bc->SetBool(PARTICLES_EMITTER_MINHERIT_USE,true);
bc->SetBool(PARTICLES_EMITTER_MINHERIT_LINDIR,true);
bc->SetBool(PARTICLES_EMITTER_MINHERIT_ROTDIR,true);
bc->SetFloat(PARTICLES_EMITTER_MINHERIT_SPEEDMIX,0.1);
bc->SetBool(PARTICLES_TP_GENERATE,true);
bc->SetBool(PARTICLES_TP_EXACT,true);
bc->SetBool(PARTICLES_TP_IGNORESPEED,true);
bc->SetBool(PARTICLES_TP_DISCONNECT,true);
bc->SetFloat(PARTICLES_TP_SIZE,0.1);
bc->SetBool(PARTICLES_EMITTER_ROTATE_USE,true);
bc->SetInt32(PARTICLES_EMITTER_ROTATE_MODE,EMITTER_ROTATE_NONE);
bc->SetBool(PARTICLES_EMITTER_ROTATE_INVERT,true);
bc->SetBool(PARTICLES_EMITTER_ROTATE_PERSIST,true);
bc->SetVector(PARTICLES_EMITTER_ROTATE_SETROT, c4d.Vector(1.0,1.0,1.0);
bc->SetInt32(PARTICLES_EMITTER_ROTATE_RANDOM,EMITTER_ROTATE_RANDOM_HPB);
bc->SetBool(PARTICLES_EMITTER_ROTATE_SIMPLESPIN,true);
bc->SetVector(PARTICLES_EMITTER_ROTATE_SPIN, c4d.Vector(1.0,1.0,1.0);
bc->SetVector(PARTICLES_EMITTER_ROTATE_SPIN_VAR, c4d.Vector(1.0,1.0,1.0);
bc->SetFloat(PARTICLES_EMITTER_MASS,0.1);
bc->SetFloat(PARTICLES_EMITTER_MASS_VAR,0.1);
bc->SetFloat(PARTICLES_EMITTER_TEMP,0.1);
bc->SetFloat(PARTICLES_EMITTER_TEMP_VAR,0.1);
bc->SetFloat(PARTICLES_EMITTER_DENSITY,0.1);
bc->SetFloat(PARTICLES_EMITTER_DENSITY_VAR,0.1);
bc->SetFloat(PARTICLES_EMITTER_FUEL,0.1);
bc->SetFloat(PARTICLES_EMITTER_FUEL_VAR,0.1);
bc->SetFloat(PARTICLES_EMITTER_BURN,0.1);
bc->SetFloat(PARTICLES_EMITTER_BURN_VAR,0.1);
bc->SetBool(ID_XPART_XDATA_REWIND,true);
bc->SetInt32(PARTICLES_EDITOR_GROUPS_MODE,1);
bc->SetBool(PARTICLES_EDITOR_GROUPS_USEDISPLAY,true);
bc->SetInt32(PARTICLES_EMITTER_ICON,EMITTER_ICON_GREEN);
bc->SetBool(PARTICLES_EMITTER_ONOFF,true);
bc->SetBool(ID_XPART_CONSTRAINTS_SHOW,true);
bc->SetBool(PARTICLES_EDITOR_FASTMODE,true);
bc->SetBool(PARTICLES_EDITOR_FORCE,true);
bc->SetBool(PARTICLES_EMITTER_SHAPE_DRAW,true);
bc->SetBool(PARTICLES_EMITTER_SHAPE_DRAW_ORIGIN,true);
bc->SetFloat(PARTICLES_EDITOR_LOD,0.1);
bc->SetFloat(PARTICLES_EDITOR_MULTI,0.1);
bc->SetInt32(PARTICLES_EDITOR_FILLCIRC_SEGMENTS,1);
bc->SetBool(PARTICLES_EDITOR_FILLCIRC_OUTLINE,true);
bc->SetFloat(PARTICLES_SPHERE_TRANSP,0.1);
bc->SetBool(PARTICLES_EDITOR_AXISCOLORS,true);
bc->SetInt32(PARTICLES_EDITOR,PARTICLES_EDITOR_DOT);
bc->SetInt32(PARTICLES_COLOR_MODE,PARTICLES_COLOR_MODE_SINGLE);
bc->SetInt32(PARTICLES_GRADIENT_MODE,PARTICLES_GRADIENT_MODE_AGE);
bc->SetBool(PARTICLES_GRADIENT_AUTO,true);
bc->SetFloat(PARTICLES_GRADIENT_MIN,0.1);
bc->SetFloat(PARTICLES_GRADIENT_MAX,0.1);
bc->SetBool(PARTICLES_EMITTER_HUD_SHOW,true);
bc->SetBool(PARTICLES_EMITTER_HUD_IFSELECTED,true);
bc->SetBool(PARTICLES_EMITTER_HUD_SHOWINDICES,true);
bc->SetInt32(PARTICLES_EMITTER_HUD_PARAM,HUD_PARAM_NONE);
bc->SetFloat(PARTICLES_EMITTER_HUD_OPACITY,0.1);
bc->SetFloat(PARTICLES_EMITTER_HUD_XPOS,0.1);
bc->SetFloat(PARTICLES_EMITTER_HUD_YPOS,0.1);
bc->SetBool(PARTICLES_COLLIDER_ENABLE,true);
bc->SetInt32(PARTICLES_COLLIDER_TYPE,COLLIDE_TYPE_PARTICLES_SPHERE);
bc->SetBool(PARTICLES_COLLIDER_NOSPAWN,true);
bc->SetInt32(PARTICLES_COLLIDER_MAX_ITER,1);
bc->SetBool(PARTICLES_COLLIDER_KILL_LEAKS,true);
bc->SetBool(PARTICLES_COLLIDER_SELF_ENABLE,true);
bc->SetBool(PARTICLES_COLLIDER_SELF,true);
bc->SetFloat(PARTICLES_COLLIDER_ELASTICITY,0.1);
bc->SetFloat(PARTICLES_COLLIDER_ELASTICITY_VAR,0.1);
bc->SetFloat(PARTICLES_COLLIDER_FRICTION,0.1);
bc->SetFloat(PARTICLES_COLLIDER_FRICTION_VAR,0.1);
bc->SetFloat(PARTICLES_COLLIDER_SCATTER,0.1);
bc->SetFloat(PARTICLES_COLLIDER_SELF_RADIUS,0.1);
bc->SetBool(PARTICLES_COLLIDER_SELF_SPAWN,true);
bc->SetInt32(PARTICLES_COLLIDER_SELF_SPAWNCOUNT,1);
bc->SetBool(PARTICLES_COLLIDER_SELF_SPAWNONCEONLY,true);
bc->SetBool(PARTICLES_COLLIDER_SELF_KILL,true);
bc->SetFloat(PARTICLES_PP_STIFFNESS,0.1);
bc->SetInt32(PARTICLES_PP_ITER,1);
bc->SetBool(PARTICLES_FLUID,true);
bc->SetBool(PARTICLES_FLUID_COLLIDERS,true);
bc->SetInt32(PARTICLES_FLUID_DENSITY_TYPE,PARTICLES_FLUID_DENSITY_TYPE_CUSTOM);
bc->SetFloat(PARTICLES_FLUID_DENSITY,0.1);
bc->SetFloat(PARTICLES_FLUID_VISCOSITY,0.1);
bc->SetFloat(PARTICLES_FLUID_VORTICITY,0.1);
bc->SetFloat(PARTICLES_FLUID_TENSION,0.1);
bc->SetFloat(PARTICLES_FLUID_REPULSION,0.1);
bc->SetBool(PARTICLES_FLUID_DIFFUSE,true);
bc->SetFloat(PARTICLES_FLUID_DIFFUSE_CREST_RATE,0.1);
bc->SetFloat(PARTICLES_FLUID_DIFFUSE_AIR_RATE,0.1);
bc->SetFloat(PARTICLES_FLUID_DIFFUSE_BUOYANCY,0.1);
bc->SetFloat(PARTICLES_FLUID_DIFFUSE_DRAG,0.1);
bc->SetFloat(PARTICLES_FLUID_DIFFUSE_SPRAY,0.1);
bc->SetFloat(PARTICLES_FLUID_DIFFUSE_ROT,0.1);
bc->SetFloat(PARTICLES_FLUID_DIFFUSE_FOAM_DENSITY,0.1);
bc->SetFloat(PARTICLES_FLUID_DIFFUSE_SPRAY_DENSITY,0.1);
bc->SetFloat(PARTICLES_FLUID_DIFFUSE_KE_MIN,0.1);
bc->SetFloat(PARTICLES_FLUID_DIFFUSE_KE_MAX,0.1);
bc->SetFloat(PARTICLES_FLUID_DIFFUSE_WC_MIN,0.1);
bc->SetFloat(PARTICLES_FLUID_DIFFUSE_WC_MAX,0.1);
bc->SetFloat(PARTICLES_FLUID_DIFFUSE_TA_MIN,0.1);
bc->SetFloat(PARTICLES_FLUID_DIFFUSE_TA_MAX,0.1);
bc->SetFloat(PARTICLES_FLUID_RADIUS,0.1);
bc->SetFloat(PARTICLES_FLUID_STIFFNESS,0.1);
bc->SetInt32(PARTICLES_FLUID_ITER,1);
bc->SetFloat(PARTICLES_FLUID_DAMPING,0.1);
bc->SetFloat(PARTICLES_FLUID_SCALE,0.1);
bc->SetInt32(PARTICLES_FLUID_STEPS_MODE,PARTICLES_FLUID_STEPS_MODE_1);
bc->SetBool(ID_XPART_COLLIDER_CONSTRAINTS,true);
bc->SetBool(ID_XPART_COLLIDER_CONSTRAINT_POLY_FORCES,true);
bc->SetBool(ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_BIRTH,true);
bc->SetBool(ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_BIRTH_ONLY,true);
bc->SetBool(ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_GROUP_ONLY,true);
bc->SetInt32(ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_BIRTH_LIMIT,1);
bc->SetFloat(ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_BIRTH_RADIUS,0.1);
bc->SetFloat(ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_BIRTH_STIFFNESS,0.1);
bc->SetFloat(ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_BIRTH_BREAK,0.1);
bc->SetBool(ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_PP_COLLISION,true);
bc->SetBool(ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_PP_GROUP_ONLY,true);
bc->SetInt32(ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_PP_COLLISION_LIMIT,1);
bc->SetFloat(ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_PP_COLLISION_STIFFNESS,0.1);
bc->SetFloat(ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_PP_COLLISION_BREAK,0.1);
bc->SetBool(ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_PP_DIST,true);
bc->SetBool(ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_PP_DIST_GROUP_ONLY,true);
bc->SetInt32(ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_PP_DIST_LIMIT,1);
bc->SetFloat(ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_PP_DIST_RADIUS,0.1);
bc->SetFloat(ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_PP_DIST_STIFFNESS,0.1);
bc->SetFloat(ID_XPART_COLLIDER_CONSTRAINTS_CONNECT_PP_DIST_BREAK,0.1);
bc->SetBool(ID_XPART_COLLIDER_CONSTRAINT_PP_FORCES,true);
bc->SetBool(ID_XPART_COLLIDER_CONSTRAINTS_FORCES_GROUP_ONLY,true);
bc->SetFloat(ID_XPART_COLLIDER_CONSTRAINTS_PP_ATTRACTION,0.1);
bc->SetFloat(ID_XPART_COLLIDER_CONSTRAINTS_PP_ATTRACTION_RADIUS,0.1);
bc->SetFloat(ID_XPART_COLLIDER_CONSTRAINTS_PP_REPULSION,0.1);
bc->SetFloat(ID_XPART_COLLIDER_CONSTRAINTS_PP_REPULSION_RADIUS,0.1);
bc->SetInt32(ID_XPART_COLLIDER_CONSTRAINTS_ITER,1);
bc->SetInt32(PARTICLES_QUESTIONS_MODE,PARTICLES_QUESTIONS_MODE_BYPASS);
bc->SetBool(PARTICLES_MODIFIERS_SAMESYSTEM,true);
bc->SetInt32(PARTICLES_MODIFIERS_INEX,MODIFIERS_INEX_INCLUDE);
bc->SetBool(PARTICLES_DEFORMERS_SAMESYSTEM,true);
bc->SetInt32(PARTICLES_DEFORMERS_INEX,MODIFIERS_INEX_INCLUDE);
bc->SetBool(PARTICLES_EDIT_EDITABLE,true);
bc->SetInt32(PARTICLES_EDIT_MODE,PARTICLES_EDIT_MODE_POINTS);
bc->SetInt32(PARTICLES_EDIT_BLEND_MODE,PARTICLES_EDIT_BLEND_MODE_CLIPPED);
bc->SetFloat(PARTICLES_EDIT_TRACKDATA,0.1);
bc->SetBool(PARTICLES_EDIT_SHOW_DELETED,true);
bc->SetBool(ID_XPARTICLES_DEBUG_THREADING,true);
bc->SetInt32(PARTICLES_EMITTER_RANDOMSEED,1);
pObject->Message(MSG_UPDATE);
}
Buttons
This node has buttons. Buttons can manually be executed by calling the following code
Python
c4d.CallButton(obj,c4d.PARTICLES_SET_INITIAL_STATE)
c4d.CallButton(obj,c4d.PARTICLES_RESET_INTIIAL_STATE)
c4d.CallButton(obj,c4d.PARTICLES_LOAD_INITIAL_STATE)
c4d.CallButton(obj,c4d.PARTICLES_SAVE_INITIAL_STATE)
c4d.CallButton(obj,c4d.EMITTER_HELP_BUTTON)
c4d.CallButton(obj,c4d.EMITTER_VIDMAN_BUTTON)
c4d.CallButton(obj,c4d.PARTICLES_EMITTER_RESET)
c4d.CallButton(obj,c4d.PARTICLES_EMITTER_SAVE_PRESET)
c4d.CallButton(obj,c4d.PARTICLES_EMITTER_LOAD_PRESET)
c4d.CallButton(obj,c4d.PARTICLES_DEATH_ADDACTION)
c4d.CallButton(obj,c4d.EMITTER_HELP_BUTTON4)
c4d.CallButton(obj,c4d.EMITTER_VIDMAN_BUTTON4)
c4d.CallButton(obj,c4d.EMITTER_HELP_BUTTON9)
c4d.CallButton(obj,c4d.EMITTER_VIDMAN_BUTTON9)
c4d.CallButton(obj,c4d.PARTICLES_EDITOR_GROUPS_ADDNEW)
c4d.CallButton(obj,c4d.EMITTER_HELP_BUTTON7)
c4d.CallButton(obj,c4d.EMITTER_VIDMAN_BUTTON7)
c4d.CallButton(obj,c4d.EMITTER_HELP_BUTTON2)
c4d.CallButton(obj,c4d.EMITTER_VIDMAN_BUTTON2)
c4d.CallButton(obj,c4d.EMITTER_HELP_BUTTON3)
c4d.CallButton(obj,c4d.EMITTER_VIDMAN_BUTTON3)
c4d.CallButton(obj,c4d.EMITTER_HELP_BUTTON5)
c4d.CallButton(obj,c4d.EMITTER_VIDMAN_BUTTON5)
c4d.CallButton(obj,c4d.PARTICLES_EMITTER_ADDQUESTION)
c4d.CallButton(obj,c4d.PARTICLES_EDIT_RESET_FRAME)
c4d.CallButton(obj,c4d.PARTICLES_EDIT_RESET_ALL)
c4d.CallButton(obj,c4d.PARTICLES_PAINT_RESET_FRAME)
c4d.CallButton(obj,c4d.PARTICLES_PAINT_RESET_ALL)
c4d.CallButton(obj,c4d.PARTICLES_EDIT_RESET_DELETED)
c4d.CallButton(obj,c4d.EMITTER_HELP_BUTTON6)
c4d.CallButton(obj,c4d.EMITTER_VIDMAN_BUTTON6)
c4d.CallButton(obj,c4d.EMITTER_HELP_BUTTON8)
c4d.CallButton(obj,c4d.EMITTER_VIDMAN_BUTTON8)
C++
DescriptionCommand dc;
dc.id = DescID(PARTICLES_SET_INITIAL_STATE);
pObject->Message(MSG_DESCRIPTION_COMMAND, &dc);
DescriptionCommand dc;
dc.id = DescID(PARTICLES_RESET_INTIIAL_STATE);
pObject->Message(MSG_DESCRIPTION_COMMAND, &dc);
DescriptionCommand dc;
dc.id = DescID(PARTICLES_LOAD_INITIAL_STATE);
pObject->Message(MSG_DESCRIPTION_COMMAND, &dc);
DescriptionCommand dc;
dc.id = DescID(PARTICLES_SAVE_INITIAL_STATE);
pObject->Message(MSG_DESCRIPTION_COMMAND, &dc);
DescriptionCommand dc;
dc.id = DescID(EMITTER_HELP_BUTTON);
pObject->Message(MSG_DESCRIPTION_COMMAND, &dc);
DescriptionCommand dc;
dc.id = DescID(EMITTER_VIDMAN_BUTTON);
pObject->Message(MSG_DESCRIPTION_COMMAND, &dc);
DescriptionCommand dc;
dc.id = DescID(PARTICLES_EMITTER_RESET);
pObject->Message(MSG_DESCRIPTION_COMMAND, &dc);
DescriptionCommand dc;
dc.id = DescID(PARTICLES_EMITTER_SAVE_PRESET);
pObject->Message(MSG_DESCRIPTION_COMMAND, &dc);
DescriptionCommand dc;
dc.id = DescID(PARTICLES_EMITTER_LOAD_PRESET);
pObject->Message(MSG_DESCRIPTION_COMMAND, &dc);
DescriptionCommand dc;
dc.id = DescID(PARTICLES_DEATH_ADDACTION);
pObject->Message(MSG_DESCRIPTION_COMMAND, &dc);
DescriptionCommand dc;
dc.id = DescID(EMITTER_HELP_BUTTON4);
pObject->Message(MSG_DESCRIPTION_COMMAND, &dc);
DescriptionCommand dc;
dc.id = DescID(EMITTER_VIDMAN_BUTTON4);
pObject->Message(MSG_DESCRIPTION_COMMAND, &dc);
DescriptionCommand dc;
dc.id = DescID(EMITTER_HELP_BUTTON9);
pObject->Message(MSG_DESCRIPTION_COMMAND, &dc);
DescriptionCommand dc;
dc.id = DescID(EMITTER_VIDMAN_BUTTON9);
pObject->Message(MSG_DESCRIPTION_COMMAND, &dc);
DescriptionCommand dc;
dc.id = DescID(PARTICLES_EDITOR_GROUPS_ADDNEW);
pObject->Message(MSG_DESCRIPTION_COMMAND, &dc);
DescriptionCommand dc;
dc.id = DescID(EMITTER_HELP_BUTTON7);
pObject->Message(MSG_DESCRIPTION_COMMAND, &dc);
DescriptionCommand dc;
dc.id = DescID(EMITTER_VIDMAN_BUTTON7);
pObject->Message(MSG_DESCRIPTION_COMMAND, &dc);
DescriptionCommand dc;
dc.id = DescID(EMITTER_HELP_BUTTON2);
pObject->Message(MSG_DESCRIPTION_COMMAND, &dc);
DescriptionCommand dc;
dc.id = DescID(EMITTER_VIDMAN_BUTTON2);
pObject->Message(MSG_DESCRIPTION_COMMAND, &dc);
DescriptionCommand dc;
dc.id = DescID(EMITTER_HELP_BUTTON3);
pObject->Message(MSG_DESCRIPTION_COMMAND, &dc);
DescriptionCommand dc;
dc.id = DescID(EMITTER_VIDMAN_BUTTON3);
pObject->Message(MSG_DESCRIPTION_COMMAND, &dc);
DescriptionCommand dc;
dc.id = DescID(EMITTER_HELP_BUTTON5);
pObject->Message(MSG_DESCRIPTION_COMMAND, &dc);
DescriptionCommand dc;
dc.id = DescID(EMITTER_VIDMAN_BUTTON5);
pObject->Message(MSG_DESCRIPTION_COMMAND, &dc);
DescriptionCommand dc;
dc.id = DescID(PARTICLES_EMITTER_ADDQUESTION);
pObject->Message(MSG_DESCRIPTION_COMMAND, &dc);
DescriptionCommand dc;
dc.id = DescID(PARTICLES_EDIT_RESET_FRAME);
pObject->Message(MSG_DESCRIPTION_COMMAND, &dc);
DescriptionCommand dc;
dc.id = DescID(PARTICLES_EDIT_RESET_ALL);
pObject->Message(MSG_DESCRIPTION_COMMAND, &dc);
DescriptionCommand dc;
dc.id = DescID(PARTICLES_PAINT_RESET_FRAME);
pObject->Message(MSG_DESCRIPTION_COMMAND, &dc);
DescriptionCommand dc;
dc.id = DescID(PARTICLES_PAINT_RESET_ALL);
pObject->Message(MSG_DESCRIPTION_COMMAND, &dc);
DescriptionCommand dc;
dc.id = DescID(PARTICLES_EDIT_RESET_DELETED);
pObject->Message(MSG_DESCRIPTION_COMMAND, &dc);
DescriptionCommand dc;
dc.id = DescID(EMITTER_HELP_BUTTON6);
pObject->Message(MSG_DESCRIPTION_COMMAND, &dc);
DescriptionCommand dc;
dc.id = DescID(EMITTER_VIDMAN_BUTTON6);
pObject->Message(MSG_DESCRIPTION_COMMAND, &dc);
DescriptionCommand dc;
dc.id = DescID(EMITTER_HELP_BUTTON8);
pObject->Message(MSG_DESCRIPTION_COMMAND, &dc);
DescriptionCommand dc;
dc.id = DescID(EMITTER_VIDMAN_BUTTON8);
pObject->Message(MSG_DESCRIPTION_COMMAND, &dc);
Gradients
This node has gradients. Gradients can manually be edited by calling the following code
Python
C++
#include "customgui_gradient.h"
PARTICLES_EDITOR_GROUPS_GRADIENT
GeData data;
pObject->GetParameter(DescID(PARTICLES_EDITOR_GROUPS_GRADIENT),data,DESCFLAGS_GET_PARAM_GET));
Gradient *pGradient = (Gradient*)data.GetCustomDataType(CUSTOMDATATYPE_GRADIENT);
if(pGradient)
{
//must be set before any knot is set
pGradient->SetData(GRADIENT_MODE, GeData(GRADIENTMODE_ALPHA));
GradientKnot k1, k2;
k1.col = Vector(0.0, 0.0, 1.0);
k1.pos = 0.0;
k2.col = 1.0;
k2.pos = 1.0;
pGradient->InsertKnot(k1);
pGradient->InsertKnot(k2);
}
pObject->SetParameter(DescID(PARTICLES_EDITOR_GROUPS_GRADIENT),data,DESCFLAGS_SET_PARAM_SET));
PARTICLES_GRADIENT
pObject->GetParameter(DescID(PARTICLES_GRADIENT),data,DESCFLAGS_GET_PARAM_GET));