Skip to content

C_OP_ControlpointLight

CS2 build 25218825 · Steam date 2026-09-09 · platform windows-x86_64 · cs2_schema.json

Kind: classSize: 1760 bytes (0x6e0)Alignment: 16 bytesModule: particlesBinary: !GlobalTypes

Relationships

Inherits from: CParticleFunctionOperator

Inheritance tree
Relationship diagram (2 edges)
classDiagram
    CParticleFunction <|-- CParticleFunctionOperator
    CParticleFunctionOperator <|-- C_OP_ControlpointLight
Inheritance chain, direct subclasses (up to 20) and a few composition edges

Memory layout

50 fields, 33 declared here and 17 inherited. Offsets are absolute from the object base on windows-x86_64.

CParticleFunctionC_OP_ControlpointLight

OffsetFieldTypeFromAnnotations
0x8m_flOpStrengthCParticleCollectionFloatInputCParticleFunctionMPropertyFriendlyName operator strength MPropertySortPriority -100
0x178m_nOpEndCapStateParticleEndcapMode_tCParticleFunctionMPropertyFriendlyName operator end cap state MPropertySortPriority -100
0x17cm_nToolsStateParticleToolsState_tCParticleFunctionMPropertyFriendlyName operator enabled in tools or game only MPropertySortPriority -100
0x180m_flOpStartFadeInTimefloat32CParticleFunctionMParticleAdvancedField MPropertyFriendlyName operator start fadein MPropertySortPriority -100 MPropertyStartGroup Operator Fade
0x184m_flOpEndFadeInTimefloat32CParticleFunctionMParticleAdvancedField MPropertyFriendlyName operator end fadein MPropertySortPriority -100
0x188m_flOpStartFadeOutTimefloat32CParticleFunctionMParticleAdvancedField MPropertyFriendlyName operator start fadeout MPropertySortPriority -100
0x18cm_flOpEndFadeOutTimefloat32CParticleFunctionMParticleAdvancedField MPropertyFriendlyName operator end fadeout MPropertySortPriority -100
0x190m_flOpFadeOscillatePeriodfloat32CParticleFunctionMParticleAdvancedField MPropertyFriendlyName operator fade oscillate MPropertySortPriority -100
0x194m_bNormalizeToStopTimeboolCParticleFunctionMParticleAdvancedField MPropertyFriendlyName normalize fade times to endcap MPropertySortPriority -100
0x198m_flOpTimeOffsetMinfloat32CParticleFunctionMParticleAdvancedField MPropertyFriendlyName operator fade time offset min MPropertySortPriority -100 MPropertyStartGroup Operator Fade Time Offset
0x19cm_flOpTimeOffsetMaxfloat32CParticleFunctionMParticleAdvancedField MPropertyFriendlyName operator fade time offset max MPropertySortPriority -100
0x1a0m_nOpTimeOffsetSeedint32CParticleFunctionMParticleAdvancedField MPropertyFriendlyName operator fade time offset seed MPropertySortPriority -100
0x1a4m_nOpTimeScaleSeedint32CParticleFunctionMParticleAdvancedField MPropertyFriendlyName operator fade time scale seed MPropertySortPriority -100 MPropertyStartGroup Operator Fade Timescale Modifiers
0x1a8m_flOpTimeScaleMinfloat32CParticleFunctionMParticleAdvancedField MPropertyFriendlyName operator fade time scale min MPropertySortPriority -100
0x1acm_flOpTimeScaleMaxfloat32CParticleFunctionMParticleAdvancedField MPropertyFriendlyName operator fade time scale max MPropertySortPriority -100
0x1b2m_bDisableOperatorboolCParticleFunctionMPropertyStartGroup MPropertySuppressField
0x1b8m_NotesCUtlStringCParticleFunctionMParticleHelpField MPropertyFriendlyName operator help and notes MPropertySortPriority -100
0x1d8m_flScalefloat32MPropertyFriendlyName initial color bias
0x660m_nControlPoint1int32MPropertyFriendlyName light 1 control point
0x664m_nControlPoint2int32MPropertyFriendlyName light 2 control point
0x668m_nControlPoint3int32MPropertyFriendlyName light 3 control point
0x66cm_nControlPoint4int32MPropertyFriendlyName light 4 control point
0x670m_vecCPOffset1VectorMPropertyFriendlyName light 1 control point offset
0x67cm_vecCPOffset2VectorMPropertyFriendlyName light 2 control point offset
0x688m_vecCPOffset3VectorMPropertyFriendlyName light 3 control point offset
0x694m_vecCPOffset4VectorMPropertyFriendlyName light 4 control point offset
0x6a0m_LightFiftyDist1float32MPropertyFriendlyName light 1 50% distance
0x6a4m_LightZeroDist1float32MPropertyFriendlyName light 1 0% distance
0x6a8m_LightFiftyDist2float32MPropertyFriendlyName light 2 50% distance
0x6acm_LightZeroDist2float32MPropertyFriendlyName light 2 0% distance
0x6b0m_LightFiftyDist3float32MPropertyFriendlyName light 3 50% distance
0x6b4m_LightZeroDist3float32MPropertyFriendlyName light 3 0% distance
0x6b8m_LightFiftyDist4float32MPropertyFriendlyName light 4 50% distance
0x6bcm_LightZeroDist4float32MPropertyFriendlyName light 4 0% distance
0x6c0m_LightColor1ColorMPropertyFriendlyName light 1 color
0x6c4m_LightColor2ColorMPropertyFriendlyName light 2 color
0x6c8m_LightColor3ColorMPropertyFriendlyName light 3 color
0x6ccm_LightColor4ColorMPropertyFriendlyName light 4 color
0x6d0m_bLightType1boolMPropertyFriendlyName light 1 type 0=point 1=spot
0x6d1m_bLightType2boolMPropertyFriendlyName light 2 type 0=point 1=spot
0x6d2m_bLightType3boolMPropertyFriendlyName light 3 type 0=point 1=spot
0x6d3m_bLightType4boolMPropertyFriendlyName light 4 type 0=point 1=spot
0x6d4m_bLightDynamic1boolMPropertyFriendlyName light 1 dynamic light
0x6d5m_bLightDynamic2boolMPropertyFriendlyName light 2 dynamic light
0x6d6m_bLightDynamic3boolMPropertyFriendlyName light 3 dynamic light
0x6d7m_bLightDynamic4boolMPropertyFriendlyName light 4 dynamic light
0x6d8m_bUseNormalboolMPropertyFriendlyName compute normals from control points
0x6d9m_bUseHLambertboolMPropertyFriendlyName half-lambert normals
0x6dem_bClampLowerRangeboolMPropertyFriendlyName clamp minimum light value to initial color
0x6dfm_bClampUpperRangeboolMPropertyFriendlyName clamp maximum light value to initial color
KV3 class defaults
{
	"_class": "C_OP_ControlpointLight",
	"m_flOpStrength":
	{
		"m_nType": "PF_TYPE_LITERAL",
		"m_nMapType": "PF_MAP_TYPE_DIRECT",
		"m_flLiteralValue": 1.000000,
		"m_NamedValue": "",
		"m_nControlPoint": 0,
		"m_nScalarAttribute": 3,
		"m_nVectorAttribute": 6,
		"m_nVectorComponent": 0,
		"m_bReverseOrder": false,
		"m_flRandomMin": 0.000000,
		"m_flRandomMax": 1.000000,
		"m_bHasRandomSignFlip": false,
		"m_nRandomSeed": <HIDDEN FOR DIFF>,
		"m_nRandomMode": "PF_RANDOM_MODE_CONSTANT",
		"m_strSnapshotSubset": "",
		"m_flLOD0": 0.000000,
		"m_flLOD1": 0.000000,
		"m_flLOD2": 0.000000,
		"m_flLOD3": 0.000000,
		"m_nNoiseInputVectorAttribute": 0,
		"m_flNoiseOutputMin": 0.000000,
		"m_flNoiseOutputMax": 1.000000,
		"m_flNoiseScale": 0.100000,
		"m_vecNoiseOffsetRate":
		[
			0.000000,
			0.000000,
			0.000000
		],
		"m_flNoiseOffset": 0.000000,
		"m_nNoiseOctaves": 1,
		"m_nNoiseTurbulence": "PF_NOISE_TURB_NONE",
		"m_nNoiseType": "PF_NOISE_TYPE_PERLIN",
		"m_nNoiseModifier": "PF_NOISE_MODIFIER_NONE",
		"m_flNoiseTurbulenceScale": 1.000000,
		"m_flNoiseTurbulenceMix": 0.500000,
		"m_flNoiseImgPreviewScale": 1.000000,
		"m_bNoiseImgPreviewLive": true,
		"m_flNoCameraFallback": 0.000000,
		"m_bUseBoundsCenter": false,
		"m_nInputMode": "PF_INPUT_MODE_CLAMPED",
		"m_flMultFactor": 1.000000,
		"m_flInput0": 0.000000,
		"m_flInput1": 1.000000,
		"m_flOutput0": 0.000000,
		"m_flOutput1": 1.000000,
		"m_flNotchedRangeMin": 0.000000,
		"m_flNotchedRangeMax": 1.000000,
		"m_flNotchedOutputOutside": 0.000000,
		"m_flNotchedOutputInside": 1.000000,
		"m_nRoundType": "PF_ROUND_TYPE_NEAREST",
		"m_nBiasType": "PF_BIAS_TYPE_STANDARD",
		"m_flBiasParameter": 0.000000,
		"m_Curve":
		{
			"m_spline":
			[
			],
			"m_tangents":
			[
			],
			"m_vDomainMins":
			[
				0.000000,
				0.000000
			],
			"m_vDomainMaxs":
			[
				0.000000,
				0.000000
			]
		}
	},
	"m_nOpEndCapState": "PARTICLE_ENDCAP_ALWAYS_ON",
	"m_nToolsState": "PARTICLE_TOOLS_STATE_ALWAYS_ON",
	"m_flOpStartFadeInTime": 0.000000,
	"m_flOpEndFadeInTime": 0.000000,
	"m_flOpStartFadeOutTime": 0.000000,
	"m_flOpEndFadeOutTime": 0.000000,
	"m_flOpFadeOscillatePeriod": 0.000000,
	"m_bNormalizeToStopTime": false,
	"m_flOpTimeOffsetMin": 0.000000,
	"m_flOpTimeOffsetMax": 0.000000,
	"m_nOpTimeOffsetSeed": 0,
	"m_nOpTimeScaleSeed": 0,
	"m_flOpTimeScaleMin": 1.000000,
	"m_flOpTimeScaleMax": 1.000000,
	"m_bDisableOperator": false,
	"m_Notes": "",
	"m_flScale": 0.000000,
	"m_nControlPoint1": 0,
	"m_nControlPoint2": 0,
	"m_nControlPoint3": 0,
	"m_nControlPoint4": 0,
	"m_vecCPOffset1":
	[
		0.000000,
		0.000000,
		0.000000
	],
	"m_vecCPOffset2":
	[
		0.000000,
		0.000000,
		0.000000
	],
	"m_vecCPOffset3":
	[
		0.000000,
		0.000000,
		0.000000
	],
	"m_vecCPOffset4":
	[
		0.000000,
		0.000000,
		0.000000
	],
	"m_LightFiftyDist1": 100.000000,
	"m_LightZeroDist1": 200.000000,
	"m_LightFiftyDist2": 100.000000,
	"m_LightZeroDist2": 200.000000,
	"m_LightFiftyDist3": 100.000000,
	"m_LightZeroDist3": 200.000000,
	"m_LightFiftyDist4": 100.000000,
	"m_LightZeroDist4": 200.000000,
	"m_LightColor1":
	[
		0,
		0,
		0
	],
	"m_LightColor2":
	[
		0,
		0,
		0
	],
	"m_LightColor3":
	[
		0,
		0,
		0
	],
	"m_LightColor4":
	[
		0,
		0,
		0
	],
	"m_bLightType1": false,
	"m_bLightType2": false,
	"m_bLightType3": false,
	"m_bLightType4": false,
	"m_bLightDynamic1": false,
	"m_bLightDynamic2": false,
	"m_bLightDynamic3": false,
	"m_bLightDynamic4": false,
	"m_bUseNormal": false,
	"m_bUseHLambert": true,
	"m_bClampLowerRange": false,
	"m_bClampUpperRange": false
}