CompileLadder: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
No edit summary
No edit summary
 
(6 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{subpage|[[Material map compile flags]]}}
{{DISPLAYTITLE:%CompileLadder}}{{subpage|[[Material map compile flags]]}}
Compiles the texture as a '''ladder''' texture, meaning players will be able to climb up it. However, the material should be applied to a [[func_ladder]] brush entity in order for the navigation mesh to recognize it and to allowing [[NPC]]s to climb the ladder.<br>
Compiles brushes textured with this material as having '''ladder''' [[Contents flags|contents]], meaning players will be able to climb up it. In some games, the material should be applied to a [[func_ladder]] brush entity in order for the navigation mesh to recognize it and to allowing [[NPC]]s to climb the ladder.<br>
Materials with this flag are visible to players, unless [[%compilenodraw]] is also used. All ladders found so far also make use of [[%compilepassbullets|%CompilePassBullets]], as this function is not inherited by %CompileLadder already.
Materials with this flag are visible to players, unless [[%compilenodraw]] is also used. All ladders found so far also make use of [[%compilepassbullets|%CompilePassBullets]], as this function is not inherited by %CompileLadder already.
{{note|Due to how contents flags work, giving a brush ladder contents will cause all faces of the brush to be climbable.
{{workaround|In {{css}}{{inline note|name=And others games?}} if only one brush face is desired, you can add the <code>ladder</code> $surfaceprop to a material which will make only that brush face climbable.}} }}


===Examples===
===Examples===

Latest revision as of 17:24, 24 March 2025

Compiles brushes textured with this material as having ladder contents, meaning players will be able to climb up it. In some games, the material should be applied to a func_ladder brush entity in order for the navigation mesh to recognize it and to allowing NPCs to climb the ladder.
Materials with this flag are visible to players, unless %compilenodraw is also used. All ladders found so far also make use of %CompilePassBullets, as this function is not inherited by %CompileLadder already.

Note.pngNote:Due to how contents flags work, giving a brush ladder contents will cause all faces of the brush to be climbable.
PlacementTip.pngWorkaround:In Counter-Strike: Source[And others games?] if only one brush face is desired, you can add the ladder $surfaceprop to a material which will make only that brush face climbable.

Examples

tools/ToolsInvisibleLadder.vmt is a ladder that is not visible to players.

"LightmappedGeneric"
{
	"$basetexture" "Tools/toolsinvisibleladder"
	"%compilenodraw" 1
	"%compilepassbullets" 1
	"%compileladder" 1
	"%keywords" "airexchange,borealis,c17downtown,c17industrial,c17sewers,c17skyscraper,c17trainstation,combine,kraken,wasteland"
}

An improved version that does not cut visleaves would look like so:

"LightmappedGeneric"
{
	"$basetexture" "Tools/toolsinvisibleladder"
	"$translucent" 1
	"%compileladder" 1
	"%compiledetail" 1
	"%compilenodraw" 1
	"%compilepassbullets" 1
}

Metal/MetalLadder001a.vmt is visible to players.

"LightmappedGeneric"
{
	"$basetexture" "Metal/metalladder001a"
	"$surfaceprop" "metal"
	"%compileladder" 1
	"$alphatest" 1
	"%compilepassbullets" 1
}

Left 4 Dead seriesLeft 4 Dead seriesTools/Climb_Versus.vmt is only visible to infected players, due to the proxies.

UnlitGeneric
{
	$basetexture "tools\climb"
	$additive 1
	"%compileTeam" 2
	"%compilepassbullets" 1
	"%compileladder" 1

	$proxRange 0.0

	$proxTeam 1.0

	$one 1.0
	Proxies
	{
		PlayerTeam
		{
			team 3 
			resultVar $proxTeam
		}
		Subtract
		{
			srcVar1 $one
			srcVar2 $proxRange
			resultVar $alpha
		}
		Multiply
		{
			srcVar1 $alpha
			srcVar2 $proxTeam
			resultVar $alpha
		}
		TextureScroll
		{
			texturescrollvar $baseTextureTransform
			texturescrollrate 1
			texturescrollangle 90.00
		}
	}
}