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

EyeRefract: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
m (Changed parameters of {{this is a}} to comply with the updated version. This action was performed by a bot.)
(Added another bug, from both personal and collective experience with this shader. Reworded part on lighting, as Eyes can do those things too)
Line 2: Line 2:
[[File:Eyerefract.jpg|right|300px]]
[[File:Eyerefract.jpg|right|300px]]
{{For|about=the shader|the preceding shader|{{ent|Eyes}}|the [[QC]] property of {{ent|$model}}|[[Eyeball]]|the tool|[[qc_eyes]]}}
{{For|about=the shader|the preceding shader|{{ent|Eyes}}|the [[QC]] property of {{ent|$model}}|[[Eyeball]]|the tool|[[qc_eyes]]}}
{{this is a|vertex shader|since=Source 2007|name=EyeRefract}} It is used to create realistic eyes, which are affected by map lighting and dynamic lighting, such as those from flashlights. This shader is a successor to the {{ent|Eyes}} shader from {{src04|2}}.
{{this is a|vertex shader|since=Source 2007|name=EyeRefract}} This shader is a successor to the {{ent|Eyes}} shader from {{src04|1}}. Like it, {{code|EyeRefract}} is used to create life-like eyes, with more realistic shading, cornea parallax, and a wider set of supported effects than {{code|Eyes}}.  
{{Bug|Although this shader has support for {{ent|$emissiveblend}}, it is not fully implemented and does not work properly.}}
{{Bug|Although this shader has support for {{ent|$emissiveblend}}, it is not fully implemented and does not work properly.}}
{{Bug|The shader doesn't work in {{csgo|4}}, where eyes are always directed to the map's center. Standard models use static eyes.}} {{confirm|is this just CS:GO, or is it all {{csgobranch|2}} games?}}
{{Bug|The shader doesn't work in {{csgo|2.bold}}, where eyes are always directed to the map's center. Standard models use static eyes.}} {{confirm|is this just CS:GO, or is it all {{csgobranch|2}} games?}}
 
{{Bug|On {{src13|3.1}}, it's been observed to cause issues when used in scenes with [[expensive]] [[water]], causing flickering and tears or disappearing of the water itself. It is advised to stick to the more stable {{code|Eyes}} shader, unless you're sure you can avoid these issues.}}
== Shader Parameters ==
== Shader Parameters ==
{{MatParam|$iris|texture|The texture for the iris. The alpha channel controls the noisiness of the cornea.}}
{{MatParam|$iris|texture|The texture for the iris. The alpha channel controls the noisiness of the cornea.}}

Revision as of 13:16, 20 July 2024

English (en)Translate (Translate)
Eyerefract.jpg
This article is about the shader. For the preceding shader, see Eyes.  For the QC property of $model, see Eyeball./ For the tool, see qc_eyes.

EyeRefract is a Vertex shader available in all Source Source games since Source 2007 Source 2007. This shader is a successor to the Eyes shader from Source 2004. Like it, EyeRefract is used to create life-like eyes, with more realistic shading, cornea parallax, and a wider set of supported effects than Eyes.

Icon-Bug.pngBug:Although this shader has support for $emissiveblend, it is not fully implemented and does not work properly.  [todo tested in ?]
Icon-Bug.pngBug:The shader doesn't work in Counter-Strike: Global Offensive Counter-Strike: Global Offensive, where eyes are always directed to the map's center. Standard models use static eyes.  [todo tested in ?]
Confirm:is this just CS:GO, or is it all CS:GO engine branch CS:GO engine branch games?
Icon-Bug.pngBug:On Source 2013, it's been observed to cause issues when used in scenes with expensive water, causing flickering and tears or disappearing of the water itself. It is advised to stick to the more stable Eyes shader, unless you're sure you can avoid these issues.  [todo tested in ?]

Shader Parameters

$iris $irisframe $corneatexture $corneabumpstrength $parallaxstrength $dilation $lightwarptexture $envmap $glossiness $ambientoccltexture $ambientocclcolor $ambientocclusion $halflambert $raytracesphere $spheretexkillcombo $eyeballradius

Other Parameters

$eyeorigin $irisu $irisv $intro $warpparam $entityorigin

Todo: Include cloak parameters in here?
Todo: Can this shader be used outside of a model with qc eyes, by using proxies (or in SFM override materials) to modify these shader values?