Zh/$envmap: Difference between revisions
Thunder4ik (talk | contribs) m (Исправление некорректных Unicode-символов) |
(Undo revision 394835 by Thunder4ik (talk)) Tag: Undo |
||
Line 2: | Line 2: | ||
[[File:Specular.jpg|thumb|250px|镜面反射]] | [[File:Specular.jpg|thumb|250px|镜面反射]] | ||
'''<code>$envmap</code>''' 是一个所有起源引擎游戏都可以使用的[[Material|材质]][[Shader|着色器]]参数。可以在光滑的表面产生[[wikipedia:specular reflection|镜面反射]] | '''<code>$envmap</code>''' 是一个所有起源引擎游戏都可以使用的[[Material|材质]][[Shader|着色器]]参数。可以在光滑的表面产生[[wikipedia:specular reflection|镜面反射]]。镜面反射是通过定义一张「环境反射图」(具体而言是[[cubemap|反射球]])来实现的;反射通常由最近的{{ent|env_cubemap}}实体决定。反射不是动态的。 | ||
起源引擎所支持的另一种反射为[[$phong|冯氏反射]]. | 起源引擎所支持的另一种反射为[[$phong|冯氏反射]]. | ||
Line 11: | Line 11: | ||
</pre> | </pre> | ||
「env_cubemap」最为常用。当地图编译时,它将通知[[VBSP]]选择最近的{{ent|env_cubemap}}实体。你也可以使用一个手动创建的静态反射图像充当反射。 | |||
{{note|大多数反射材质在作为覆盖或印花材质时将不会呈现反射。原因不明。}} | {{note|大多数反射材质在作为覆盖或印花材质时将不会呈现反射。原因不明。}} | ||
Line 17: | Line 17: | ||
== 创建一个自定义静态反射材质 == | == 创建一个自定义静态反射材质 == | ||
有些情况下会用到自定义的反射材质,一些V社的模型中也有所使用。 | |||
=== 在VTFLib中的使用方法 === | === 在VTFLib中的使用方法 === | ||
为了使反射球运行,你需要六个面的独立的纹理,且方向要正确,才能在起源引擎中正常显示。所以有些面要进行顺/逆时针旋转。在定向前每个面都要进行水平镜像。 | |||
{{note|{{Game link|Alien Swarm}} | {{note|{{Game link|Alien Swarm}}之前的游戏需要7个面才能使反射球运行。第七个面是一张圆形的纹理,用于<code>$envmapsphere</code>参数。}} | ||
'''这里是所需要的方向''' | '''这里是所需要的方向''' | ||
Line 46: | Line 46: | ||
http://i1.tietuku.com/8bdf7cc939de44cc.png {{todo|修复图片链接}} | http://i1.tietuku.com/8bdf7cc939de44cc.png {{todo|修复图片链接}} | ||
一旦你准备好了所有方向的图片,你便可以将他们放入VTFEDIT中,并选择"Environmetal Map" | |||
http://i1.tietuku.com/421b61f2f977ef35.jpg {{todo|修复图片链接}} | http://i1.tietuku.com/421b61f2f977ef35.jpg {{todo|修复图片链接}} | ||
然后将他们保存为VTF格式,并在你的VMT文件中输入以下内容: | |||
<pre> | <pre> | ||
Line 58: | Line 58: | ||
=== 在VTEX中的使用方法 === | === 在VTEX中的使用方法 === | ||
[[Vtex (Source 1)|Vtex]] | [[Vtex (Source 1)|Vtex]]会自动反射并纠正贴图面的方向,你只需要提供正确的材质名称。每个文件名大概像这样:envmap001a*.tga, 你应将*替换为 '''BK, FT, LF, RT, UP, 或 DN'''。如果你在游戏中截取到了反射截图,那么本步骤就完成了,但为了使他们能在Vtex上正常工作,你必须使用HDRshop(但在此之前你应该将材质格式转换为BMP,因为HDRshop只能识别这种格式)并将他们转换为PFM格式。 | ||
{{todo| | {{todo|(回忆)每个方向对应的轴线是什么?}} | ||
http://i.imgur.com/pa7lnGk.jpg | http://i.imgur.com/pa7lnGk.jpg | ||
创建一个和你的材质名相同的文本(示范:envmap001a.txt)。若你要渲染HDR,请输入以下内容,否则请留空: | |||
<code>'''pfm 1'''<br /></code> | <code>'''pfm 1'''<br /></code> | ||
Line 70: | Line 70: | ||
<code>'''nocompress 1'''<br /></code> | <code>'''nocompress 1'''<br /></code> | ||
将这些文件放入materialsrc(文件夹)并拖拽TXT文件到vtex.exe中,然后你便能得到一个正常工作的反射贴图。HDR环境贴图的名字将会像envmap001a.hdr.vtf这样, 并依赖其工作。 | |||
== 参数与效果 == | == 参数与效果 == | ||
{{MatParam:zh-cn|$envmapmask|纹理|见{{ent|$envmapmask}}。一个决定每个[[texel|纹理元素]]反射率的[[VTF]]纹理。}} | {{MatParam:zh-cn|$envmapmask|纹理|见{{ent|$envmapmask}}。一个决定每个[[texel|纹理元素]]反射率的[[VTF]]纹理。}} | ||
{{MatParam:zh-cn|$envmaptint|RGB矩阵|控制反射率的[[RGB|红、绿、蓝]]通道。任何正数皆可使用。默认值为 <code>"[1 1 1]"</code> | {{MatParam:zh-cn|$envmaptint|RGB矩阵|控制反射率的[[RGB|红、绿、蓝]]通道。任何正数皆可使用。默认值为 <code>"[1 1 1]"</code>,即100%强度。}} | ||
{{note|你''必须'' | {{note|你''必须''使用引号,因为值中含有空格。}} | ||
{{tip|这条命令常被用于降低镜面反射的亮度而无需修改<code>$envmapmask</code>。}} | {{tip|这条命令常被用于降低镜面反射的亮度而无需修改<code>$envmapmask</code>。}} | ||
{{MatParam:zh-cn|$envmapcontrast|单位浮点|控制反射的[[Wikipedia:Contrast (vision)|对比度]] | {{MatParam:zh-cn|$envmapcontrast|单位浮点|控制反射的[[Wikipedia:Contrast (vision)|对比度]]。0为自然对比度,1是完全平方的对比度(即颜色×颜色)。}} | ||
{{tip| | {{tip|使用高对比度能减少相对黑暗的区域,并增加「热点」。}} | ||
{{note|使用[[Phong|冯氏]]的时候本命令无效。}} | {{note|使用[[Phong|冯氏]]的时候本命令无效。}} | ||
{{MatParam:zh-cn|$envmapsaturation|单位浮点| | {{MatParam:zh-cn|$envmapsaturation|单位浮点|控制反射的饱和度。0为灰阶,1是自然饱和度。}} | ||
{{note|对模型使用[[Phong|冯氏]]的时候本命令无效。}} | {{note|对模型使用[[Phong|冯氏]]的时候本命令无效。}} | ||
{{MatParam:zh-cn|$envmapframe|整数|动态反射的起始帧。}} | {{MatParam:zh-cn|$envmapframe|整数|动态反射的起始帧。}} | ||
{{MatParam:zh-cn|$envmapmode|整数|MATERIAL_VAR_ENVMAPMODE = (1 << 25)|deprecated=1}} | {{MatParam:zh-cn|$envmapmode|整数|MATERIAL_VAR_ENVMAPMODE = (1 << 25)|deprecated=1}} | ||
{{MatParam:zh-cn|$basetexturenoenvmap|and=$basetexture2noenvmap|布尔值|用于双[[albedo|漫反射图]] | {{MatParam:zh-cn|$basetexturenoenvmap|and=$basetexture2noenvmap|布尔值|用于双[[albedo|漫反射图]]的材质,使其中一个不反射。参见{{ent|$basetexture}}和{{ent|$basetexture2}}</code>。|dx9=1}} | ||
{{MatParam:zh-cn|$envmapoptional|选项|选择进行渲染的最老的[[DirectX Version|DirectX版本]] | {{MatParam:zh-cn|$envmapoptional|选项|选择进行渲染的最老的[[DirectX Version|DirectX版本]]。选项有: | ||
*<code>80</code> | *<code>80</code> (DirectX 8) | ||
*<code>81</code> | *<code>81</code> (DirectX 8.1) | ||
*<code>90</code> | *<code>90</code> (DirectX 9) | ||
*<code>95</code> | *<code>95</code> (DirectX 9使用Shader Model 3)}} | ||
{{MatParam:zh-cn|$envmapsphere|布尔值| | {{MatParam:zh-cn|$envmapsphere|布尔值|决定一个材质的反射是否为反射球(spheremap)而不是反射方块(cubemap)。设置为1则使用反射球。{{As}}以后无效。|deprecated=1}} | ||
{{MatParam:zh-cn|$fresnelreflection|浮点| | {{MatParam:zh-cn|$fresnelreflection|浮点|添加菲涅尔效应。0为关闭,1为全开。高于1.0的值会使效果倍增。|since=EP1|dx9=1}} | ||
{{note|只能用于<code>LightmappedGeneric</code>和<code>WorldVertexTransition</code>。}} | {{note|只能用于<code>LightmappedGeneric</code>和<code>WorldVertexTransition</code>。}} | ||
{{MatParam:zh-cn|$envmapfresnel|浮点|同<code>$fresnelreflection</code> | {{MatParam:zh-cn|$envmapfresnel|浮点|同<code>$fresnelreflection</code>,用于<code>VertexLitGeneric</code>。|since=EP2|dx9=1}} | ||
{{MatParam:zh-cn|$envmaplightscale|浮点|允许表面的光影贴图被用作反射的附加遮罩。0-1的数值决定了遮罩程度; | {{MatParam:zh-cn|$envmaplightscale|浮点|允许表面的光影贴图被用作反射的附加遮罩。0-1的数值决定了遮罩程度; 高于1的值也可以,但似乎会造成相反的影响。|since=CSGO}} | ||
{{MatParam:zh-cn|$envmapanisotropy|布尔值| | {{MatParam:zh-cn|$envmapanisotropy|布尔值|扭曲反射,把顶部「推」向下。|since=CSGO}} | ||
{{MatParam:zh-cn|$envmapanisotropyscale|单位浮点|扭曲反射的量。|since=CSGO}} | {{MatParam:zh-cn|$envmapanisotropyscale|单位浮点|扭曲反射的量。|since=CSGO}} | ||
Line 102: | Line 102: | ||
<code>[[buildcubemaps]]</code> | <code>[[buildcubemaps]]</code> | ||
: | :为材质创建反射。如何不运行这一命令,则会直接反射天空或显示错误材质,在EP1中为白色,在多人游戏中为紫黑格子。 | ||
<code>r_showenvcubemap <布尔值></code> | <code>r_showenvcubemap <布尔值></code> | ||
:一个展示所有动态物体在高强度反射下的状态的命令。本文开头的图片就是使用这一命令得到的。 | :一个展示所有动态物体在高强度反射下的状态的命令。本文开头的图片就是使用这一命令得到的。 | ||
Line 108: | Line 108: | ||
== 参见 == | == 参见 == | ||
* [[$envmapmask]] | * [[$envmapmask]](镜面反射遮罩) | ||
* [[$phong]] | * [[$phong]](漫反射) | ||
* [[Cubemap]] | * [[Cubemap]] | ||
[[Category:List of Shader Parameters:zh-cn]] | [[Category:List of Shader Parameters:zh-cn]] | ||
[[Category:VMT Reflections:zh-cn]] | [[Category:VMT Reflections:zh-cn]] |
Revision as of 10:11, 7 April 2024
$envmap
是一个所有起源引擎游戏都可以使用的材质着色器参数。可以在光滑的表面产生镜面反射。镜面反射是通过定义一张「环境反射图」(具体而言是反射球)来实现的;反射通常由最近的env_cubemap实体决定。反射不是动态的。
起源引擎所支持的另一种反射为冯氏反射.
语法
$envmap env_cubemap
「env_cubemap」最为常用。当地图编译时,它将通知VBSP选择最近的env_cubemap实体。你也可以使用一个手动创建的静态反射图像充当反射。

创建一个自定义静态反射材质
有些情况下会用到自定义的反射材质,一些V社的模型中也有所使用。
在VTFLib中的使用方法
为了使反射球运行,你需要六个面的独立的纹理,且方向要正确,才能在起源引擎中正常显示。所以有些面要进行顺/逆时针旋转。在定向前每个面都要进行水平镜像。


$envmapsphere
参数。这里是所需要的方向
注释
- FT=正面
- BK=背面
- RT=右
- LF-左
- UP=上
- DN=下
- CW = 顺时针
- CCW = 逆时针
- 00_00_00 示范. (customcubemap_00_00_00.tga)
- 00_01_00 示范. (customcubemap_00_01_00.tga)
- 00_02_00 示范. (customcubemap_00_02_00.tga)
http://i1.tietuku.com/8bdf7cc939de44cc.png
一旦你准备好了所有方向的图片,你便可以将他们放入VTFEDIT中,并选择"Environmetal Map"
http://i1.tietuku.com/421b61f2f977ef35.jpg
然后将他们保存为VTF格式,并在你的VMT文件中输入以下内容:
"$Envmap" "models/cra0kalo/ct_swat/eyeglint_cubemap" // Reflection environment map static
在VTEX中的使用方法
Vtex会自动反射并纠正贴图面的方向,你只需要提供正确的材质名称。每个文件名大概像这样:envmap001a*.tga, 你应将*替换为 BK, FT, LF, RT, UP, 或 DN。如果你在游戏中截取到了反射截图,那么本步骤就完成了,但为了使他们能在Vtex上正常工作,你必须使用HDRshop(但在此之前你应该将材质格式转换为BMP,因为HDRshop只能识别这种格式)并将他们转换为PFM格式。
http://i.imgur.com/pa7lnGk.jpg
创建一个和你的材质名相同的文本(示范:envmap001a.txt)。若你要渲染HDR,请输入以下内容,否则请留空:
pfm 1
pfmscale 1
nocompress 1
将这些文件放入materialsrc(文件夹)并拖拽TXT文件到vtex.exe中,然后你便能得到一个正常工作的反射贴图。HDR环境贴图的名字将会像envmap001a.hdr.vtf这样, 并依赖其工作。
参数与效果
基本用法
{[MatParamDef|名称|变量类型|描述}}

预设的参数
参数 | 描述 | 例子 | 预览 |
---|---|---|---|
deprecated |
该材质参数已作废,不宜继续使用。 | {[MatParamDef|I'm deprecated|text=布尔值|真的,不要再用我啦!|deprecated=1}} |
布尔值 |
since |
该材质参数自该游戏起可以使用。它使用了模板{{<game> add}}。 | {{MatParamDef|$likealienswarm|text=布尔值|我也可以在Portal 2中使用!|since=AS}} |
布尔值 |
also |
该材质参数在该游戏中也可以使用。它使用了模板{{<game> also}}。 | {{MatParamDef|$likealienswarm|text=布尔值|我也可以在Garry's Mod中使用!|since=AS|also=GMOD}} |
布尔值 |
only |
该材质参数只能在该游戏中使用。它使用了模板{{<game> only}}。 | {{MatParamDef|$lovealienswarm|text=布尔值|我只能在Alien Swarm中使用!|only=AS}} |
布尔值 |
dx9 |
该材质参数要求DX9以上才能运行。 | {[MatParamDef|$dx9parameter||text=布尔值|我要求DX9才能运行!|dx9=1}} |
我要求DX9才能运行! |
dx8 |
该材质参数是给DX8用的,不宜被用于DX9。 | {[MatParamDef|$dx8parameter|text=布尔值|我是一个给DX8用的材质参数!|dx8=1}} |
我是一个给DX8用的材质参数! |
to |
使用这个来定义一系列名字很相似的材质参数。 | {[MatParamDef|$basetexture1|to=$basetexture4|text=纹理|我们有许多……}} |
我们有许多…… |
and |
使用这个来定义两个名字很相似的材质参数。 | {[MatParamDef|$bumpmap|and=$bumpmap2|text=纹理|两张法线贴图。}} |
纹理 |
参见
基本用法
{[MatParamDef|名称|变量类型|描述}}

预设的参数
参数 | 描述 | 例子 | 预览 |
---|---|---|---|
deprecated |
该材质参数已作废,不宜继续使用。 | {[MatParamDef|I'm deprecated|text=布尔值|真的,不要再用我啦!|deprecated=1}} |
布尔值 |
since |
该材质参数自该游戏起可以使用。它使用了模板{{<game> add}}。 | {{MatParamDef|$likealienswarm|text=布尔值|我也可以在Portal 2中使用!|since=AS}} |
布尔值 |
also |
该材质参数在该游戏中也可以使用。它使用了模板{{<game> also}}。 | {{MatParamDef|$likealienswarm|text=布尔值|我也可以在Garry's Mod中使用!|since=AS|also=GMOD}} |
布尔值 |
only |
该材质参数只能在该游戏中使用。它使用了模板{{<game> only}}。 | {{MatParamDef|$lovealienswarm|text=布尔值|我只能在Alien Swarm中使用!|only=AS}} |
布尔值 |
dx9 |
该材质参数要求DX9以上才能运行。 | {[MatParamDef|$dx9parameter||text=布尔值|我要求DX9才能运行!|dx9=1}} |
我要求DX9才能运行! |
dx8 |
该材质参数是给DX8用的,不宜被用于DX9。 | {[MatParamDef|$dx8parameter|text=布尔值|我是一个给DX8用的材质参数!|dx8=1}} |
我是一个给DX8用的材质参数! |
to |
使用这个来定义一系列名字很相似的材质参数。 | {[MatParamDef|$basetexture1|to=$basetexture4|text=纹理|我们有许多……}} |
我们有许多…… |
and |
使用这个来定义两个名字很相似的材质参数。 | {[MatParamDef|$bumpmap|and=$bumpmap2|text=纹理|两张法线贴图。}} |
纹理 |
参见


$envmapmask
。基本用法
{[MatParamDef|名称|变量类型|描述}}

预设的参数
参数 | 描述 | 例子 | 预览 |
---|---|---|---|
deprecated |
该材质参数已作废,不宜继续使用。 | {[MatParamDef|I'm deprecated|text=布尔值|真的,不要再用我啦!|deprecated=1}} |
布尔值 |
since |
该材质参数自该游戏起可以使用。它使用了模板{{<game> add}}。 | {{MatParamDef|$likealienswarm|text=布尔值|我也可以在Portal 2中使用!|since=AS}} |
布尔值 |
also |
该材质参数在该游戏中也可以使用。它使用了模板{{<game> also}}。 | {{MatParamDef|$likealienswarm|text=布尔值|我也可以在Garry's Mod中使用!|since=AS|also=GMOD}} |
布尔值 |
only |
该材质参数只能在该游戏中使用。它使用了模板{{<game> only}}。 | {{MatParamDef|$lovealienswarm|text=布尔值|我只能在Alien Swarm中使用!|only=AS}} |
布尔值 |
dx9 |
该材质参数要求DX9以上才能运行。 | {[MatParamDef|$dx9parameter||text=布尔值|我要求DX9才能运行!|dx9=1}} |
我要求DX9才能运行! |
dx8 |
该材质参数是给DX8用的,不宜被用于DX9。 | {[MatParamDef|$dx8parameter|text=布尔值|我是一个给DX8用的材质参数!|dx8=1}} |
我是一个给DX8用的材质参数! |
to |
使用这个来定义一系列名字很相似的材质参数。 | {[MatParamDef|$basetexture1|to=$basetexture4|text=纹理|我们有许多……}} |
我们有许多…… |
and |
使用这个来定义两个名字很相似的材质参数。 | {[MatParamDef|$bumpmap|and=$bumpmap2|text=纹理|两张法线贴图。}} |
纹理 |
参见


基本用法
{[MatParamDef|名称|变量类型|描述}}

预设的参数
参数 | 描述 | 例子 | 预览 |
---|---|---|---|
deprecated |
该材质参数已作废,不宜继续使用。 | {[MatParamDef|I'm deprecated|text=布尔值|真的,不要再用我啦!|deprecated=1}} |
布尔值 |
since |
该材质参数自该游戏起可以使用。它使用了模板{{<game> add}}。 | {{MatParamDef|$likealienswarm|text=布尔值|我也可以在Portal 2中使用!|since=AS}} |
布尔值 |
also |
该材质参数在该游戏中也可以使用。它使用了模板{{<game> also}}。 | {{MatParamDef|$likealienswarm|text=布尔值|我也可以在Garry's Mod中使用!|since=AS|also=GMOD}} |
布尔值 |
only |
该材质参数只能在该游戏中使用。它使用了模板{{<game> only}}。 | {{MatParamDef|$lovealienswarm|text=布尔值|我只能在Alien Swarm中使用!|only=AS}} |
布尔值 |
dx9 |
该材质参数要求DX9以上才能运行。 | {[MatParamDef|$dx9parameter||text=布尔值|我要求DX9才能运行!|dx9=1}} |
我要求DX9才能运行! |
dx8 |
该材质参数是给DX8用的,不宜被用于DX9。 | {[MatParamDef|$dx8parameter|text=布尔值|我是一个给DX8用的材质参数!|dx8=1}} |
我是一个给DX8用的材质参数! |
to |
使用这个来定义一系列名字很相似的材质参数。 | {[MatParamDef|$basetexture1|to=$basetexture4|text=纹理|我们有许多……}} |
我们有许多…… |
and |
使用这个来定义两个名字很相似的材质参数。 | {[MatParamDef|$bumpmap|and=$bumpmap2|text=纹理|两张法线贴图。}} |
纹理 |
参见

基本用法
{[MatParamDef|名称|变量类型|描述}}

预设的参数
参数 | 描述 | 例子 | 预览 |
---|---|---|---|
deprecated |
该材质参数已作废,不宜继续使用。 | {[MatParamDef|I'm deprecated|text=布尔值|真的,不要再用我啦!|deprecated=1}} |
布尔值 |
since |
该材质参数自该游戏起可以使用。它使用了模板{{<game> add}}。 | {{MatParamDef|$likealienswarm|text=布尔值|我也可以在Portal 2中使用!|since=AS}} |
布尔值 |
also |
该材质参数在该游戏中也可以使用。它使用了模板{{<game> also}}。 | {{MatParamDef|$likealienswarm|text=布尔值|我也可以在Garry's Mod中使用!|since=AS|also=GMOD}} |
布尔值 |
only |
该材质参数只能在该游戏中使用。它使用了模板{{<game> only}}。 | {{MatParamDef|$lovealienswarm|text=布尔值|我只能在Alien Swarm中使用!|only=AS}} |
布尔值 |
dx9 |
该材质参数要求DX9以上才能运行。 | {[MatParamDef|$dx9parameter||text=布尔值|我要求DX9才能运行!|dx9=1}} |
我要求DX9才能运行! |
dx8 |
该材质参数是给DX8用的,不宜被用于DX9。 | {[MatParamDef|$dx8parameter|text=布尔值|我是一个给DX8用的材质参数!|dx8=1}} |
我是一个给DX8用的材质参数! |
to |
使用这个来定义一系列名字很相似的材质参数。 | {[MatParamDef|$basetexture1|to=$basetexture4|text=纹理|我们有许多……}} |
我们有许多…… |
and |
使用这个来定义两个名字很相似的材质参数。 | {[MatParamDef|$bumpmap|and=$bumpmap2|text=纹理|两张法线贴图。}} |
纹理 |
参见
基本用法
{[MatParamDef|名称|变量类型|描述}}

预设的参数
参数 | 描述 | 例子 | 预览 |
---|---|---|---|
deprecated |
该材质参数已作废,不宜继续使用。 | {[MatParamDef|I'm deprecated|text=布尔值|真的,不要再用我啦!|deprecated=1}} |
布尔值 |
since |
该材质参数自该游戏起可以使用。它使用了模板{{<game> add}}。 | {{MatParamDef|$likealienswarm|text=布尔值|我也可以在Portal 2中使用!|since=AS}} |
布尔值 |
also |
该材质参数在该游戏中也可以使用。它使用了模板{{<game> also}}。 | {{MatParamDef|$likealienswarm|text=布尔值|我也可以在Garry's Mod中使用!|since=AS|also=GMOD}} |
布尔值 |
only |
该材质参数只能在该游戏中使用。它使用了模板{{<game> only}}。 | {{MatParamDef|$lovealienswarm|text=布尔值|我只能在Alien Swarm中使用!|only=AS}} |
布尔值 |
dx9 |
该材质参数要求DX9以上才能运行。 | {[MatParamDef|$dx9parameter||text=布尔值|我要求DX9才能运行!|dx9=1}} |
我要求DX9才能运行! |
dx8 |
该材质参数是给DX8用的,不宜被用于DX9。 | {[MatParamDef|$dx8parameter|text=布尔值|我是一个给DX8用的材质参数!|dx8=1}} |
我是一个给DX8用的材质参数! |
to |
使用这个来定义一系列名字很相似的材质参数。 | {[MatParamDef|$basetexture1|to=$basetexture4|text=纹理|我们有许多……}} |
我们有许多…… |
and |
使用这个来定义两个名字很相似的材质参数。 | {[MatParamDef|$bumpmap|and=$bumpmap2|text=纹理|两张法线贴图。}} |
纹理 |
参见
基本用法
{[MatParamDef|名称|变量类型|描述}}

预设的参数
参数 | 描述 | 例子 | 预览 |
---|---|---|---|
deprecated |
该材质参数已作废,不宜继续使用。 | {[MatParamDef|I'm deprecated|text=布尔值|真的,不要再用我啦!|deprecated=1}} |
布尔值 |
since |
该材质参数自该游戏起可以使用。它使用了模板{{<game> add}}。 | {{MatParamDef|$likealienswarm|text=布尔值|我也可以在Portal 2中使用!|since=AS}} |
布尔值 |
also |
该材质参数在该游戏中也可以使用。它使用了模板{{<game> also}}。 | {{MatParamDef|$likealienswarm|text=布尔值|我也可以在Garry's Mod中使用!|since=AS|also=GMOD}} |
布尔值 |
only |
该材质参数只能在该游戏中使用。它使用了模板{{<game> only}}。 | {{MatParamDef|$lovealienswarm|text=布尔值|我只能在Alien Swarm中使用!|only=AS}} |
布尔值 |
dx9 |
该材质参数要求DX9以上才能运行。 | {[MatParamDef|$dx9parameter||text=布尔值|我要求DX9才能运行!|dx9=1}} |
我要求DX9才能运行! |
dx8 |
该材质参数是给DX8用的,不宜被用于DX9。 | {[MatParamDef|$dx8parameter|text=布尔值|我是一个给DX8用的材质参数!|dx8=1}} |
我是一个给DX8用的材质参数! |
to |
使用这个来定义一系列名字很相似的材质参数。 | {[MatParamDef|$basetexture1|to=$basetexture4|text=纹理|我们有许多……}} |
我们有许多…… |
and |
使用这个来定义两个名字很相似的材质参数。 | {[MatParamDef|$bumpmap|and=$bumpmap2|text=纹理|两张法线贴图。}} |
纹理 |
参见
基本用法
{[MatParamDef|名称|变量类型|描述}}

预设的参数
参数 | 描述 | 例子 | 预览 |
---|---|---|---|
deprecated |
该材质参数已作废,不宜继续使用。 | {[MatParamDef|I'm deprecated|text=布尔值|真的,不要再用我啦!|deprecated=1}} |
布尔值 |
since |
该材质参数自该游戏起可以使用。它使用了模板{{<game> add}}。 | {{MatParamDef|$likealienswarm|text=布尔值|我也可以在Portal 2中使用!|since=AS}} |
布尔值 |
also |
该材质参数在该游戏中也可以使用。它使用了模板{{<game> also}}。 | {{MatParamDef|$likealienswarm|text=布尔值|我也可以在Garry's Mod中使用!|since=AS|also=GMOD}} |
布尔值 |
only |
该材质参数只能在该游戏中使用。它使用了模板{{<game> only}}。 | {{MatParamDef|$lovealienswarm|text=布尔值|我只能在Alien Swarm中使用!|only=AS}} |
布尔值 |
dx9 |
该材质参数要求DX9以上才能运行。 | {[MatParamDef|$dx9parameter||text=布尔值|我要求DX9才能运行!|dx9=1}} |
我要求DX9才能运行! |
dx8 |
该材质参数是给DX8用的,不宜被用于DX9。 | {[MatParamDef|$dx8parameter|text=布尔值|我是一个给DX8用的材质参数!|dx8=1}} |
我是一个给DX8用的材质参数! |
to |
使用这个来定义一系列名字很相似的材质参数。 | {[MatParamDef|$basetexture1|to=$basetexture4|text=纹理|我们有许多……}} |
我们有许多…… |
and |
使用这个来定义两个名字很相似的材质参数。 | {[MatParamDef|$bumpmap|and=$bumpmap2|text=纹理|两张法线贴图。}} |
纹理 |
参见
基本用法
{[MatParamDef|名称|变量类型|描述}}

预设的参数
参数 | 描述 | 例子 | 预览 |
---|---|---|---|
deprecated |
该材质参数已作废,不宜继续使用。 | {[MatParamDef|I'm deprecated|text=布尔值|真的,不要再用我啦!|deprecated=1}} |
布尔值 |
since |
该材质参数自该游戏起可以使用。它使用了模板{{<game> add}}。 | {{MatParamDef|$likealienswarm|text=布尔值|我也可以在Portal 2中使用!|since=AS}} |
布尔值 |
also |
该材质参数在该游戏中也可以使用。它使用了模板{{<game> also}}。 | {{MatParamDef|$likealienswarm|text=布尔值|我也可以在Garry's Mod中使用!|since=AS|also=GMOD}} |
布尔值 |
only |
该材质参数只能在该游戏中使用。它使用了模板{{<game> only}}。 | {{MatParamDef|$lovealienswarm|text=布尔值|我只能在Alien Swarm中使用!|only=AS}} |
布尔值 |
dx9 |
该材质参数要求DX9以上才能运行。 | {[MatParamDef|$dx9parameter||text=布尔值|我要求DX9才能运行!|dx9=1}} |
我要求DX9才能运行! |
dx8 |
该材质参数是给DX8用的,不宜被用于DX9。 | {[MatParamDef|$dx8parameter|text=布尔值|我是一个给DX8用的材质参数!|dx8=1}} |
我是一个给DX8用的材质参数! |
to |
使用这个来定义一系列名字很相似的材质参数。 | {[MatParamDef|$basetexture1|to=$basetexture4|text=纹理|我们有许多……}} |
我们有许多…… |
and |
使用这个来定义两个名字很相似的材质参数。 | {[MatParamDef|$bumpmap|and=$bumpmap2|text=纹理|两张法线贴图。}} |
纹理 |
参见
基本用法
{[MatParamDef|名称|变量类型|描述}}

预设的参数
参数 | 描述 | 例子 | 预览 |
---|---|---|---|
deprecated |
该材质参数已作废,不宜继续使用。 | {[MatParamDef|I'm deprecated|text=布尔值|真的,不要再用我啦!|deprecated=1}} |
布尔值 |
since |
该材质参数自该游戏起可以使用。它使用了模板{{<game> add}}。 | {{MatParamDef|$likealienswarm|text=布尔值|我也可以在Portal 2中使用!|since=AS}} |
布尔值 |
also |
该材质参数在该游戏中也可以使用。它使用了模板{{<game> also}}。 | {{MatParamDef|$likealienswarm|text=布尔值|我也可以在Garry's Mod中使用!|since=AS|also=GMOD}} |
布尔值 |
only |
该材质参数只能在该游戏中使用。它使用了模板{{<game> only}}。 | {{MatParamDef|$lovealienswarm|text=布尔值|我只能在Alien Swarm中使用!|only=AS}} |
布尔值 |
dx9 |
该材质参数要求DX9以上才能运行。 | {[MatParamDef|$dx9parameter||text=布尔值|我要求DX9才能运行!|dx9=1}} |
我要求DX9才能运行! |
dx8 |
该材质参数是给DX8用的,不宜被用于DX9。 | {[MatParamDef|$dx8parameter|text=布尔值|我是一个给DX8用的材质参数!|dx8=1}} |
我是一个给DX8用的材质参数! |
to |
使用这个来定义一系列名字很相似的材质参数。 | {[MatParamDef|$basetexture1|to=$basetexture4|text=纹理|我们有许多……}} |
我们有许多…… |
and |
使用这个来定义两个名字很相似的材质参数。 | {[MatParamDef|$bumpmap|and=$bumpmap2|text=纹理|两张法线贴图。}} |
纹理 |
参见

LightmappedGeneric
和WorldVertexTransition
。基本用法
{[MatParamDef|名称|变量类型|描述}}

预设的参数
参数 | 描述 | 例子 | 预览 |
---|---|---|---|
deprecated |
该材质参数已作废,不宜继续使用。 | {[MatParamDef|I'm deprecated|text=布尔值|真的,不要再用我啦!|deprecated=1}} |
布尔值 |
since |
该材质参数自该游戏起可以使用。它使用了模板{{<game> add}}。 | {{MatParamDef|$likealienswarm|text=布尔值|我也可以在Portal 2中使用!|since=AS}} |
布尔值 |
also |
该材质参数在该游戏中也可以使用。它使用了模板{{<game> also}}。 | {{MatParamDef|$likealienswarm|text=布尔值|我也可以在Garry's Mod中使用!|since=AS|also=GMOD}} |
布尔值 |
only |
该材质参数只能在该游戏中使用。它使用了模板{{<game> only}}。 | {{MatParamDef|$lovealienswarm|text=布尔值|我只能在Alien Swarm中使用!|only=AS}} |
布尔值 |
dx9 |
该材质参数要求DX9以上才能运行。 | {[MatParamDef|$dx9parameter||text=布尔值|我要求DX9才能运行!|dx9=1}} |
我要求DX9才能运行! |
dx8 |
该材质参数是给DX8用的,不宜被用于DX9。 | {[MatParamDef|$dx8parameter|text=布尔值|我是一个给DX8用的材质参数!|dx8=1}} |
我是一个给DX8用的材质参数! |
to |
使用这个来定义一系列名字很相似的材质参数。 | {[MatParamDef|$basetexture1|to=$basetexture4|text=纹理|我们有许多……}} |
我们有许多…… |
and |
使用这个来定义两个名字很相似的材质参数。 | {[MatParamDef|$bumpmap|and=$bumpmap2|text=纹理|两张法线贴图。}} |
纹理 |
参见
基本用法
{[MatParamDef|名称|变量类型|描述}}

预设的参数
参数 | 描述 | 例子 | 预览 |
---|---|---|---|
deprecated |
该材质参数已作废,不宜继续使用。 | {[MatParamDef|I'm deprecated|text=布尔值|真的,不要再用我啦!|deprecated=1}} |
布尔值 |
since |
该材质参数自该游戏起可以使用。它使用了模板{{<game> add}}。 | {{MatParamDef|$likealienswarm|text=布尔值|我也可以在Portal 2中使用!|since=AS}} |
布尔值 |
also |
该材质参数在该游戏中也可以使用。它使用了模板{{<game> also}}。 | {{MatParamDef|$likealienswarm|text=布尔值|我也可以在Garry's Mod中使用!|since=AS|also=GMOD}} |
布尔值 |
only |
该材质参数只能在该游戏中使用。它使用了模板{{<game> only}}。 | {{MatParamDef|$lovealienswarm|text=布尔值|我只能在Alien Swarm中使用!|only=AS}} |
布尔值 |
dx9 |
该材质参数要求DX9以上才能运行。 | {[MatParamDef|$dx9parameter||text=布尔值|我要求DX9才能运行!|dx9=1}} |
我要求DX9才能运行! |
dx8 |
该材质参数是给DX8用的,不宜被用于DX9。 | {[MatParamDef|$dx8parameter|text=布尔值|我是一个给DX8用的材质参数!|dx8=1}} |
我是一个给DX8用的材质参数! |
to |
使用这个来定义一系列名字很相似的材质参数。 | {[MatParamDef|$basetexture1|to=$basetexture4|text=纹理|我们有许多……}} |
我们有许多…… |
and |
使用这个来定义两个名字很相似的材质参数。 | {[MatParamDef|$bumpmap|and=$bumpmap2|text=纹理|两张法线贴图。}} |
纹理 |
参见
基本用法
{[MatParamDef|名称|变量类型|描述}}

预设的参数
参数 | 描述 | 例子 | 预览 |
---|---|---|---|
deprecated |
该材质参数已作废,不宜继续使用。 | {[MatParamDef|I'm deprecated|text=布尔值|真的,不要再用我啦!|deprecated=1}} |
布尔值 |
since |
该材质参数自该游戏起可以使用。它使用了模板{{<game> add}}。 | {{MatParamDef|$likealienswarm|text=布尔值|我也可以在Portal 2中使用!|since=AS}} |
布尔值 |
also |
该材质参数在该游戏中也可以使用。它使用了模板{{<game> also}}。 | {{MatParamDef|$likealienswarm|text=布尔值|我也可以在Garry's Mod中使用!|since=AS|also=GMOD}} |
布尔值 |
only |
该材质参数只能在该游戏中使用。它使用了模板{{<game> only}}。 | {{MatParamDef|$lovealienswarm|text=布尔值|我只能在Alien Swarm中使用!|only=AS}} |
布尔值 |
dx9 |
该材质参数要求DX9以上才能运行。 | {[MatParamDef|$dx9parameter||text=布尔值|我要求DX9才能运行!|dx9=1}} |
我要求DX9才能运行! |
dx8 |
该材质参数是给DX8用的,不宜被用于DX9。 | {[MatParamDef|$dx8parameter|text=布尔值|我是一个给DX8用的材质参数!|dx8=1}} |
我是一个给DX8用的材质参数! |
to |
使用这个来定义一系列名字很相似的材质参数。 | {[MatParamDef|$basetexture1|to=$basetexture4|text=纹理|我们有许多……}} |
我们有许多…… |
and |
使用这个来定义两个名字很相似的材质参数。 | {[MatParamDef|$bumpmap|and=$bumpmap2|text=纹理|两张法线贴图。}} |
纹理 |
参见
基本用法
{[MatParamDef|名称|变量类型|描述}}

预设的参数
参数 | 描述 | 例子 | 预览 |
---|---|---|---|
deprecated |
该材质参数已作废,不宜继续使用。 | {[MatParamDef|I'm deprecated|text=布尔值|真的,不要再用我啦!|deprecated=1}} |
布尔值 |
since |
该材质参数自该游戏起可以使用。它使用了模板{{<game> add}}。 | {{MatParamDef|$likealienswarm|text=布尔值|我也可以在Portal 2中使用!|since=AS}} |
布尔值 |
also |
该材质参数在该游戏中也可以使用。它使用了模板{{<game> also}}。 | {{MatParamDef|$likealienswarm|text=布尔值|我也可以在Garry's Mod中使用!|since=AS|also=GMOD}} |
布尔值 |
only |
该材质参数只能在该游戏中使用。它使用了模板{{<game> only}}。 | {{MatParamDef|$lovealienswarm|text=布尔值|我只能在Alien Swarm中使用!|only=AS}} |
布尔值 |
dx9 |
该材质参数要求DX9以上才能运行。 | {[MatParamDef|$dx9parameter||text=布尔值|我要求DX9才能运行!|dx9=1}} |
我要求DX9才能运行! |
dx8 |
该材质参数是给DX8用的,不宜被用于DX9。 | {[MatParamDef|$dx8parameter|text=布尔值|我是一个给DX8用的材质参数!|dx8=1}} |
我是一个给DX8用的材质参数! |
to |
使用这个来定义一系列名字很相似的材质参数。 | {[MatParamDef|$basetexture1|to=$basetexture4|text=纹理|我们有许多……}} |
我们有许多…… |
and |
使用这个来定义两个名字很相似的材质参数。 | {[MatParamDef|$bumpmap|and=$bumpmap2|text=纹理|两张法线贴图。}} |
纹理 |
参见
控制台命令
- 为材质创建反射。如何不运行这一命令,则会直接反射天空或显示错误材质,在EP1中为白色,在多人游戏中为紫黑格子。
r_showenvcubemap <布尔值>
- 一个展示所有动态物体在高强度反射下的状态的命令。本文开头的图片就是使用这一命令得到的。
参见
- $envmapmask(镜面反射遮罩)
- $phong(漫反射)
- Cubemap