Zh/$phong: Difference between revisions
< Zh
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
{{Language subpage|title=冯氏反射}}[[Category:List of Shader Parameters|P]][[Category:VMT Lighting]] | {{Language subpage|title=冯氏反射}}[[Category:List of Shader Parameters|P]][[Category:VMT Lighting]] | ||
[[File:Alyx phong closeup.jpg|thumb|200px| | [[File:Alyx phong closeup.jpg|thumb|200px|冯氏着色器为爱莉克斯的皮肤、发带和嘴唇提供了高光。]] | ||
{{Shaderparam|$phong|since=Source 2006|shader1=VertexLitGeneric|shader2=LightmappedGeneric|shader3=WorldVertexTransition}} | {{Shaderparam|$phong|since=Source 2006|shader1=VertexLitGeneric|shader2=LightmappedGeneric|shader3=WorldVertexTransition}} 它提供低强度的 [[Wikipedia:Diffuse_reflection|漫反射]] 和顶点强度的 [[Wikipedia:Specular_highlights|镜面高光]],由控制每个纹素强度的纹理遮罩。有关完整解释,请参见 [[Phong materials|冯氏材质]]。 | ||
{{Note| | {{Note|<code>LightmappedGeneric</code> 和 <code>WorldVertexTransition</code> 的冯氏着色功能只在 {{csgobranch|4}} 中可用。It requires the material to be lit by the sunlight from a {{ent|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| | {{Note|在{{mapbase|4}}中也提供了 <code>LightmappedGeneric</code> 的冯氏着色功能,但实现方式有所不同。}} | ||
== 语法 == | == 语法 == | ||
Line 16: | Line 16: | ||
$phong 1 | $phong 1 | ||
$bumpmap [ | $bumpmap [贴图] | ||
$phongexponent 5 // either/or | $phongexponent 5 // either/or | ||
$phongexponenttexture [ | $phongexponenttexture [贴图] // either/or | ||
$phongboost 1.0 | $phongboost 1.0 | ||
$phongfresnelranges "[0 0.5 1]" | $phongfresnelranges "[0 0.5 1]" |
Revision as of 04:29, 25 April 2023
Template:Shaderparam 它提供低强度的 漫反射 和顶点强度的 镜面高光,由控制每个纹素强度的纹理遮罩。有关完整解释,请参见 冯氏材质。

LightmappedGeneric
和 WorldVertexTransition
的冯氏着色功能只在 


LightmappedGeneric
的冯氏着色功能,但实现方式有所不同。语法
$phong <bool>


- 待完善: Other games that don't require all phong parameters present (likely Portal 2 and up)
VertexLitGeneric
{
$phong 1
$bumpmap [贴图]
$phongexponent 5 // either/or
$phongexponenttexture [贴图] // either/or
$phongboost 1.0
$phongfresnelranges "[0 0.5 1]"
}
参数
蒙版

- Using $selfillumfresnel without $normalmapalphaenvmapmask will mask the $envmap using the $basetexture's alpha channel.
- Using $selfillumfresnel with $normalmapalphaenvmapmask will multiply the $envmap by
0.0f
. Effectively disabling the effect! - When not using $selfillumfresnel. The mask used for $envmap will be the $basetexture's alpha channel unless $normalmapalphaenvmapmask is also used.
- If $normalmapalphaenvmapmask is used, the $bumpmap's alpha channel will be used for Phong masking. Using either
$basemapalphaphongmask
or$basemapluminancephongmask
will override it.
$bumpmap
$basemapalphaphongmask
$basemapluminancephongmask
$phongexponent
$phongexponenttexture
$phongexponentfactor
$invertphongmask
$forcephong
$diffuseexp
$shinyblood
$shinybloodexponent
亮度
$phongboost
$phongfresnelranges
$phongdisablehalflambert
色彩
$phongalbedotint
$phongalbedoboost

Brush phong in
反恐精英:全球攻势 using tile/hr_t/inferno/tile_a. Note the complete absence of the reflection in the shaded area.

笔刷/固体着色器参数(仅存在于
之中)
$phongmaskcontrastbrightness
$phongamount
$phongbasetint
控制台命令
- mat_phong <布尔值 >
- 禁用或启用冯氏反射渲染。默认为 1。