$phong: Difference between revisions
Jump to navigation
Jump to search
Note:Phong shading for
. It requires the material to be lit by a env_cascade_light entity to work properly, and uses the dynamic shadows generated by it as a mask on top of the traditional phong masking.
Note:All parameters in the following example must be specified in the material, otherwise Phong shading won't show up at all, except in
.
m (Marked $phongexponenttexture as 2013MP only) |
(Started using Template:Src13mp; $phongexponenttexture isn't 2013 MP-exclusive. It's in the Alien Swarm SDK and Alyx in HL2 uses it all the time) |
||
Line 36: | Line 36: | ||
:* '''Blue channel:''' Nothing. | :* '''Blue channel:''' Nothing. | ||
:* '''Alpha channel:''' {{ent|$rimlight}} mask (only if <code>$rimmask 1</code>.) | :* '''Alpha channel:''' {{ent|$rimlight}} mask (only if <code>$rimmask 1</code>.) | ||
:{{Note|<code>LightmappedGeneric</code> and <code>WorldVertexTransition</code> do not have support for <code>$phongexponenttexture</code>. You must use <code>$phongexponent</code> instead.}} | :{{Note|<code>LightmappedGeneric</code> and <code>WorldVertexTransition</code> do not have support for <code>$phongexponenttexture</code>. You must use <code>$phongexponent</code> instead.}}|shaders=VertexLitGeneric}} | ||
{{MatParam|$phongexponentfactor|int|Multiply the exponent texture by this amount.|only={{ | {{MatParam|$phongexponentfactor|int|Multiply the exponent texture by this amount.|only={{src13mp}}|shaders=VertexLitGeneric}} | ||
{{MatParam|$invertphongmask|bool|Invert the value of the phong mask. {{todo|What types of mask does this work on?}}|since={{src07}}|shaders=VertexLitGeneric}} | {{MatParam|$invertphongmask|bool|Invert the value of the phong mask. {{todo|What types of mask does this work on?}}|since={{src07}}|shaders=VertexLitGeneric}} | ||
{{MatParam|$forcephong|bool|Force phong shading on phong materials even at low GPU levels. This requires the convar <code>mat_phong</code> to be set to 1, otherwise it won't work.{{confirm}}|since={{l4d}}|shaders=VertexLitGeneric}} | {{MatParam|$forcephong|bool|Force phong shading on phong materials even at low GPU levels. This requires the convar <code>mat_phong</code> to be set to 1, otherwise it won't work.{{confirm}}|since={{l4d}}|shaders=VertexLitGeneric}} |
Revision as of 06:34, 14 May 2020
Template:Shaderparam It provides diffuse reflections, masked by a texture to control its intensity per-texel. For a full explanation, see Phong materials.

LightmappedGeneric
and WorldVertexTransition
is only available in 
Syntax
$phong <bool>


- Todo: Other games that don't require all phong parameters present (likely Portal 2 and up)
VertexLitGeneric
{
$phong 1
$bumpmap [texture]
$phongexponent 5 // either/or
$phongexponenttexture [texture] // either/or
$phongboost 1.0
$phongfresnelranges "[0 0.5 1]"
}
Parameters
Masking
$bumpmap
$basemapalphaphongmask
$basemapluminancephongmask
$phongexponent
$phongexponenttexture
$phongexponentfactor
$invertphongmask
$forcephong
$diffuseexp
$shinyblood
$shinybloodexponent
Brightness
$phongboost
$phongfresnelranges
$phongdisablehalflambert
Colors
$phongalbedotint
$phongalbedoboost
Brush Shader Parameters
$phongmaskcontrastbrightness
$phongamount
$phongbasetint
Console Commands
- mat_phong <boolean >
- Disable or enable phong shading. Default 1.
See also
- Phong materials
- $envmap (environment map)
- $lightwarptexture
- $rimlight