This article's documentation is for anything that uses the Source engine. Click here for more information.

VortWarp: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
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:
{{stub}}
{{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.
This shader is used during the intro sequence of episode one.
 
{{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 Source games since Half-Life 2: Episode One 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.

Icon-Bug.pngBug:Acts weirdly when lit by flashlight.  [todo tested in ?]

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

}

See also