Aftershock: Difference between revisions
Jump to navigation
Jump to search

Note: you don't need to declare "CurrentTime" Proxie in cases where you don't need to relative modify time scale.
Thunder4ik (talk | contribs) m (clean up, replaced: See Also → See also, added orphan tag) |
(Preparing page for move. This action was perfomed by a bot under supervision.) |
||
Line 1: | Line 1: | ||
{{langsp}} | |||
{{Multiple issues| | {{Multiple issues| | ||
{{Orphan|date=January 2024}} | {{Orphan|date=January 2024}} | ||
Line 4: | Line 5: | ||
}} | }} | ||
{{Source topicon | {{Source topicon}} | ||
{{screenshot}} | {{screenshot}} | ||
It draws animated and scrolling refraction. It is able to smoothly fade out with alpha blending depending on its distance to the ground (per vertex; calculated with the [[Material|material]] parameters <code>$GroundMin</code> and <code>$GroundMax</code>) and the dot product of the per vertex geometry normal and world view vector (scaled by <code>$SilhouetteThickness</code>). Furthermore this shader does solely support the vertexformat that [[model|studiomodels]] use. | |||
== Parameters == | == Parameters == | ||
Line 57: | Line 58: | ||
* <code>[[Water (shader)|Water]]</code> | * <code>[[Water (shader)|Water]]</code> | ||
{{stub}} | {{stub}} |
Revision as of 09:37, 12 January 2024



This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these template messages)

This article is an orphan, meaning that few or no articles link to it.
You can help by
adding links to this article from other relevant articles.
January 2024
You can help by

January 2024

This article or section needs to be cleaned up to conform to a higher standard of quality.
For help, see the VDC Editing Help and Wikipedia cleanup process. Also, remember to check for any notes left by the tagger at this article's talk page.
For help, see the VDC Editing Help and Wikipedia cleanup process. Also, remember to check for any notes left by the tagger at this article's talk page.

This article or section needs a screenshot to help visually convey the subject.
You can upload screenshots at Special:Upload. For help, see Help:Images.
You can upload screenshots at Special:Upload. For help, see Help:Images.
It draws animated and scrolling refraction. It is able to smoothly fade out with alpha blending depending on its distance to the ground (per vertex; calculated with the material parameters$GroundMin
and$GroundMax
) and the dot product of the per vertex geometry normal and world view vector (scaled by$SilhouetteThickness
). Furthermore this shader does solely support the vertexformat that studiomodels use.
Parameters
$normalmap
$bumpframe
$bumptransform
$refractamount
$colortint
$bluramount
$groundmin
$groundmax
$silhouettecolor
$silhouettethickness
Time Proxy
For any reason, you may want to modulate time by scale it. The below material proxy is a simple sample to work properly.

"$time" "0.0"
"$CurrentTime" "0.0" // declare a custom VMT Parameter to "CurrentTime" Proxie output
"$timeMult" "0.5" // declare a custom VMT Parameter to use at "Multiply" Proxie
"Proxies"
{
"CurrentTime"
{
// It pass CurrentTime Proxie to "$CurrentTime" variable to scale materials effects such $emissiveblendscrollvector.
"resultVar" "$CurrentTime"
}
"Multiply"
{
"srcVar1" "$CurrentTime" // get $CurrentTime VMT parameter to multiply with srcVar2
"srcVar2" "$timeMult" // get $timeMult VMT parameter to multiply with srcVar1
"resultVar" "$time" // writes multiplication product into $time, scaling "CurrentTime"
}
}
Example
The only known material using this shader, found in Half-Life 2: Episode Two,
materials/models/props_combine/sphere.vmt
"Aftershock" { "<dx90" { "$fallbackmaterial" "models\props_combine\sphere_dx8" } "$normalmap" "models/props_combine/aftershock-normal" "$refractamount" "0.02" "$colortint" "[1.0 1.3 1.6]" "$SilhouetteThickness" "0.2" "$SilhouetteColor" "[0.3 0.3 0.5]" "$GroundMin" "-0.3" "$GroundMax" "-0.1" "$BlurAmount" "0.01" "$time" "0.0" "Proxies" { "CurrentTime" { "resultVar" "$time" } } }
See also