$phong: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
Line 26: Line 26:
; <code>$bumpmap <texture></code>
; <code>$bumpmap <texture></code>
: See <code>[[$bumpmap]]</code>. Its [[alpha channel]] acts as a Phong mask.
: See <code>[[$bumpmap]]</code>. Its [[alpha channel]] acts as a Phong mask.
; <code>$basemapluminancephongmask <1/0></code>
{{stub}}
;<code>$basemapalphaphongmask <1/0></code>
;<code>$basemapalphaphongmask <1/0></code>
: Enable this if the Phong mask is in the <code>[[$basetexture]]</code> [[alpha channel]].
: Enable this if the Phong mask is in the <code>[[$basetexture]]</code> [[alpha channel]].

Revision as of 11:25, 7 December 2010

Phong shading provides Alyx's skin, hairband and lip highlights.

The $phong VMT command provides diffuse reflections. For a full explanation, see Phong materials.

Note.pngNote:Phong shading is only available with VertexLitGeneric.

VMT syntax

$phong <bool>

The Phong shader should use the default values for any configuration parameters that you omit from your material. However it appears that this doesn't happen. Therefore all of the below parameters are required, even if they stay on their default values.

VertexLitGeneric
{
	$phong			1

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

Additional parameters

$bumpmap <texture>
See $bumpmap. Its alpha channel acts as a Phong mask.
$basemapluminancephongmask <1/0>

Stub

This article or section is a stub. You can help by expanding it.

$basemapalphaphongmask <1/0>
Enable this if the Phong mask is in the $basetexture alpha channel.
$phongexponent <int>
$phongexponenttexture <texture>
See Phong mask and exponent texture. The texture value is overridden by the numeric value if both are present.
$phongboost <int>
Phong overbrightening factor. The phong mask channel should be authored to account for this.
$phongtint "[<red float> <green float> <blue float>]"
Modifies the colour of the phong reflection. "[0 0 0]" means the feature is disabled.
$phongfresnelranges <matrix>
See Phong Fresnel ranges. Default is "[0 0.5 1]".
$phongwarptexture <texture> Template:EP2 add
Used to create an iridescence effect, as seen on npc_hunters.
Todo: Needs documentation.
$phongalbedotint <?>
Allow the albedo (i.e. $basetexture) to affect the colour tint of the Phong highlight? Possibly related to the green channel of the Phong exponent mask. Seen in some Day of Defeat: Source player model VMTs.
Todo: Needs documentation.
$ambientocclusiontexture <texture>
A "dirtmap". Mentioned in the SDK samples and seen in the VMT for Alyx's face. Ambient Occlusion is generally used for the eyes and face.
"GPU>=2?$phong" 1
(Use with $phong 0) Only uses phong if the current PC is using dual GPUs.
Todo: Check if correct, it may be wrong

See also