class CParticleSystemDefinition : public IParticleSystemDefinition
{
public:
// MPropertyFriendlyName = version
// MPropertySuppressField
int32 m_nBehaviorVersion;
// MPropertySuppressField
CUtlVector<CParticleFunctionPreEmission*> m_PreEmissionOperators;
// MPropertySuppressField
CUtlVector<CParticleFunctionEmitter*> m_Emitters;
// MPropertySuppressField
CUtlVector<CParticleFunctionInitializer*> m_Initializers;
// MPropertySuppressField
CUtlVector<CParticleFunctionOperator*> m_Operators;
// MPropertySuppressField
CUtlVector<CParticleFunctionForce*> m_ForceGenerators;
// MPropertySuppressField
CUtlVector<CParticleFunctionConstraint*> m_Constraints;
// MPropertySuppressField
CUtlVector<CParticleFunctionRenderer*> m_Renderers;
// MPropertySuppressField
CUtlVector<ParticleChildrenInfo_t> m_Children;
private:
uint8 pad_00D0[168];
public:
// MPropertySuppressField
int32 m_nFirstMultipleOverride_BackwardCompat;
private:
uint8 pad_017C[220];
public:
// MPropertyStartGroup = +Collection Options
// MPropertyFriendlyName = initial particles
int32 m_nInitialParticles;
// MPropertyFriendlyName = max particles
int32 m_nMaxParticles;
// MPropertyFriendlyName = group id
int32 m_nGroupID;
// MPropertyStartGroup = Bounding Box
// MPropertyFriendlyName = bounding box bloat min
// MVectorIsCoordinate
Vector m_BoundingBoxMin;
// MPropertyFriendlyName = bounding box bloat max
// MVectorIsCoordinate
Vector m_BoundingBoxMax;
// MPropertyFriendlyName = bounding box depth sort bias
float32 m_flDepthSortBias;
// MPropertyFriendlyName = sort override position CP
int32 m_nSortOverridePositionCP;
// MPropertyFriendlyName = infinite bounds - don't cull
bool m_bInfiniteBounds;
// MPropertyStartGroup = Named Values
// MPropertyFriendlyName = Enable Named Values (EXPERIMENTAL)
bool m_bEnableNamedValues;
// MPropertyFriendlyName = Domain Class
// MPropertyAttributeChoiceName = particlefield_domain
// MPropertyAutoRebuildOnChange
// MPropertySuppressExpr = !m_bEnableNamedValues
CUtlString m_NamedValueDomain;
// MPropertySuppressField
CUtlVector<ParticleNamedValueSource_t*> m_NamedValueLocals;
// MPropertyStartGroup = +Base Properties
// MPropertyFriendlyName = color
// MPropertyColorPlusAlpha
Color m_ConstantColor;
// MPropertyFriendlyName = normal
// MVectorIsCoordinate
Vector m_ConstantNormal;
// MPropertyFriendlyName = radius
// MPropertyAttributeRange = biased 0 500
float32 m_flConstantRadius;
// MPropertyFriendlyName = rotation
float32 m_flConstantRotation;
// MPropertyFriendlyName = rotation speed
float32 m_flConstantRotationSpeed;
// MPropertyFriendlyName = lifetime
float32 m_flConstantLifespan;
// MPropertyFriendlyName = sequence number
// MPropertyAttributeEditor = SequencePicker( 1 )
int32 m_nConstantSequenceNumber;
// MPropertyFriendlyName = sequence number 1
// MPropertyAttributeEditor = SequencePicker( 2 )
int32 m_nConstantSequenceNumber1;
// MPropertyStartGroup = Snapshot Options
int32 m_nSnapshotControlPoint;
CStrongHandle<InfoForResourceTypeIParticleSnapshot> m_hSnapshot;
// MPropertyStartGroup = Replacement Options
// MPropertyFriendlyName = cull replacement definition
CStrongHandle<InfoForResourceTypeIParticleSystemDefinition> m_pszCullReplacementName;
// MPropertyFriendlyName = cull radius
float32 m_flCullRadius;
// MPropertyFriendlyName = cull cost
float32 m_flCullFillCost;
// MPropertyFriendlyName = cull control point
int32 m_nCullControlPoint;
// MPropertyFriendlyName = fallback replacement definition
CStrongHandle<InfoForResourceTypeIParticleSystemDefinition> m_hFallback;
// MPropertyFriendlyName = fallback max count
int32 m_nFallbackMaxCount;
// MPropertyFriendlyName = low violence definition
CStrongHandle<InfoForResourceTypeIParticleSystemDefinition> m_hLowViolenceDef;
// MPropertyFriendlyName = reference replacement definition
CStrongHandle<InfoForResourceTypeIParticleSystemDefinition> m_hReferenceReplacement;
// MPropertyStartGroup = Simulation Options
// MPropertyFriendlyName = pre-simulation time
float32 m_flPreSimulationTime;
// MPropertyFriendlyName = freeze simulation after time
float32 m_flStopSimulationAfterTime;
// MPropertyFriendlyName = maximum time step
float32 m_flMaximumTimeStep;
// MPropertyFriendlyName = maximum sim tick rate
float32 m_flMaximumSimTime;
// MPropertyFriendlyName = minimum sim tick rate
float32 m_flMinimumSimTime;
// MPropertyFriendlyName = minimum simulation time step
float32 m_flMinimumTimeStep;
// MPropertyFriendlyName = minimum required rendered frames
int32 m_nMinimumFrames;
// MPropertyStartGroup = Performance Options
// MPropertyFriendlyName = minimum CPU level
int32 m_nMinCPULevel;
// MPropertyFriendlyName = minimum GPU level
int32 m_nMinGPULevel;
// MPropertyFriendlyName = time to sleep when not drawn
float32 m_flNoDrawTimeToGoToSleep;
// MPropertyFriendlyName = maximum draw distance
float32 m_flMaxDrawDistance;
// MPropertyFriendlyName = start fade distance
float32 m_flStartFadeDistance;
// MPropertyFriendlyName = maximum creation distance
float32 m_flMaxCreationDistance;
// MPropertyFriendlyName = minimum free particles to aggregate
int32 m_nAggregationMinAvailableParticles;
// MPropertyFriendlyName = aggregation radius
float32 m_flAggregateRadius;
// MPropertyFriendlyName = batch particle systems (DO NOT USE)
// MParticleAdvancedField
bool m_bShouldBatch;
// MPropertyFriendlyName = Hitboxes fall back to render bounds
bool m_bShouldHitboxesFallbackToRenderBounds;
// MPropertyFriendlyName = Hitboxes fall back to snapshot
bool m_bShouldHitboxesFallbackToSnapshot;
// MPropertyFriendlyName = Hitboxes fall back to collision hulls
bool m_bShouldHitboxesFallbackToCollisionHulls;
// MPropertyStartGroup = Rendering Options
// MPropertyFriendlyName = view model effect
// MPropertySuppressExpr = m_bScreenSpaceEffect
InheritableBoolType_t m_nViewModelEffect;
// MPropertyFriendlyName = screen space effect
// MPropertySuppressExpr = m_nViewModelEffect == INHERITABLE_BOOL_TRUE
bool m_bScreenSpaceEffect;
// MPropertyFriendlyName = target layer ID for rendering
CUtlSymbolLarge m_pszTargetLayerID;
// MPropertyFriendlyName = control point to disable rendering if it is the camera
int32 m_nSkipRenderControlPoint;
// MPropertyFriendlyName = control point to only enable rendering if it is the camera
int32 m_nAllowRenderControlPoint;
// MPropertyFriendlyName = sort particles (DEPRECATED - USE RENDERER OPTION)
// MParticleAdvancedField
bool m_bShouldSort;
private:
uint8 pad_0378[64];
public:
// MPropertySuppressField
CUtlVector<ParticleControlPointConfiguration_t> m_controlPointConfigurations;
private:
uint8 pad_03D0[112];
};
KV3 Class Defaults
{
_class = "CParticleSystemDefinition"
m_nBehaviorVersion = 0
m_PreEmissionOperators = [ ]
m_Emitters = [ ]
m_Initializers = [ ]
m_Operators = [ ]
m_ForceGenerators = [ ]
m_Constraints = [ ]
m_Renderers = [ ]
m_Children = [ ]
m_nFirstMultipleOverride_BackwardCompat = -1
m_nInitialParticles = 0
m_nMaxParticles = 1000
m_nGroupID = 0
m_BoundingBoxMin = [ -10.0, -10.0, -10.0 ]
m_BoundingBoxMax = [ 10.0, 10.0, 10.0 ]
m_flDepthSortBias = 0.0
m_nSortOverridePositionCP = -1
m_bInfiniteBounds = false
m_bEnableNamedValues = false
m_NamedValueDomain = ""
m_NamedValueLocals = [ ]
m_ConstantColor = [ 255, 255, 255 ]
m_ConstantNormal = [ 0.0, 0.0, 1.0 ]
m_flConstantRadius = 5.0
m_flConstantRotation = 0.0
m_flConstantRotationSpeed = 0.0
m_flConstantLifespan = 1.0
m_nConstantSequenceNumber = 0
m_nConstantSequenceNumber1 = 0
m_nSnapshotControlPoint = 0
m_hSnapshot = resource:""
m_pszCullReplacementName = resource:""
m_flCullRadius = 0.0
m_flCullFillCost = 1.0
m_nCullControlPoint = 0
m_hFallback = resource:""
m_nFallbackMaxCount = -1
m_hLowViolenceDef = resource:""
m_hReferenceReplacement = resource:""
m_flPreSimulationTime = 0.0
m_flStopSimulationAfterTime = 1000000000.0
m_flMaximumTimeStep = 0.1
m_flMaximumSimTime = 0.0
m_flMinimumSimTime = 0.0
m_flMinimumTimeStep = 0.0
m_nMinimumFrames = 0
m_nMinCPULevel = 0
m_nMinGPULevel = 0
m_flNoDrawTimeToGoToSleep = 8.0
m_flMaxDrawDistance = -1.0
m_flStartFadeDistance = 200000.0
m_flMaxCreationDistance = -1.0
m_nAggregationMinAvailableParticles = 1
m_flAggregateRadius = 0.0
m_bShouldBatch = false
m_bShouldHitboxesFallbackToRenderBounds = true
m_bShouldHitboxesFallbackToSnapshot = true
m_bShouldHitboxesFallbackToCollisionHulls = true
m_nViewModelEffect = "INHERITABLE_BOOL_INHERIT"
m_bScreenSpaceEffect = false
m_pszTargetLayerID = ""
m_nSkipRenderControlPoint = -1
m_nAllowRenderControlPoint = -1
m_bShouldSort = true
m_controlPointConfigurations = [ ]
}