env_projectedtexture is a point entity available in all games since . It projects a texture as a dynamic light that affects all objects in the world, optionally with Shadow Mapping. env_Projectedtexture does not light the world similarly that other light entities which are ray-traced when you compile the map. This light however is real-time and works without RAD.
CEnvProjectedTextureclass, defined in the
Caveats and Fixes
- Valve's games only support one shadow map in the PVS at a time.
- Warning: Only one projected texture can ever be active in the map, regardless of shadow settings
- Fix: It is possible to modify/remove this limit by following these instructions.
- Textures used for projected textures require the flags Clamp S, Clamp T and Clamp All to avoid glitchy tiling. Also note, that VTFs are used directly and no VMT is needed.
env_projectedtextures turned on with shadow mapping at a time. You can also increase this limit by putting
-numshadowtextures #in the Steam launch parameters of Garry's Mod, where # is the number of shadow maps the game should allow.
-numshadowtextures #in the Steam launch parameters of mod, or via block
CommandLineof parameters in gameinfo.txt.
- Shadows are only rendered when the user is running with "High" shadow detail. If your options menu does not show the "High" shadow detail setting by default, you can add
-force_vendor_id 0x10DE -force_device_id 0x1180to the game's launch options for it to show up.
- In multiplayer,
mat_supportflashlightmust be set to 1 for flashlights to work. By default these ConVars are disabled in Team Fortress 2, so this entity won't work there without special configuration.
- Viewmodels won't receive light or shadows from projected textures, with the exception of Garry's Mod and Portal 2. You can follow these instructions to fix this bug.
env_projectedtextureregardless of the shadow detail setting. To fix this, run the game in Vulkan mode with the launch parameter
- Code Fix: This bug is fixable by following these instructions: Env_projectedtexture/fixes#Fixing Parenting.
Source 2007/2009 bugs
These have all been fixed in more recent engine builds.
SpotlightTextureinput or you can also override the actual contents of the default VTF with a new one.
- Code Fix: You can fix this issue by following these instructions: Env_projectedtexture/fixes#Fix_configurable_texture_value_in_Hammer.
SpotlightTextureinput has been disabled in the Portal 2 and CS:GO engines, and instead shows an error message: "SetSpotlightTexture is disabled. If you need this feature reimplemented, tell a programmer."
- Code Fix: This bug is fixable by following these instructions: env_projectedtexture/fixes#Fixing targeting.
- 1: Enabled
- 2: Always Update (moving light)
- The entity will rotate to point at this target. Make sure you check the Always update flag if you set this.
- The field of view cone/pyramid at which the texture is projected.
- Confirm:This keyvalue does not work in Alien Swarm.
- Objects closer than this will not receive the light from the projection.
- Objects beyond this distance will not receive the light from the projection.
- Enable Shadows
- Enables/disables shadows from this projected texture. 0 = no, 1 = yes.
- Shadow Quality
- Quality of shadows.
- 0: Low (sharp, pixelized shadows)
- 1: High (smooth edged shadows)
- Light Only Target
- Limit flashlight effect to only affect target entity.
- Light World
- Control whether flashlight affects static world geometry. 0 = no, 1 = yes.
- Light Color
<color255 + int>
- Light color and intensity.
- Camera Space
- Angles are interpreted as being relative to camera.
- Texture Name
- The texture which this entity projects. Must be a VTF file (not VMT), relative to
- Texture Frame
- If the texture is animated, this is the frame it should begin on.
- Simple Projection
- Indicates if this is a simple, non-light casting texture projection.
- Simple Projection Size
- Size of the simple projection.
- Simple Projection Rotation
- Brightness Scale
- Scale the light color by this brightness.
- Color Transition Time
- Amount of time it takes for a color change to occur. Higher numbers cause faster transitions.
- Various Custom Appearance presets. Note: Requires input
Light Appearances Literal Value Description Sequence Preview 0 Normal
10 Fluorescent flicker
2 Slow, strong pulse
11 Slow pulse, noblack
5 Gentle pulse
1 Flicker A
6 Flicker B
3 Candle A
7 Candle B
8 Candle C
4 Fast strobe
9 Slow strobe
12 !FGD Underwater light mutation
- Custom Appearance
- Set a custom pattern of light brightness for this light. Pattern format is a string of characters, where a is total darkness, z fully bright. i.e.
aaggnnttzzwould be a steppy fade in from dark to light.
- Default Appearance
- Light View Models
- Control whether flashlight effects view models.
- Light Not PVS Culled
- Disable PVS culling optimization for this light (you shouldn't do this unless it's explicitly causing problems).
- Enable Volumetrics
- Whether or not to use volumetrics for this projected texture.
- Volumetric Intensity
- Defines the intensity of the volumetrics. (Default is 1. Can go above; no strict limit)
- Turns on the texture.Confirm:In gmod projected lights always start on even when "enabled" is not checked.
- Turns off the texture.
- Sets FOV.
- Set the if shadows are enabled. 0 = no, 1 = yes.
- Sets the spotlight texture.
- Specify a new Target entity to point at.
- Sets Camera Space.
- Sets Light Only Target.
- Sets Light World. 0 = no, 1 = yes.
- Turn on per frame updating (for moving lights).
- Turn off per frame updating (for moving lights).
- Change the Light Color.
- Sets the brightness.
- Sets an Appearance. (see Appearance keyvalue above for possible values)
- Sets Custom Appearance. (see Custom Appearance keyvalue above)
- Sets NearZ.
- Sets FarZ.
- Set ambient. Confirm:Doesn't seem to do anything
- Enables or disables volumetrics.
- Sets the intensity of the volumetrics. (Default is 1. Can go above; no strict limit)
- Sets the brightness.
- These outputs each fire in response to the firing of the like-numbered
FireUser4Input; see User Inputs and Outputs.
- This output fires when the entity is killed and removed from the game.