List of material proxies
		
		
		
		Jump to navigation
		Jump to search
		
Calculation
- Add
- Adds two variables.
- srcVar1
- srcVar2
- resultVar
 
- Multiply
- Multiplies two variables.
- srcVar1
- srcVar2
- resultVar
 
- Subtract
- Subtracts the second variable from the first.
- srcVar1
- srcVar2
- resultVar
 
- Divide
- Divides the first variable by the second.
- srcVar1
- srcVar2
- resultVar
 
- Equals
- Copies the value of a variable to another.
- srcVar1
- resultVar
 
- Abs
- Computes the absolute (i.e. unsigned) value of a variable.
- srcVar1
- resultVar
 
- Frac
- Returns the fractional component of a variable.  Tip:frac(4.23) = .23 Tip:frac(4.23) = .23- srcVar1
- resultVar
 
- Clamp
- Keeps a variable within a specified range.
- min
- max
- srcVar1
- resultVar
- srcVar1 and resultVar can be the same.
 
- LessOrEqual
- Compares the first value to the second.
- lessEqualVar
- greaterVar
- Variable to copy to resultVarif this condition is met.
- srcVar1
- srcVar2
- resultVar
 
Number generation
- Sine
- A sine wave.
- sineperiod
- Period between wave peaks, in seconds.
- sinemin
- sinemax
- Values at the top and bottom of the wave
- timeoffset
- Used to offset the starting position of the wave
- resultVar
 
- LinearRamp
- An ever-increasing float value.
- rate
- Units per . Confirm:second Confirm:second
- initialValue
- resultVar
 
- CurrentTime
- The number of seconds the current map has been running on the server for.
- resultVar
 
- Exponential
- A value that changes at a faster and faster rate.
- srcVar1
- The exponent with which to calculate
- offset
- Offset for exponent
- minVal
- maxVal
- Upper and lower value clamps
- scale
- resultVar
- scale * exp( srcVar1 + offset )  Tip:exp(5) = 148.413159 Tip:exp(5) = 148.413159
 
- UniformNoise
- A noisy signal where each value is equally likely to occur.
- minVal
- maxVal
- resultVar
 
- GaussianNoise
- A noisy signal where values are biased towards the average.
- mean
- The average value around which the noise will centre
- halfWidth
- The distance from the average at which it's only 30% likely to occur.
- minVal
- maxVal
- resultVar
 
- MatrixRotate
- A rotation matrix from the provided axis and angle.
- axisVar
- Axis of rotation, in the format [x y z]
- angle
- Degrees of rotation around axis.
- resultVar
- Todo: Output format
 
- PlayerProximity
- The distance between the entity the material is applied to and the local player.
- scale
- resultVar
 
- PlayerView
- The dot product of the player's view angle and the relative origin of the material's entity.
- scale
- resultVar
 
- PlayerSpeed
- Speed of the local player.
- scale
- resultVar
 
- PlayerPosition
- The local player's position.
- scale
- resultVar
- = [x y z]
 
- PlayerDamageTime
- The number of seconds since the local player was last damaged.
- scale
- resultVar
 
- EntitySpeed
- The material's entity's speed.
- scale
- resultVar
 
- EntityRandom
- A static random number associated with the entity the material is applied to. Helpful for staggering effects that appear on multiple objects.
- scale
- resultVar
 
Texture manipulation
- TextureTransform
- Generates a texture transform matrix.
- centerVar
- Name of a variable holding the center of rotation and scaling. [Optional]
- scaleVar
- Name of scale variable (2D vector). [Optional]
- rotateVar
- Name of rotation angle variable (float). [Optional]
- translateVar
- Name of the translation variable (2D vector).
- resultVar
- Resulting value.
 
- Empty
- Used to comment out proxies. Surround a bunch of proxies with the empty proxy to cause those proxies to not operate.
- TextureScroll
- Returns a transform matrix or vector that will translate a texture at a given angle at a given rate.
- textureScrollVar
- Destination for the resulting transformation.
- textureScrollRate
- Rate of scroll in units per second.
- textureScrollAngle
- Angle of rotation to move along. (90 = up, 180 = left, etc)
 
- ToggleTexture
- Toggles a texture based on the frame number set by the attached entity.  Note:Must be attached to an entity. Note:Must be attached to an entity.- toggleTextureVar
- Texture to modify based on frames.
- toggleTextureFrameNumVar
- Variable used for frame number.
- toggleShouldWrap
- Whether the animation should wrap over not.
 
- LampBeam
- Modulates the material's alpha value based on angle between the beam's direction and the viewer's eye point. This is used to make the beams of volumetric light on lights fade as you look at them dead on. Note:Must be attached to entity for angle use. Note:Must be attached to entity for angle use.
- LampHalo
- Modulates the material's alpha value based on angle between the beam's direction and the viewer's eye point.
- Like the LampBeam proxy, but used for the halo at the beam's base.  Note:Must be attached to entity for angle use. Note:Must be attached to entity for angle use.
- No return value.
- AnimatedTexture
- Increments frame variable  Note:animatedtextureframerate can NOT be set to a local var to be changed on the fly. It's a fixed variable, unfortunately Note:animatedtextureframerate can NOT be set to a local var to be changed on the fly. It's a fixed variable, unfortunately- animatedtexturevar
- Texture to increment frame for (i.e. $basetexture,$bumpmap,$normalmap(both$bumpmapand$normalmapuse$bumpframe))
- animatedtextureframenumvar
- Frame variable to increment (i.e. $frame,$bumpframe)
- animatedtextureframerate
- Framerate in frames per second.
 
Entity integration
- MaterialModify
- MaterialModifyAnimated
- Used in conjunction with the material_modify_control entity to configure arbitrary parameters from map I/O. Only works when the material is applied to an entity. No parameters.
- WaterLOD
- Coordinates water LOD values between the map's env_waterlod entity and the material's internal values.
- $CHEAPWATERSTARTDISTANCE
- Start distance for cheap water  Note:must be set outside of proxy block. Note:must be set outside of proxy block.
- $CHEAPWATERENDDISTANCE
- End distance for cheap water  Note:must be set outside of proxy block. Note:must be set outside of proxy block.
 
- BreakableSurface
- Sets the base texture to a material name held by the entity (used for switching surface material on shatter) Note:Must be attached to a Note:Must be attached to afunc_breakablesurfaceentity.
- ConveyorScroll
- Returns the scroll parameters for a texture used as a conveyor.  Note:Must be attached to Note:Must be attached tofunc_conveyorentity.- textureScrollVar
- Name of variable to place result in.
 
 Note:must be a matrix or vector type variable (i.e.
Note:must be a matrix or vector type variable (i.e. $baseTextureOffset).- Camo
 Note:Only used by material "Dev\dev_camo.vmt". Note:Only used by material "Dev\dev_camo.vmt".- camopatterntexture
- [Todo]
- camoboundingboxmin
- [Todo]
- camoboundingboxmax
- [Todo]
- surfaceprop
 
- HeliBlade
- [Todo]
- ParticleSphereProxy
- Seems to be defined in Note:Only used by material "particle\SmokeStack.vmt". Note:Only used by material "particle\SmokeStack.vmt".particle_proxies.cpp. Valve remark: "FIXME: Is this even needed any more?"
- Shadow
- Only used by material decals\rendershadow.vmt. No known parameters.
- ShadowModel
- Only used by material decals\rendermodelshadow.vmt. No known parameters.