$treesway: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
m (Corrected games supported)
(Added a little backstory to this shader in the description, removed the mention of it working in L4D2 because it doesn't, I just tested it a while ago.)
Line 1: Line 1:
When this parameter is added, it will make the material morph around to an [[env_wind]] entity to give it the effect that it's blowing in the wind, this effect is used for the trees you see in {{csgo}}[[Counter-Strike:_Global_Offensive|Counter-Strike: Global Offensive]] and various foliage seen in  {{insurgency}}[http://store.steampowered.com/app/222880 Insurgency 2014]. The effect assumes that the model is facing upwards, and the commands specify how much it should be affected by the [[env_wind]] entity.
When this parameter is added, it will make the material morph around to an [[env_wind]] entity to give it the effect that it's blowing in the wind, this effect is used for the trees you see in {{csgo}}[[Counter-Strike:_Global_Offensive|Counter-Strike: Global Offensive]] and various foliage seen in  {{insurgency}}[http://store.steampowered.com/app/222880 Insurgency 2014]. The effect assumes that the model is facing upwards, and the commands specify how much it should be affected by the [[env_wind]] entity.  This shader has possibly been in Valve games since [[Left_4_Dead|Left 4 Dead]], but was never enabled and used by Valve until [[Counter-Strike:_Global_Offensive|Counter-Strike: Global Offensive]], mods using the [[Alien_Swarm|Alien Swarm]] codebase can enable this shader to take advantage of it.


{{note|These parameters only work in recent engine branch like {{l4d2}}, {{csgo}} and other games based on it like {{insurgency}}. These also work in mod [http://store.steampowered.com/app/270370 Lambda Wars] aswell.}}
{{note|These parameters only work in recent engine branches like {{csgo}} and other games based on it like {{insurgency}}, along with mods that have it enabled like [http://store.steampowered.com/app/270370 Lambda Wars].}}


Requires <code>[[VertexLitGeneric]]</code>.
Requires <code>[[VertexLitGeneric]]</code>.

Revision as of 11:56, 24 May 2017

When this parameter is added, it will make the material morph around to an env_wind entity to give it the effect that it's blowing in the wind, this effect is used for the trees you see in Counter-Strike: Global OffensiveCounter-Strike: Global Offensive and various foliage seen in InsurgencyInsurgency 2014. The effect assumes that the model is facing upwards, and the commands specify how much it should be affected by the env_wind entity. This shader has possibly been in Valve games since Left 4 Dead, but was never enabled and used by Valve until Counter-Strike: Global Offensive, mods using the Alien Swarm codebase can enable this shader to take advantage of it.

Note.pngNote:These parameters only work in recent engine branches like Counter-Strike: Global Offensive and other games based on it like Insurgency, along with mods that have it enabled like Lambda Wars.

Requires VertexLitGeneric.

Syntax

   $treeSway                         "1"
   $treeSwayHeight                   "8"
   $treeSwayStartHeight              ".5"
   $treeSwayRadius                   "1"
   $treeSwayStartRadius              "0.0"
   $treeSwaySpeed                    "2"
   $treeSwayStrength                 ".1"
   $treeSwayScrumbleSpeed            "3"
   $treeSwayScrumbleStrength         ".2"
   $treeSwayScrumbleFrequency        "20"
   $treeSwayFalloffExp               "2"
   $treeSwayScrumbleFalloffExp       "3"
   $treeSwaySpeedHighWindMultiplier  ".2"
   $treeSwaySpeedLerpStart           "1000.0"
   $treeSwaySpeedLerpEnd             "2500.0"

Additional parameters

$treeSway <bool>
Turns the effect on or off.
$treeSwayHeight Float
The height in which the effect is applied.
$treeSwayStartHeight Float
The height from the origin in which the effect starts blending in.
$treeSwayRadius Float
The radius from the origin in which the effect is applied.
$treeSwayStartRadius Float
The radius from the origin in which the effect starts blending in.
$treeSwaySpeed Float
The speed multiplier of large movement such as the trunk.
$treeSwayStrength Float
The distance multiplier of large movement such as the trunk.
$treeSwayFalloffExp Float
The falloff of the effect on small movement such as the trunk. Higher means a more stable center.
$treeSwayScrumbleSpeed Float
The speed multiplier of the small movement such as the leaves.
$treeSwayScrumbleStrength Float
The distance multiplier of the small movement such as the leaves.
$treeSwayScrumbleFrequency Float
The frequency of the rippling of a sine wave in small movement such as the leaves.
$treeSwayScrumbleFalloffExp Float
The falloff of the effect on small movement such as the leaves. Higher means a more stable center.
$treeSwaySpeedHighWindMultiplier Float
Speed multiplier when env_wind triggers a gust.
$treeSwaySpeedLerpStart Float
Minimum wind speed in which a gust triggered by env_wind will start affecting the material.
$treeSwaySpeedLerpEnd Float
Minimum wind speed in which a gust triggered by env_wind will fully affect the material.