$rimlight: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
m (added language bar.)
(Add warning about Left 4 Dead unnoticeable effect with a workaround.)
Line 2: Line 2:
[[Image:Heavy_rim.jpg|thumb|200px|Example of rim lighting in use on the TF2 Heavy.]]
[[Image:Heavy_rim.jpg|thumb|200px|Example of rim lighting in use on the TF2 Heavy.]]


{{Shaderparam|$rimlight|since=Source 2007|shader1=VertexLitGeneric}} It adds a constant rim light to the model that appears to come indirectly from the environment. The color of the rim light is directly influenced by [[ambient light]].
{{Shaderparam|$rimlight|since=Source 2007|shader1=VertexLitGeneric}} It adds a constant rim light to the model that appears to come indirectly from the environment. The color of the rim light is directly influenced by [[ambient light]] and behave closer to [[$phong#Brightness|$phongfresnelranges]] [[vector|Z component]].
{{note|Requires {{ent|$phong}} to be set to 1.}}
{{note|Requires {{ent|$phong}} to be set to 1.}}
: {{TODO|Explain similarities and differences of [[Phong materials#Phong Fresnel ranges|Phong Fresnel ranges]].}}
: {{TODO|Explain similarities and differences of [[Phong materials#Phong Fresnel ranges|Phong Fresnel ranges]].}}
: {{warning|{{l4ds}} Features no visible effect. however, you can increase [[$phong#Brightness|$phongfresnelranges]] Z vector to archive a closer effect.}}


==VMT syntax==
==VMT syntax==
Line 14: Line 15:
  [[$phong]] 1
  [[$phong]] 1
   
   
  [[$bumpmap]] <texture>
  [[$bumpmap]] <[[texture]]>
  $phongexponent 5
  [[$phong#Masking|$phongexponent]] 5
  $phongexponenttexture <texture>
  [[$phong#Masking|$phongexponenttexture]] <[[texture]]>
  $phongboost 1.0
  [[$phong#Brightness|$phongboost]] 1.0
  $phongfresnelranges "[0 0.5 1]"
  [[$phong#Brightness|$phongfresnelranges]] "[[vector|[0 0.5 1]]]"
   
   
  $rimlight              1
  $rimlight              1
Line 27: Line 28:
== Additional Parameters ==
== Additional Parameters ==
{{MatParam|$rimlightexponent|int|Exponent for phong component of rim lighting. The rim exponent defines the "tightness" of the highlight. A higher exponent results in a smaller, tighter highlight while a lower exponent results in a broader flatter one. {{bug|Appears to have no effect in HLMV.}}}}
{{MatParam|$rimlightexponent|int|Exponent for phong component of rim lighting. The rim exponent defines the "tightness" of the highlight. A higher exponent results in a smaller, tighter highlight while a lower exponent results in a broader flatter one. {{bug|Appears to have no effect in HLMV.}}}}
{{MatParam|$rimlightboost|float|Boost for ambient cube component of rim lighting.}}
{{MatParam|$rimlightboost|float|Additive boost for ambient cube component of rim lighting.}}
{{MatParam|$rimmask|bool|Uses the alpha channel of the <code>$phongexponenttexture</code> to mask rimlighting.}}
{{MatParam|$rimmask|bool|Uses the alpha channel of the <code>$phongexponenttexture</code> to mask rimlighting.}}
{{MatParam|$phongtint|RGB matrix|By default the rim light is white, This will tint both, phong and rim lighting. See [[$phong#Colors|Phong]] for more.}}
{{MatParam|$phongtint|RGB matrix|By default the rim light is white, This will tint both, phong and rim lighting. See [[$phong#Colors|Phong]] for more.}}

Revision as of 22:14, 17 March 2023

English (en)中文 (zh)Translate (Translate)
Example of rim lighting in use on the TF2 Heavy.

Template:Shaderparam It adds a constant rim light to the model that appears to come indirectly from the environment. The color of the rim light is directly influenced by ambient light and behave closer to $phongfresnelranges Z component.

Note.pngNote:Requires $phong to be set to 1.
Todo: Explain similarities and differences of Phong Fresnel ranges.
Warning.pngWarning:Left 4 Dead seriesLeft 4 Dead series Features no visible effect. however, you can increase $phongfresnelranges Z vector to archive a closer effect.

VMT syntax

$rimlight <bool>
 VertexLitGeneric
{
	$phong			1

	$bumpmap		<texture>
	$phongexponent		5		
	$phongexponenttexture	<texture>	
	$phongboost		1.0
	$phongfresnelranges	"[0 0.5 1]"

	$rimlight               1
	$rimlightexponent       2
	$rimlightboost          .2			
}

Additional Parameters

$rimlightexponent $rimlightboost $rimmask $phongtint

See Also