VortWarp: Difference between revisions
Jump to navigation
Jump to search
Bug:Acts weirdly when lit by flashlight. [todo tested in ?]
FantomeZanto (talk | contribs) m (This shader is used on multiple models such as Alyx and Vortigaunts) |
m (Changed parameters of {{this is a}} to comply with the updated version. This action was performed by a bot.) |
||
(6 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
{{ | {{this is a|vertex shader|name=VortWarp|since=Half-Life 2: Episode One}} It blends a [[Water_(shader)#Authoring_a_flow_map|Flowmap]] with a illumination mask, and creates a similar effect to how water uses Flowmaps in newer engine branches. The shader can be both used on brushes and models. | ||
{{bug|Acts weirdly when lit by flashlight.}} | |||
== Shader parameters == | |||
; <code>$unlit <[[bool]]></code> | |||
: Whether or not the material should be lit. | |||
; <code>$flowmap <[[texture]]></code> | |||
: Flowmap to use. | |||
; <code>$entityorigin <[[vector]]></code> | |||
: The point which the model will be squished to. The entire model will try to be squished into that point. If unspecified becomes the world origin by default, "[0 0 0]". | |||
{{TODO|Test on brushes more. Test on world brushes, and on entity brushes. Do entities (ex. prop_static) and brushes have their $entityorigin centered by default, or again defaults to world origin?}} | |||
; <code>$warpparam <[[float]]></code> | |||
: Warping amount toward the specified $entityorigin. 1.0 leaves the model unaffected, lower values squish more, while 0.0 makes it practically invisible. Does not accept values outside of that range. | |||
; <code>$selfillummap <[[texture]]></code> | |||
: A [[Glowing_Textures#.24selfillum_textures|$selfillummask]] to blend with the Flowmap. | |||
== Supported effects == | |||
*<code>[[$bumpmap]]</code> | |||
*<code>[[$halflambert]]</code> | |||
*<code>[[$translucent]]</code> and <code>[[$alpha]]</code> | |||
== Example == | |||
Example showing the minimal needed parameters in order to make the shader work. | |||
<source lang=php> | |||
VortWarp | |||
{ | |||
$basetexture lights/white | |||
$flowmap shadertest/cloud | |||
$selfillummap shadertest/lump | |||
$selfillumtint "{ 200 15 0 }" | |||
$warpparam 1.0 | |||
} | |||
</source> | |||
== See also == | |||
*<code>[[Water_(shader)|Water Shader]]</code> | |||
[[Category:Shaders]] | [[Category:Shaders]] |
Latest revision as of 18:20, 17 May 2024
VortWarp
is a Vertex shader available in all Source games since
Half-Life 2: Episode One. It blends a Flowmap with a illumination mask, and creates a similar effect to how water uses Flowmaps in newer engine branches. The shader can be both used on brushes and models.

Shader parameters
$unlit <bool>
- Whether or not the material should be lit.
$flowmap <texture>
- Flowmap to use.
$entityorigin <vector>
- The point which the model will be squished to. The entire model will try to be squished into that point. If unspecified becomes the world origin by default, "[0 0 0]".
Todo: Test on brushes more. Test on world brushes, and on entity brushes. Do entities (ex. prop_static) and brushes have their $entityorigin centered by default, or again defaults to world origin?
$warpparam <float>
- Warping amount toward the specified $entityorigin. 1.0 leaves the model unaffected, lower values squish more, while 0.0 makes it practically invisible. Does not accept values outside of that range.
$selfillummap <texture>
- A $selfillummask to blend with the Flowmap.
Supported effects
Example
Example showing the minimal needed parameters in order to make the shader work.
VortWarp
{
$basetexture lights/white
$flowmap shadertest/cloud
$selfillummap shadertest/lump
$selfillumtint "{ 200 15 0 }"
$warpparam 1.0
}