List Of Material Proxies

From Valve Developer Community

Jump to: navigation, search

Contents

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
Confirm:Returns the integer part of a number, not the fractional: frac(7.89) = 7
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 resultVar if this condition is met.
srcVar1
srcVar2
resultVar

SelectFirstIfNonZero Selects the first value over the second if it is anything other than zero.

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
.
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

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
To do: Output format

PlayerLogo Unknown

To do: found in L4D2 decals/playerlogo##.vmt

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]

PlayerHealth The local player's health (0-1).

scale
resultVar

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

AnimatedTexture Increments the current frame of an animated VTF.

animatedtexturevar
Texture to increment frame for (i.e. $basetexture, $bumpmap, $normalmap (both $bumpmap and $normalmap use $bumpframe))
animatedtextureframenumvar
Frame variable to increment (i.e. $frame, $bumpframe)
animatedtextureframerate
Framerate in frames per second. Fixed; cannot be changed once set.

TextureTransform Generates a texture transform matrix for use with $basetexturetransform etc.

centerVar
scaleVar
rotateVar
translateVar
Optional input variables for the matrix. Each one can be a float or a 2D vector.
resultVar

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. 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. 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. Must be attached to entity for angle use.

CustomSteamImageOnModel Replaces the $baseTexture with a custom texture. No parameters.

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. MaterialModify takes no parameters. MaterialModifyAnimated takes the same parameters as AnimatedTexture.

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.
$CHEAPWATERENDDISTANCE
End distance for cheap water
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). Must be attached to a func_breakable_surf entity.

ConveyorScroll Returns the scroll parameters for a texture used as a conveyor. Must be attached to func_conveyor entity.

textureScrollVar
Name of variable to place result in. Must be a matrix or vector type variable (i.e. $baseTextureOffset).

Camo Only used by material "Dev\dev_camo.vmt".

camopatterntexture
To do
camoboundingboxmin
To do
camoboundingboxmax
To do
surfaceprop

HeliBlade To do

ParticleSphereProxy Only used by material "particle\SmokeStack.vmt". Seems to be defined in 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.

Utility

Empty Used to comment out proxies. Surround a bunch of proxies with the empty proxy to cause those proxies to not operate.

Game Specific

Team Fortress 2

Spy_Invis Related to the $cloakPassEnabled parameter. Typical found in player model materials. No parameters.

Weapon_Invis Related to the $cloakPassEnabled parameter. Typical found in weapon world model materials. No parameters.

VM_Invis Related to the $cloakPassEnabled parameter. Typical found in weapon view model materials. No parameters.

Invis Same as the former three, planned replacement since February 22, 2013 Patch because none of them are different from each other.

CommunityWeapon Passes the value '1' when item is flagged as a 'Community Weapon'. Passes '0' otherwise.

resultVar

InvulnLevel Passes a float value to set the opacity of the invulnerability effect when a player has been '√úbered'.

resultVar

BurnLevel Passes a float value to set the opacity of the fire overlay effect when a player has been burned.

resultVar

YellowLevel Passes an RGB value when 'Jarate' has been used on a player.

resultVar

ModelGlowColor When active passes hard coded color value to create the 'crit' glow effect. Color is either Red or Blue. When inactive value is pure white (255 255 255).

resultVar

ItemTintColor Passes an RGB value when a 'Paint Can' is used. Value is specific to Paint color. Passes '0' when no Paint is used.

resultVar

BuildingRescueLevel Passes a transform matrix to set the amplitude of the Rescue Ranger display.

resultVar

TeamTexture Changes the animation frame of the texture depending on the current team

resultVar

PlayerTeamMatch func_respawnroomvisualizer result

resultVar

AnimatedWeaponSheen Performs the killstreak effect

animatedtexturevar
animatedtextureframenumvar
animatedtextureframerate

See also

Personal tools
Namespaces
Variants
Actions