这篇条目有关 Source引擎。如需详情,点击这里。

$phong

From Valve Developer Community
< Zh
Revision as of 10:40, 19 March 2025 by Nescius (talk | contribs)
Jump to navigation Jump to search
English (en)Español (es)Русский (ru)中文 (zh)Translate (Translate)

$phong是一个用于着色器 VertexLitGeneric材质(en)着色器(en)参数,可在所有的 起源 起源 游戏,自从 起源2006 起源2006 以来中使用。

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

此参数同样适用于 LightmappedGenericWorldVertexTransition shaders,并在所有 反恐精英:全球攻势 反恐精英:全球攻势 及以后的游戏中可用(也存在于 Garry's ModXengineMapbase 之中)。它通过一个纹理控制每个 texel 的强度,提供了 Wikipedia icon diffuse reflection 的低强度反射以及 Wikipedia icon specular highlight 的峰值高光。详细说明请参见 Phong materials

Note.png注意:LightmappedGenericWorldVertexTransition 的 Phong 着色仅在 CS:GO 引擎分支地层起源 中可用。它要求材质由 env_cascade_light 实体的阳光照亮才能正常工作,并使用由其生成的动态阴影作为传统 phong 遮罩之上的额外遮罩。((存在于自 地层起源 以来) env_projectedtexture 也会影响启用 phong 的刷子)
Icon-Bug.png错误*:Garry's Mod Garry's Modenv_sun 读取刷子 Phong 的光照方向;在有多个太阳的地图中,刷子上的 Phong 反射可能不准确。
Note.png注意:LightmappedGeneric 的 Phong 着色在 Mapbase Mapbase 中同样可用,但其实现方式有所不同。


$phong <bool>
Note.png注意:以下参数必须全部在材质中指定,Phong阴影才能正常工作,除非在Insurgency Insurgency中。
待完善: 记录其他不需要所有Phong参数的游戏(可能包括Portal 2及其更高版本)。
VertexLitGeneric
{
	$phong 1

	$bumpmap				[texture]            // 表面的法线贴图
	$phongexponent			5                   // Phong指数值(任选其一)
	$phongexponenttexture	[texture]            // 控制Phong指数的纹理(任选其一)
	$phongboost				1.0                 // 高光强度的倍增系数
	$phongfresnelranges		"[0 0.5 1]"         // 控制反射强度的菲涅耳范围设置
}

遮罩

Warning.png警告:在使用$phong时,$normalmapalphaenvmapmask$selfillumfresnel存在一些注意事项!


$bumpmap $basemapalphaphongmask $basemapluminancephongmask $phongexponent $phongexponenttexture $phongexponentfactor $invertphongmask $forcephong $diffuseexp $shinyblood $shinybloodexponent

亮度

$phongboost $phongfresnelranges $phongdisablehalflambert


颜色

$phongalbedotint

一个展示AlbedoTint效果的模型示例。

$phongalbedoboost

Hunter模型在使用$phongwarptexture前后的对比,展示其对Phong反射的影响。

$phongtint

$phongwarptexture的坐标分解:计算的坐标、纹理和结果。

$phongwarptexture

反恐精英:全球攻势 反恐精英:全球攻势中使用tile/hr_t/inferno/tile_a的刷子Phong效果。注意阴影区域完全缺乏反射。


刷子着色器参数

(存在于 CS:GO 引擎分支 之中)(也存在于 Garry's Mod 之中)

$phongmaskcontrastbrightness $phongamount $phongbasetint

控制命令

控制台变量/命令 参数或默认值 描述符 效果
mat_phong bool 禁用或启用Phong阴影。默认值为1。

另请参阅

外部链接