Env texturetoggle: Difference between revisions
		
		
		
		
		
		Jump to navigation
		Jump to search
		
				
		
Tip:You can fire 
)
Example: If we have a brush entity named 
Note:If a brush has multiple textures with multiple frames, an output will affect all of these textures.
Code:An entity's texture frame can be set via code using the SetTextureFrameIndex function.
		
	
SirYodaJedi (talk | contribs) No edit summary  | 
				SirYodaJedi (talk | contribs)   | 
				||
| Line 41: | Line 41: | ||
==Keyvalues==  | ==Keyvalues==  | ||
{{KV Targetname}}  | {{KV Targetname}}  | ||
{{KV|Target Brush(es)|intn=target|target_destination|Name of the   | {{KV|Target Brush(es)|intn=target|target_destination|Name of the [[brush entity|brush entities]] or [[overlay]]s. All <code>ToggleTexture</code> materials on all entities (including sprites) matching the targetname will be affected.}}  | ||
==Inputs==  | ==Inputs==  | ||
Revision as of 18:17, 21 February 2025

| CTextureToggle | 
env_texturetoggle  is a   point entity  available in all 
 Source games.
It allows you to change the textures on brush entities or overlays.
Entity Description
LightmappedGeneric
{
  $basetexture "path/to/a/VTF/file/with/multiple/frames"
  Proxies
  {
    ToggleTexture
    {
      ToggleTextureVar         $basetexture
      ToggleTextureFrameNumVar $frame
    }
  }
}
In order for env_texturetoggle to work properly, your overlay or at least one face of your brush must use a VMT material with the ToggleTexture proxy defined and pointing to an animated VTF file with at least two frames.
Such a VMT file could look like the one on the right.
AddOutput texframeindex # which will change the texture's frame index without needing this entity. (not in brush and an env_texturetoggle named toggle whose target brush is brush, then we can use any of the following outputs on a func_button to toggle the texture for the brush. The second and third output have the same effect.Keyvalues
- Name (targetname) <string>[ Edit ]
 - The name that other entities refer to this entity by, via Inputs/Outputs or other keyvalues (e.g. 
parentnameortarget).
Also displayed in Hammer's 2D views and Entity Report.See also: Generic Keyvalues, Inputs and Outputs available to all entities 
- Target Brush(es) (target) <targetname>
 - Name of the brush entities or overlays. All 
ToggleTexturematerials on all entities (including sprites) matching the targetname will be affected. 
Inputs
- IncrementTextureIndex <void>
 - Increments target brush's current texture frame by one. In other words: switches to the next texture.
 
- SetTextureIndex <integer>
 - Sets target brush's texture frame to the specified index.