Here you will find documentation on all the descriptions that Cinema 4D currently has. You can list them Alphabetically, by Type or Plugin . The sample Python and C++ code is automatically generated and in some cases may not be 100% correct. If something doesn't work then please refer to the official Cinema 4D SDK documentation for more information.

IDs and information for Oxpsprite

Oxpsprite

Attributes

  • ENGLISH NAME : X-ParticlesSpritesObject
  • NAME : Oxpsprite
  • INCLUDE : Obase
  • PATH : res/description/oxpsprite.res
  • PLUGIN : X-Particles
  • MAXON online help (may not exist): OXPSPRITE

Elements

ID UI Name Type Parameters Cycle
XSP_EMITTER_LINK Emitter LINK  
XSP_SPRITE_FROMBIRTH SpritesfromParticleBirth BOOL  
XSP_SPRITE_TYPE SpriteType LONG  
XSP_SPRITE_DOT Cube
XSP_SPRITE_TICK Cross
XSP_SPRITE_PLACARD Placard
XSP_SPRITE_SPHERE Sphere
XSP_SPRITE_CYCLINDER Cylinder
XSP_SPRITE_CAPSULE Capsule
XSP_SPRITE_CONE Cone
XSP_SPRITE_PYRAMID Pyramid
XSP_SPRITE_DISC Disc
XSP_SPRITE_3PLANE 3-Plane
XSP_SPRITE_LIGHT Light
XSP_SPRITE_POINT Points(Individual)
XSP_SPRITE_POINTCLOUD Points(PointCloud)
XSP_SPRITE_TEXT Text
XSP_SPRITE_RUBBLE Rubble
XSP_SPRITE_DRAWMODE DrawMode LONG  
SPRITE_DRAWMODE_GEOM GeometryOnly
SPRITE_DRAWMODE_PARTICLE ParticlesOnly
SPRITE_DRAWMODE_BOTH GeometryandParticles
SPRITE_DRAWMODE_RENDERONLY GeometryonRenderOnly
XSP_SPRITE_SCALEMODE ScaleUsing LONG  
SPRITE_SCALEMODE_PSCALE ParticleScale
SPRITE_SCALEMODE_PRADIUS ParticleRadius
XSP_SPRITE_SPHERE_SEGMENTS Segments LONG
MIN 3
MAX 1000
STEP 1
MINSLIDER 3
MAXSLIDER 1000
CUSTOMGUI LONGSLIDER
XSP_SPRITE_TICK_3D 3DCross BOOL  
XSP_SPRITE_RUBBLE_OBJ Type LONG  
SPRITE_RUBBLE_TETRA Tetra
SPRITE_RUBBLE_HEXA Hexa
SPRITE_RUBBLE_OCTA Octa
SPRITE_RUBBLE_DODECA Dodeca
SPRITE_RUBBLE_ICOSA Icosa
SPRITE_RUBBLE_BUCKY Bucky
SPRITE_RUBBLE_RANDOM Random
XSP_SPRITE_RUBBLE_SUB SubdivisionLevels LONG MIN
XSP_SPRITE_RUBBLE_SUB_SMOOTH UseSmoothSubdivisions BOOL  
XSP_SPRITE_RUBBLE_DEFORM Deformation REAL
UNIT PERCENT
MIN 0.0
MINSLIDER 0.0
MAXSLIDER 250.0
CUSTOMGUI REALSLIDER
XSP_SPRITE_RUBBLE_PHONG AddPhongTag BOOL  
XSP_SPRITE_RUBBLE_PHONG_ANGLE PhongAngle REAL
UNIT DEGREE
MIN 0.0
MAX 180.0
XSP_SPRITE_RUBBLE_SCALE_MIN LocalMin.Scale VECTOR
UNIT REAL
MIN 0.0
STEP 0.1
XSP_SPRITE_RUBBLE_SCALE_MAX LocalMax.Scale VECTOR
UNIT REAL
MIN 0.0
STEP 0.1
XSP_SPRITE_RUBBLE_SMOOTH SmoothRubble BOOL  
XSP_SPRITE_LIGHT_NOILLUM NoIllumination BOOL  
XSP_SPRITE_LIGHT_GI GlobalIllumination BOOL  
XSP_SPRITE_LIGHT_BRIGHTNESS_MAX Brightness REAL
UNIT PERCENT
MIN 0.0
MAX 100000.0
STEP 1.0
MINSLIDER 0.0
MAXSLIDER 500.0
CUSTOMGUI REALSLIDER
XSP_SPRITE_LIGHT_SHADOWS Shadows LONG  
XLIGHT_SHADOW_NONE None
XLIGHT_SHADOW_MAPS ShadowMaps
XLIGHT_SHADOW_RAY Raytraced(Hard)
XLIGHT_SHADOW_AREA Area
XSP_SPRITE_LIGHT_FALLOFF_TYPE Falloff LONG  
LIGHT_FALLOFF_TYPE_NONE None
LIGHT_FALLOFF_TYPE_INVSQ InverseSquare
-1
LIGHT_FALLOFF_TYPE_LINEAR Linear
LIGHT_FALLOFF_TYPE_STEP Step
LIGHT_FALLOFF_TYPE_INVSQ_CLAMPED InverseSquare(Clamped)
XSP_SPRITE_LIGHT_FALLOFF_RAD_INNER InnerRadius REAL
UNIT METER
MIN 0.0
MINSLIDER 0.0
MAXSLIDER 1000.0
CUSTOMGUI REALSLIDER
XSP_SPRITE_LIGHT_FALLOFF_RAD_OUTER Radius/Decay REAL
UNIT METER
MIN 0.0
MINSLIDER 0.0
MAXSLIDER 1000.0
CUSTOMGUI REALSLIDER
XSP_SPRITE_LIGHT_FALLOFF_USEGRAD UseGradient BOOL  
XSP_SPRITE_LIGHT_FALLOFF_GRADIENT Color GRADIENT
COLOR
ICC_BASEDOCUMENT
XSP_SPRITE_LIGHT_VISIBLE VisibleLight LONG  
XLIGHT_VISIBLE_NONE None
XLIGHT_VISIBLE_VISIBLE Visible
XLIGHT_VISIBLE_VOLUMETRIC Volumetric
XSP_SPRITE_LIGHT_VISIBLE_SAMPLEDIST SampleDistance REAL
UNIT METER
MIN 0.0
STEP 1.0
MINSLIDER 0.0
MAXSLIDER 500.0
CUSTOMGUI REALSLIDER
XSP_SPRITE_LIGHT_BRIGHTNESS_VIS_MAX Brightness REAL
UNIT PERCENT
MIN 0.0
MAX 100000.0
STEP 1.0
MINSLIDER 0.0
MAXSLIDER 500.0
CUSTOMGUI REALSLIDER
XSP_SPRITE_LIGHT_INNERDIST_VIS_MAX InnerDistance REAL
UNIT PERCENT
MIN 0.0
MAX 100.0
STEP 1.0
MINSLIDER 0.0
MAXSLIDER 100.0
CUSTOMGUI REALSLIDER
XSP_SPRITE_LIGHT_NOISE_USE UseNoise LONG  
XLIGHT_NOISE_NONE None
XLIGHT_NOISE_ILLUM IlluminationOnly
XLIGHT_NOISE_VIS VisibleOnly
XLIGHT_NOISE_BOTH Both
XSP_SPRITE_LIGHT_NOISE_TYPE NoiseType LONG  
XLIGHT_NOISE_NOISE Noise
XLIGHT_NOISE_SOFT SoftTurbulence
XLIGHT_NOISE_HARD HardTurbulence
XLIGHT_NOISE_WAVY WavyTurbulence
XSP_SPRITE_LIGHT_NOISE_OCTAVES Octaves LONG
MIN 1
MAX 8
STEP 1
XSP_SPRITE_LIGHT_NOISE_VELOCITY Velocity REAL
UNIT PERCENT
MIN 0.0
MAX 1000.0
STEP 1.0
XSP_SPRITE_LIGHT_NOISE_BRIGHTNESS Brightness REAL
UNIT PERCENT
MIN -1000.0
MAX 1000.0
STEP 1.0
XSP_SPRITE_LIGHT_NOISE_CONTRAST Contrast REAL
UNIT PERCENT
MIN -1000.0
MAX 1000.0
STEP 1.0
XSP_SPRITE_LIGHT_NOISE_LOCAL Local BOOL  
XSP_SPRITE_LIGHT_NOISE_VISSCALE VisibilityScale VECTOR
UNIT METER
MIN 0.0
STEP 1.0
XSP_SPRITE_LIGHT_NOISE_ILLSCALE IlluminationScale REAL
MIN 0.0
STEP 0.1
XSP_SPRITE_LIGHT_NOISE_WIND Wind VECTOR
UNIT METER
STEP 1.0
XSP_SPRITE_LIGHT_NOISE_WINDVEL WindVelocity REAL
UNIT METER
MIN 0.0
STEP 1.0
XSP_SPRITE_CONE_ROTSEGMENTS RotationSegments LONG
MIN 3
MAX 1000
STEP 1
MINSLIDER 3
MAXSLIDER 1000
CUSTOMGUI LONGSLIDER
XSP_SPRITE_CONE_HEIGHTSEGMENTS HeightSegments LONG
MIN 1
MAX 1000
STEP 1
XSP_SPRITE_CONE_CAPS Caps BOOL  
XSP_SPRITE_CONE_HEIGHT_MULTI HeightMultiplier REAL
UNIT REAL
MIN 0.0
STEP 1.0
MINSLIDER 0.0
MAXSLIDER 50.0
CUSTOMGUI REALSLIDER
XSP_SPRITE_CONE_ORIENT Orientation LONG  
CORIENT_XPOS X+
CORIENT_XNEG X-
CORIENT_YPOS Y+
CORIENT_YNEG Y-
CORIENT_ZPOS Z+
CORIENT_ZNEG Z-
XSP_SPRITE_PYRAMID_ORIENT Orientation LONG  
PORIENT_XPOS X+
PORIENT_XNEG X-
PORIENT_YPOS Y+
PORIENT_YNEG Y-
PORIENT_ZPOS Z+
PORIENT_ZNEG Z-
XSP_SPRITE_DISC_IRAD InternalRadius REAL
UNIT PERCENT
MIN 0.0
MAX 100.0
STEP 1.0
MINSLIDER 0.0
MAXSLIDER 100.0
CUSTOMGUI REALSLIDER
XSP_SPRITE_DISC_RSEG RotationSegments LONG
MIN 3
MAX 1000
STEP 1
MINSLIDER 3
MAXSLIDER 1000
CUSTOMGUI LONGSLIDER
XSP_SPRITE_DISC_ORIENT Orientation LONG  
DORIENT_XPOS X+
DORIENT_XNEG X-
DORIENT_YPOS Y+
DORIENT_YNEG Y-
DORIENT_ZPOS Z+
DORIENT_ZNEG Z-
XSP_SPRITE_TEXT_HEIGHT TextHeight REAL
UNIT METER
MIN 0.0
STEP 0.1
MINSLIDER 0.0
MAXSLIDER 1000.0
CUSTOMGUI REALSLIDER
XSP_SPRITE_TEXT_DEPTH TextDepth REAL
UNIT METER
MIN 0.0
STEP 0.1
MINSLIDER 0.0
MAXSLIDER 1000.0
CUSTOMGUI REALSLIDER
XSP_SPRITE_TEXT_FONT Font FONT  
XSP_SPRITE_TEXT_ALIGN Align LONG  
TEXT_ALIGN_LEFT Left
TEXT_ALIGN_MIDDLE Middle
TEXT_ALIGN_RIGHT Right
XSP_SPRITE_TEXT_ROUNDING TextRounding BOOL  
XSP_SPRITE_TEXT_ROUNDING_SIZE Size REAL
UNIT PERCENT
MIN 0.0
MAX 3.0
STEP 0.1
MINSLIDER 0.0
MAXSLIDER 3.0
CUSTOMGUI REALSLIDER
XSP_SPRITE_TEXT_PLANE Plane LONG  
TEXT_PLANE_XY XY
TEXT_PLANE_ZY ZY
TEXT_PLANE_XZ XZ
XSP_SPRITE_TEXT_MIRROR MirrorAcross LONG  
TEXT_MIRROR_NONE None
TEXT_MIRROR_H H
TEXT_MIRROR_P P
TEXT_MIRROR_B B
TEXT_MIRROR_HP HP
TEXT_MIRROR_HB HB
TEXT_MIRROR_PB PB
TEXT_MIRROR_HPB HPB
XSP_SPRITE_TEXT_CENTREAXIS CenterAxis BOOL  
XSP_SPRITE_TEXT_MODE TextMode LONG  
TEXT_MODE_ALPHA Alphabet
TEXT_MODE_NUMERIC Numbers
TEXT_MODE_BOTH AlphabetandNumbers
TEXT_MODE_USER UserText
TEXT_MODE_USER_NUMERIC UserTextandNumbers
XSP_SPRITE_TEXT_ALPHA_MODE AlphabetMode LONG  
ALPHA_MODE_RANDOM Random
ALPHA_MODE_SEQ Sequential
XSP_SPRITE_TEXT_ALPHA_CASE Case LONG  
CASE_MODE_UPPER AllUpper
CASE_MODE_LOWER AllLower
CASE_MODE_BOTH MixedUpperandLower
XSP_SPRITE_TEXT_NUMERIC_MODE NumericMode LONG  
NUMERIC_MODE_RANDOM Random
NUMERIC_MODE_SEQ Sequential
XSP_SPRITE_TEXT_NUMERIC_START LowerLimit LONG
MINSLIDER -1000
MAXSLIDER 1000
CUSTOMGUI LONGSLIDER
XSP_SPRITE_TEXT_NUMERIC_END UpperLimit LONG
MINSLIDER -1000
MAXSLIDER 1000
CUSTOMGUI LONGSLIDER
XSP_SPRITE_TEXT_USER_TEXT Text STRING  
XSP_SPRITE_TEXT_SINGLECHAR SequentialOutput BOOL  
XSP_CACHEINFO_CACHEDELEMENTS LONG
HIDDEN
MIN 0
XSP_HELP_BUTTON BITMAPBUTTON  
XSP_VIDMAN_BUTTON BITMAPBUTTON  
XSP_RESET_OPTS ResettoDefaults BUTTON  
XSP_SAVE_PRESET SavePreset BUTTON  
XSP_LOAD_PRESET LoadPreset BUTTON  
XSP_SPRITE_GROUPS Groups IN_EXCLUDE
NUM_FLAGS 2
INIT_STATE 3
SEND_SELCHNGMSG 1
SCALE_V
IMAGE_01_ON 1009316
IMAGE_01_OFF 1009320
IMAGE_02_ON 300000231
IMAGE_02_OFF 300000230
XSP_SPRITE_TEXTURE_SELECT ChooseMaterialtoApply LONG  
SPRITE_TEX_FIRST Material1Only
SPRITE_TEX_RANDOM RandomSelection
SPRITE_TEX_SELECT SelectbyIndex
XSP_SPRITE_TEXTURE_INDEX MaterialIndex LONG
MIN 1
STEP 1
XSP_SPRITE_TEXTURE_PROJECTION Projection LONG  
XSP_SPRITE_TEXPROJ_SPHERICAL Spherical
XSP_SPRITE_TEXPROJ_CYLINDRICAL Cylindrical
XSP_SPRITE_TEXPROJ_FLAT Flat
XSP_SPRITE_TEXPROJ_CUBIC Cubic
XSP_SPRITE_TEXPROJ_FRONTAL Frontal
XSP_SPRITE_TEXPROJ_SPATIAL Spatial
XSP_SPRITE_TEXPROJ_UVW UVWMapping
XSP_SPRITE_TEXPROJ_SHRINK ShrinkMapping
XSP_SPRITE_TEXPROJ_CAMERA CameraMapping
XSP_CAMERAPROJ_LINK Camera LINK  
XSP_CAMERAPROJ_FILMASPECT FilmAspect REAL
MIN 0.01
STEP 0.01
XSP_CAMERAPROJ_PIXASPECT PixelAspect REAL
MIN 0.01
STEP 0.01
XSP_SPRITE_TEXTILESU TilesX REAL
MIN -1000000
MAX 1000000
STEP 0.01
XSP_SPRITE_TEXTILESV TilesY REAL
MIN -1000000
MAX 1000000
STEP 0.01
XSP_SPRITE_MULTISHADER MultishaderControl LONG  
SPRITE_MULTIS_GREY Greyscale
SPRITE_MULTIS_COLOR Color
SPRITE_MULTIS_GRADIENT UseGradient
SPRITE_MULTIS_NONE None
XSP_SPRITE_MULTIGRAD Gradient GRADIENT
COLOR
ICC_BASEDOCUMENT
XSP_SPRITE_TEXLIST TextureList IN_EXCLUDE
SCALE_V
NUM_FLAGS 0
OPEN

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.Oxpsprite)
    doc.InsertObject(obj)
    c4d.EventAdd(c4d.EVENT_FORCEREDRAW)
    
    #You can set parameters two different ways. 
    #First way              
    obj[c4d.XSP_SPRITE_FROMBIRTH] = True
    obj[c4d.XSP_SPRITE_TYPE] = c4d.XSP_SPRITE_DOT
    obj[c4d.XSP_SPRITE_DRAWMODE] = c4d.SPRITE_DRAWMODE_GEOM
    obj[c4d.XSP_SPRITE_SCALEMODE] = c4d.SPRITE_SCALEMODE_PSCALE
    obj[c4d.XSP_SPRITE_SPHERE_SEGMENTS] = 1
    obj[c4d.XSP_SPRITE_TICK_3D] = True
    obj[c4d.XSP_SPRITE_RUBBLE_OBJ] = c4d.SPRITE_RUBBLE_TETRA
    obj[c4d.XSP_SPRITE_RUBBLE_SUB] = 1
    obj[c4d.XSP_SPRITE_RUBBLE_SUB_SMOOTH] = True
    obj[c4d.XSP_SPRITE_RUBBLE_DEFORM] = 0.1
    obj[c4d.XSP_SPRITE_RUBBLE_PHONG] = True
    obj[c4d.XSP_SPRITE_RUBBLE_PHONG_ANGLE] = 0.1
    obj[c4d.XSP_SPRITE_RUBBLE_SCALE_MIN] = c4d.Vector(1.0,1.0,1.0)
    obj[c4d.XSP_SPRITE_RUBBLE_SCALE_MAX] = c4d.Vector(1.0,1.0,1.0)
    obj[c4d.XSP_SPRITE_RUBBLE_SMOOTH] = True
    obj[c4d.XSP_SPRITE_LIGHT_NOILLUM] = True
    obj[c4d.XSP_SPRITE_LIGHT_GI] = True
    obj[c4d.XSP_SPRITE_LIGHT_BRIGHTNESS_MAX] = 0.1
    obj[c4d.XSP_SPRITE_LIGHT_SHADOWS] = c4d.XLIGHT_SHADOW_NONE
    obj[c4d.XSP_SPRITE_LIGHT_FALLOFF_TYPE] = c4d.LIGHT_FALLOFF_TYPE_NONE
    obj[c4d.XSP_SPRITE_LIGHT_FALLOFF_RAD_INNER] = 0.1
    obj[c4d.XSP_SPRITE_LIGHT_FALLOFF_RAD_OUTER] = 0.1
    obj[c4d.XSP_SPRITE_LIGHT_FALLOFF_USEGRAD] = True
    obj[c4d.XSP_SPRITE_LIGHT_VISIBLE] = c4d.XLIGHT_VISIBLE_NONE
    obj[c4d.XSP_SPRITE_LIGHT_VISIBLE_SAMPLEDIST] = 0.1
    obj[c4d.XSP_SPRITE_LIGHT_BRIGHTNESS_VIS_MAX] = 0.1
    obj[c4d.XSP_SPRITE_LIGHT_INNERDIST_VIS_MAX] = 0.1
    obj[c4d.XSP_SPRITE_LIGHT_NOISE_USE] = c4d.XLIGHT_NOISE_NONE
    obj[c4d.XSP_SPRITE_LIGHT_NOISE_TYPE] = c4d.XLIGHT_NOISE_NOISE
    obj[c4d.XSP_SPRITE_LIGHT_NOISE_OCTAVES] = 1
    obj[c4d.XSP_SPRITE_LIGHT_NOISE_VELOCITY] = 0.1
    obj[c4d.XSP_SPRITE_LIGHT_NOISE_BRIGHTNESS] = 0.1
    obj[c4d.XSP_SPRITE_LIGHT_NOISE_CONTRAST] = 0.1
    obj[c4d.XSP_SPRITE_LIGHT_NOISE_LOCAL] = True
    obj[c4d.XSP_SPRITE_LIGHT_NOISE_VISSCALE] = c4d.Vector(1.0,1.0,1.0)
    obj[c4d.XSP_SPRITE_LIGHT_NOISE_ILLSCALE] = 0.1
    obj[c4d.XSP_SPRITE_LIGHT_NOISE_WIND] = c4d.Vector(1.0,1.0,1.0)
    obj[c4d.XSP_SPRITE_LIGHT_NOISE_WINDVEL] = 0.1
    obj[c4d.XSP_SPRITE_CONE_ROTSEGMENTS] = 1
    obj[c4d.XSP_SPRITE_CONE_HEIGHTSEGMENTS] = 1
    obj[c4d.XSP_SPRITE_CONE_CAPS] = True
    obj[c4d.XSP_SPRITE_CONE_HEIGHT_MULTI] = 0.1
    obj[c4d.XSP_SPRITE_CONE_ORIENT] = c4d.CORIENT_XPOS
    obj[c4d.XSP_SPRITE_PYRAMID_ORIENT] = c4d.PORIENT_XPOS
    obj[c4d.XSP_SPRITE_DISC_IRAD] = 0.1
    obj[c4d.XSP_SPRITE_DISC_RSEG] = 1
    obj[c4d.XSP_SPRITE_DISC_ORIENT] = c4d.DORIENT_XPOS
    obj[c4d.XSP_SPRITE_TEXT_HEIGHT] = 0.1
    obj[c4d.XSP_SPRITE_TEXT_DEPTH] = 0.1
    obj[c4d.XSP_SPRITE_TEXT_ALIGN] = c4d.TEXT_ALIGN_LEFT
    obj[c4d.XSP_SPRITE_TEXT_ROUNDING] = True
    obj[c4d.XSP_SPRITE_TEXT_ROUNDING_SIZE] = 0.1
    obj[c4d.XSP_SPRITE_TEXT_PLANE] = c4d.TEXT_PLANE_XY
    obj[c4d.XSP_SPRITE_TEXT_MIRROR] = c4d.TEXT_MIRROR_NONE
    obj[c4d.XSP_SPRITE_TEXT_CENTREAXIS] = True
    obj[c4d.XSP_SPRITE_TEXT_MODE] = c4d.TEXT_MODE_ALPHA
    obj[c4d.XSP_SPRITE_TEXT_ALPHA_MODE] = c4d.ALPHA_MODE_RANDOM
    obj[c4d.XSP_SPRITE_TEXT_ALPHA_CASE] = c4d.CASE_MODE_UPPER
    obj[c4d.XSP_SPRITE_TEXT_NUMERIC_MODE] = c4d.NUMERIC_MODE_RANDOM
    obj[c4d.XSP_SPRITE_TEXT_NUMERIC_START] = 1
    obj[c4d.XSP_SPRITE_TEXT_NUMERIC_END] = 1
    obj[c4d.XSP_SPRITE_TEXT_USER_TEXT] = "Hello World"
    obj[c4d.XSP_SPRITE_TEXT_SINGLECHAR] = True
    obj[c4d.XSP_CACHEINFO_CACHEDELEMENTS] = 1
    obj[c4d.XSP_SPRITE_TEXTURE_SELECT] = c4d.SPRITE_TEX_FIRST
    obj[c4d.XSP_SPRITE_TEXTURE_INDEX] = 1
    obj[c4d.XSP_SPRITE_TEXTURE_PROJECTION] = c4d.XSP_SPRITE_TEXPROJ_SPHERICAL
    obj[c4d.XSP_CAMERAPROJ_FILMASPECT] = 0.1
    obj[c4d.XSP_CAMERAPROJ_PIXASPECT] = 0.1
    obj[c4d.XSP_SPRITE_TEXTILESU] = 0.1
    obj[c4d.XSP_SPRITE_TEXTILESV] = 0.1
    obj[c4d.XSP_SPRITE_MULTISHADER] = c4d.SPRITE_MULTIS_GREY
    
    #Second way, using the base container.
    bc = obj.GetDataInstance()
    bc.SetBool(c4d.XSP_SPRITE_FROMBIRTH,True)
    bc.SetInt32(c4d.XSP_SPRITE_TYPE,c4d.XSP_SPRITE_DOT)
    bc.SetInt32(c4d.XSP_SPRITE_DRAWMODE,c4d.SPRITE_DRAWMODE_GEOM)
    bc.SetInt32(c4d.XSP_SPRITE_SCALEMODE,c4d.SPRITE_SCALEMODE_PSCALE)
    bc.SetInt32(c4d.XSP_SPRITE_SPHERE_SEGMENTS,1)
    bc.SetBool(c4d.XSP_SPRITE_TICK_3D,True)
    bc.SetInt32(c4d.XSP_SPRITE_RUBBLE_OBJ,c4d.SPRITE_RUBBLE_TETRA)
    bc.SetInt32(c4d.XSP_SPRITE_RUBBLE_SUB,1)
    bc.SetBool(c4d.XSP_SPRITE_RUBBLE_SUB_SMOOTH,True)
    bc.SetFloat(c4d.XSP_SPRITE_RUBBLE_DEFORM,0.1)
    bc.SetBool(c4d.XSP_SPRITE_RUBBLE_PHONG,True)
    bc.SetFloat(c4d.XSP_SPRITE_RUBBLE_PHONG_ANGLE,0.1)
    bc.SetVector(c4d.XSP_SPRITE_RUBBLE_SCALE_MIN, c4d.Vector(1.0,1.0,1.0)
    bc.SetVector(c4d.XSP_SPRITE_RUBBLE_SCALE_MAX, c4d.Vector(1.0,1.0,1.0)
    bc.SetBool(c4d.XSP_SPRITE_RUBBLE_SMOOTH,True)
    bc.SetBool(c4d.XSP_SPRITE_LIGHT_NOILLUM,True)
    bc.SetBool(c4d.XSP_SPRITE_LIGHT_GI,True)
    bc.SetFloat(c4d.XSP_SPRITE_LIGHT_BRIGHTNESS_MAX,0.1)
    bc.SetInt32(c4d.XSP_SPRITE_LIGHT_SHADOWS,c4d.XLIGHT_SHADOW_NONE)
    bc.SetInt32(c4d.XSP_SPRITE_LIGHT_FALLOFF_TYPE,c4d.LIGHT_FALLOFF_TYPE_NONE)
    bc.SetFloat(c4d.XSP_SPRITE_LIGHT_FALLOFF_RAD_INNER,0.1)
    bc.SetFloat(c4d.XSP_SPRITE_LIGHT_FALLOFF_RAD_OUTER,0.1)
    bc.SetBool(c4d.XSP_SPRITE_LIGHT_FALLOFF_USEGRAD,True)
    bc.SetInt32(c4d.XSP_SPRITE_LIGHT_VISIBLE,c4d.XLIGHT_VISIBLE_NONE)
    bc.SetFloat(c4d.XSP_SPRITE_LIGHT_VISIBLE_SAMPLEDIST,0.1)
    bc.SetFloat(c4d.XSP_SPRITE_LIGHT_BRIGHTNESS_VIS_MAX,0.1)
    bc.SetFloat(c4d.XSP_SPRITE_LIGHT_INNERDIST_VIS_MAX,0.1)
    bc.SetInt32(c4d.XSP_SPRITE_LIGHT_NOISE_USE,c4d.XLIGHT_NOISE_NONE)
    bc.SetInt32(c4d.XSP_SPRITE_LIGHT_NOISE_TYPE,c4d.XLIGHT_NOISE_NOISE)
    bc.SetInt32(c4d.XSP_SPRITE_LIGHT_NOISE_OCTAVES,1)
    bc.SetFloat(c4d.XSP_SPRITE_LIGHT_NOISE_VELOCITY,0.1)
    bc.SetFloat(c4d.XSP_SPRITE_LIGHT_NOISE_BRIGHTNESS,0.1)
    bc.SetFloat(c4d.XSP_SPRITE_LIGHT_NOISE_CONTRAST,0.1)
    bc.SetBool(c4d.XSP_SPRITE_LIGHT_NOISE_LOCAL,True)
    bc.SetVector(c4d.XSP_SPRITE_LIGHT_NOISE_VISSCALE, c4d.Vector(1.0,1.0,1.0)
    bc.SetFloat(c4d.XSP_SPRITE_LIGHT_NOISE_ILLSCALE,0.1)
    bc.SetVector(c4d.XSP_SPRITE_LIGHT_NOISE_WIND, c4d.Vector(1.0,1.0,1.0)
    bc.SetFloat(c4d.XSP_SPRITE_LIGHT_NOISE_WINDVEL,0.1)
    bc.SetInt32(c4d.XSP_SPRITE_CONE_ROTSEGMENTS,1)
    bc.SetInt32(c4d.XSP_SPRITE_CONE_HEIGHTSEGMENTS,1)
    bc.SetBool(c4d.XSP_SPRITE_CONE_CAPS,True)
    bc.SetFloat(c4d.XSP_SPRITE_CONE_HEIGHT_MULTI,0.1)
    bc.SetInt32(c4d.XSP_SPRITE_CONE_ORIENT,c4d.CORIENT_XPOS)
    bc.SetInt32(c4d.XSP_SPRITE_PYRAMID_ORIENT,c4d.PORIENT_XPOS)
    bc.SetFloat(c4d.XSP_SPRITE_DISC_IRAD,0.1)
    bc.SetInt32(c4d.XSP_SPRITE_DISC_RSEG,1)
    bc.SetInt32(c4d.XSP_SPRITE_DISC_ORIENT,c4d.DORIENT_XPOS)
    bc.SetFloat(c4d.XSP_SPRITE_TEXT_HEIGHT,0.1)
    bc.SetFloat(c4d.XSP_SPRITE_TEXT_DEPTH,0.1)
    bc.SetInt32(c4d.XSP_SPRITE_TEXT_ALIGN,c4d.TEXT_ALIGN_LEFT)
    bc.SetBool(c4d.XSP_SPRITE_TEXT_ROUNDING,True)
    bc.SetFloat(c4d.XSP_SPRITE_TEXT_ROUNDING_SIZE,0.1)
    bc.SetInt32(c4d.XSP_SPRITE_TEXT_PLANE,c4d.TEXT_PLANE_XY)
    bc.SetInt32(c4d.XSP_SPRITE_TEXT_MIRROR,c4d.TEXT_MIRROR_NONE)
    bc.SetBool(c4d.XSP_SPRITE_TEXT_CENTREAXIS,True)
    bc.SetInt32(c4d.XSP_SPRITE_TEXT_MODE,c4d.TEXT_MODE_ALPHA)
    bc.SetInt32(c4d.XSP_SPRITE_TEXT_ALPHA_MODE,c4d.ALPHA_MODE_RANDOM)
    bc.SetInt32(c4d.XSP_SPRITE_TEXT_ALPHA_CASE,c4d.CASE_MODE_UPPER)
    bc.SetInt32(c4d.XSP_SPRITE_TEXT_NUMERIC_MODE,c4d.NUMERIC_MODE_RANDOM)
    bc.SetInt32(c4d.XSP_SPRITE_TEXT_NUMERIC_START,1)
    bc.SetInt32(c4d.XSP_SPRITE_TEXT_NUMERIC_END,1)
    bc.SetString(c4d.XSP_SPRITE_TEXT_USER_TEXT,"Hello World")
    bc.SetBool(c4d.XSP_SPRITE_TEXT_SINGLECHAR,True)
    bc.SetInt32(c4d.XSP_CACHEINFO_CACHEDELEMENTS,1)
    bc.SetInt32(c4d.XSP_SPRITE_TEXTURE_SELECT,c4d.SPRITE_TEX_FIRST)
    bc.SetInt32(c4d.XSP_SPRITE_TEXTURE_INDEX,1)
    bc.SetInt32(c4d.XSP_SPRITE_TEXTURE_PROJECTION,c4d.XSP_SPRITE_TEXPROJ_SPHERICAL)
    bc.SetFloat(c4d.XSP_CAMERAPROJ_FILMASPECT,0.1)
    bc.SetFloat(c4d.XSP_CAMERAPROJ_PIXASPECT,0.1)
    bc.SetFloat(c4d.XSP_SPRITE_TEXTILESU,0.1)
    bc.SetFloat(c4d.XSP_SPRITE_TEXTILESV,0.1)
    bc.SetInt32(c4d.XSP_SPRITE_MULTISHADER,c4d.SPRITE_MULTIS_GREY)

if __name__=='__main__':
    main()
             

C++

#include "c4d.h"
#include "../res/description/oxpsprite.h"
void SampleFunction()
{
    BaseDocument *pDoc = GetActiveDocument();
    BaseObject *pObject = BaseObject::Alloc(Oxpsprite);
    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(XSP_SPRITE_FROMBIRTH),GeData(true),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_TYPE),GeData(XSP_SPRITE_DOT),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_DRAWMODE),GeData(SPRITE_DRAWMODE_GEOM),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_SCALEMODE),GeData(SPRITE_SCALEMODE_PSCALE),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_SPHERE_SEGMENTS),GeData(1),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_TICK_3D),GeData(true),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_RUBBLE_OBJ),GeData(SPRITE_RUBBLE_TETRA),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_RUBBLE_SUB),GeData(1),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_RUBBLE_SUB_SMOOTH),GeData(true),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_RUBBLE_DEFORM),GeData(0.1),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_RUBBLE_PHONG),GeData(true),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_RUBBLE_PHONG_ANGLE),GeData(0.1),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_RUBBLE_SCALE_MIN),GeData(Vector(1.0,1.0,1.0)),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_RUBBLE_SCALE_MAX),GeData(Vector(1.0,1.0,1.0)),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_RUBBLE_SMOOTH),GeData(true),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_LIGHT_NOILLUM),GeData(true),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_LIGHT_GI),GeData(true),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_LIGHT_BRIGHTNESS_MAX),GeData(0.1),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_LIGHT_SHADOWS),GeData(XLIGHT_SHADOW_NONE),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_LIGHT_FALLOFF_TYPE),GeData(LIGHT_FALLOFF_TYPE_NONE),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_LIGHT_FALLOFF_RAD_INNER),GeData(0.1),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_LIGHT_FALLOFF_RAD_OUTER),GeData(0.1),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_LIGHT_FALLOFF_USEGRAD),GeData(true),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_LIGHT_VISIBLE),GeData(XLIGHT_VISIBLE_NONE),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_LIGHT_VISIBLE_SAMPLEDIST),GeData(0.1),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_LIGHT_BRIGHTNESS_VIS_MAX),GeData(0.1),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_LIGHT_INNERDIST_VIS_MAX),GeData(0.1),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_LIGHT_NOISE_USE),GeData(XLIGHT_NOISE_NONE),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_LIGHT_NOISE_TYPE),GeData(XLIGHT_NOISE_NOISE),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_LIGHT_NOISE_OCTAVES),GeData(1),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_LIGHT_NOISE_VELOCITY),GeData(0.1),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_LIGHT_NOISE_BRIGHTNESS),GeData(0.1),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_LIGHT_NOISE_CONTRAST),GeData(0.1),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_LIGHT_NOISE_LOCAL),GeData(true),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_LIGHT_NOISE_VISSCALE),GeData(Vector(1.0,1.0,1.0)),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_LIGHT_NOISE_ILLSCALE),GeData(0.1),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_LIGHT_NOISE_WIND),GeData(Vector(1.0,1.0,1.0)),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_LIGHT_NOISE_WINDVEL),GeData(0.1),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_CONE_ROTSEGMENTS),GeData(1),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_CONE_HEIGHTSEGMENTS),GeData(1),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_CONE_CAPS),GeData(true),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_CONE_HEIGHT_MULTI),GeData(0.1),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_CONE_ORIENT),GeData(CORIENT_XPOS),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_PYRAMID_ORIENT),GeData(PORIENT_XPOS),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_DISC_IRAD),GeData(0.1),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_DISC_RSEG),GeData(1),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_DISC_ORIENT),GeData(DORIENT_XPOS),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_TEXT_HEIGHT),GeData(0.1),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_TEXT_DEPTH),GeData(0.1),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_TEXT_ALIGN),GeData(TEXT_ALIGN_LEFT),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_TEXT_ROUNDING),GeData(true),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_TEXT_ROUNDING_SIZE),GeData(0.1),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_TEXT_PLANE),GeData(TEXT_PLANE_XY),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_TEXT_MIRROR),GeData(TEXT_MIRROR_NONE),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_TEXT_CENTREAXIS),GeData(true),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_TEXT_MODE),GeData(TEXT_MODE_ALPHA),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_TEXT_ALPHA_MODE),GeData(ALPHA_MODE_RANDOM),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_TEXT_ALPHA_CASE),GeData(CASE_MODE_UPPER),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_TEXT_NUMERIC_MODE),GeData(NUMERIC_MODE_RANDOM),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_TEXT_NUMERIC_START),GeData(1),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_TEXT_NUMERIC_END),GeData(1),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_TEXT_USER_TEXT),GeData("Hello World"),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_TEXT_SINGLECHAR),GeData(true),flags);
    pObject->SetParameter(DescID(XSP_CACHEINFO_CACHEDELEMENTS),GeData(1),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_TEXTURE_SELECT),GeData(SPRITE_TEX_FIRST),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_TEXTURE_INDEX),GeData(1),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_TEXTURE_PROJECTION),GeData(XSP_SPRITE_TEXPROJ_SPHERICAL),flags);
    pObject->SetParameter(DescID(XSP_CAMERAPROJ_FILMASPECT),GeData(0.1),flags);
    pObject->SetParameter(DescID(XSP_CAMERAPROJ_PIXASPECT),GeData(0.1),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_TEXTILESU),GeData(0.1),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_TEXTILESV),GeData(0.1),flags);
    pObject->SetParameter(DescID(XSP_SPRITE_MULTISHADER),GeData(SPRITE_MULTIS_GREY),flags);
    pObject->Message(MSG_UPDATE);            

    //Second way, using the base container.
    BaseContainer *bc =     pObject->GetDataInstance();
    bc->SetBool(XSP_SPRITE_FROMBIRTH,true);
    bc->SetInt32(XSP_SPRITE_TYPE,XSP_SPRITE_DOT);
    bc->SetInt32(XSP_SPRITE_DRAWMODE,SPRITE_DRAWMODE_GEOM);
    bc->SetInt32(XSP_SPRITE_SCALEMODE,SPRITE_SCALEMODE_PSCALE);
    bc->SetInt32(XSP_SPRITE_SPHERE_SEGMENTS,1);
    bc->SetBool(XSP_SPRITE_TICK_3D,true);
    bc->SetInt32(XSP_SPRITE_RUBBLE_OBJ,SPRITE_RUBBLE_TETRA);
    bc->SetInt32(XSP_SPRITE_RUBBLE_SUB,1);
    bc->SetBool(XSP_SPRITE_RUBBLE_SUB_SMOOTH,true);
    bc->SetFloat(XSP_SPRITE_RUBBLE_DEFORM,0.1);
    bc->SetBool(XSP_SPRITE_RUBBLE_PHONG,true);
    bc->SetFloat(XSP_SPRITE_RUBBLE_PHONG_ANGLE,0.1);
    bc->SetVector(XSP_SPRITE_RUBBLE_SCALE_MIN, c4d.Vector(1.0,1.0,1.0);
    bc->SetVector(XSP_SPRITE_RUBBLE_SCALE_MAX, c4d.Vector(1.0,1.0,1.0);
    bc->SetBool(XSP_SPRITE_RUBBLE_SMOOTH,true);
    bc->SetBool(XSP_SPRITE_LIGHT_NOILLUM,true);
    bc->SetBool(XSP_SPRITE_LIGHT_GI,true);
    bc->SetFloat(XSP_SPRITE_LIGHT_BRIGHTNESS_MAX,0.1);
    bc->SetInt32(XSP_SPRITE_LIGHT_SHADOWS,XLIGHT_SHADOW_NONE);
    bc->SetInt32(XSP_SPRITE_LIGHT_FALLOFF_TYPE,LIGHT_FALLOFF_TYPE_NONE);
    bc->SetFloat(XSP_SPRITE_LIGHT_FALLOFF_RAD_INNER,0.1);
    bc->SetFloat(XSP_SPRITE_LIGHT_FALLOFF_RAD_OUTER,0.1);
    bc->SetBool(XSP_SPRITE_LIGHT_FALLOFF_USEGRAD,true);
    bc->SetInt32(XSP_SPRITE_LIGHT_VISIBLE,XLIGHT_VISIBLE_NONE);
    bc->SetFloat(XSP_SPRITE_LIGHT_VISIBLE_SAMPLEDIST,0.1);
    bc->SetFloat(XSP_SPRITE_LIGHT_BRIGHTNESS_VIS_MAX,0.1);
    bc->SetFloat(XSP_SPRITE_LIGHT_INNERDIST_VIS_MAX,0.1);
    bc->SetInt32(XSP_SPRITE_LIGHT_NOISE_USE,XLIGHT_NOISE_NONE);
    bc->SetInt32(XSP_SPRITE_LIGHT_NOISE_TYPE,XLIGHT_NOISE_NOISE);
    bc->SetInt32(XSP_SPRITE_LIGHT_NOISE_OCTAVES,1);
    bc->SetFloat(XSP_SPRITE_LIGHT_NOISE_VELOCITY,0.1);
    bc->SetFloat(XSP_SPRITE_LIGHT_NOISE_BRIGHTNESS,0.1);
    bc->SetFloat(XSP_SPRITE_LIGHT_NOISE_CONTRAST,0.1);
    bc->SetBool(XSP_SPRITE_LIGHT_NOISE_LOCAL,true);
    bc->SetVector(XSP_SPRITE_LIGHT_NOISE_VISSCALE, c4d.Vector(1.0,1.0,1.0);
    bc->SetFloat(XSP_SPRITE_LIGHT_NOISE_ILLSCALE,0.1);
    bc->SetVector(XSP_SPRITE_LIGHT_NOISE_WIND, c4d.Vector(1.0,1.0,1.0);
    bc->SetFloat(XSP_SPRITE_LIGHT_NOISE_WINDVEL,0.1);
    bc->SetInt32(XSP_SPRITE_CONE_ROTSEGMENTS,1);
    bc->SetInt32(XSP_SPRITE_CONE_HEIGHTSEGMENTS,1);
    bc->SetBool(XSP_SPRITE_CONE_CAPS,true);
    bc->SetFloat(XSP_SPRITE_CONE_HEIGHT_MULTI,0.1);
    bc->SetInt32(XSP_SPRITE_CONE_ORIENT,CORIENT_XPOS);
    bc->SetInt32(XSP_SPRITE_PYRAMID_ORIENT,PORIENT_XPOS);
    bc->SetFloat(XSP_SPRITE_DISC_IRAD,0.1);
    bc->SetInt32(XSP_SPRITE_DISC_RSEG,1);
    bc->SetInt32(XSP_SPRITE_DISC_ORIENT,DORIENT_XPOS);
    bc->SetFloat(XSP_SPRITE_TEXT_HEIGHT,0.1);
    bc->SetFloat(XSP_SPRITE_TEXT_DEPTH,0.1);
    bc->SetInt32(XSP_SPRITE_TEXT_ALIGN,TEXT_ALIGN_LEFT);
    bc->SetBool(XSP_SPRITE_TEXT_ROUNDING,true);
    bc->SetFloat(XSP_SPRITE_TEXT_ROUNDING_SIZE,0.1);
    bc->SetInt32(XSP_SPRITE_TEXT_PLANE,TEXT_PLANE_XY);
    bc->SetInt32(XSP_SPRITE_TEXT_MIRROR,TEXT_MIRROR_NONE);
    bc->SetBool(XSP_SPRITE_TEXT_CENTREAXIS,true);
    bc->SetInt32(XSP_SPRITE_TEXT_MODE,TEXT_MODE_ALPHA);
    bc->SetInt32(XSP_SPRITE_TEXT_ALPHA_MODE,ALPHA_MODE_RANDOM);
    bc->SetInt32(XSP_SPRITE_TEXT_ALPHA_CASE,CASE_MODE_UPPER);
    bc->SetInt32(XSP_SPRITE_TEXT_NUMERIC_MODE,NUMERIC_MODE_RANDOM);
    bc->SetInt32(XSP_SPRITE_TEXT_NUMERIC_START,1);
    bc->SetInt32(XSP_SPRITE_TEXT_NUMERIC_END,1);
    bc->SetString(XSP_SPRITE_TEXT_USER_TEXT,"Hello World");
    bc->SetBool(XSP_SPRITE_TEXT_SINGLECHAR,true);
    bc->SetInt32(XSP_CACHEINFO_CACHEDELEMENTS,1);
    bc->SetInt32(XSP_SPRITE_TEXTURE_SELECT,SPRITE_TEX_FIRST);
    bc->SetInt32(XSP_SPRITE_TEXTURE_INDEX,1);
    bc->SetInt32(XSP_SPRITE_TEXTURE_PROJECTION,XSP_SPRITE_TEXPROJ_SPHERICAL);
    bc->SetFloat(XSP_CAMERAPROJ_FILMASPECT,0.1);
    bc->SetFloat(XSP_CAMERAPROJ_PIXASPECT,0.1);
    bc->SetFloat(XSP_SPRITE_TEXTILESU,0.1);
    bc->SetFloat(XSP_SPRITE_TEXTILESV,0.1);
    bc->SetInt32(XSP_SPRITE_MULTISHADER,SPRITE_MULTIS_GREY);
    pObject->Message(MSG_UPDATE);                                                      
}
             

Buttons

This node has buttons. Buttons can manually be executed by calling the following code

Python

c4d.CallButton(obj,c4d.XSP_HELP_BUTTON)
c4d.CallButton(obj,c4d.XSP_VIDMAN_BUTTON)
c4d.CallButton(obj,c4d.XSP_RESET_OPTS)
c4d.CallButton(obj,c4d.XSP_SAVE_PRESET)
c4d.CallButton(obj,c4d.XSP_LOAD_PRESET)

C++

DescriptionCommand dc;
dc.id = DescID(XSP_HELP_BUTTON);             
pObject->Message(MSG_DESCRIPTION_COMMAND, &dc);

DescriptionCommand dc; dc.id = DescID(XSP_VIDMAN_BUTTON); pObject->Message(MSG_DESCRIPTION_COMMAND, &dc);
DescriptionCommand dc; dc.id = DescID(XSP_RESET_OPTS); pObject->Message(MSG_DESCRIPTION_COMMAND, &dc);
DescriptionCommand dc; dc.id = DescID(XSP_SAVE_PRESET); pObject->Message(MSG_DESCRIPTION_COMMAND, &dc);
DescriptionCommand dc; dc.id = DescID(XSP_LOAD_PRESET); 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"
XSP_SPRITE_LIGHT_FALLOFF_GRADIENT
GeData data; pObject->GetParameter(DescID(XSP_SPRITE_LIGHT_FALLOFF_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(XSP_SPRITE_LIGHT_FALLOFF_GRADIENT),data,DESCFLAGS_SET_PARAM_SET));
XSP_SPRITE_MULTIGRAD
pObject->GetParameter(DescID(XSP_SPRITE_MULTIGRAD),data,DESCFLAGS_GET_PARAM_GET));