Valve材质类型-VMT

材质是一个用来定义二位表面属性的.vmt ("Valve Material Type")文本文件。其包含起源引擎在视觉上,听觉上和物理层面上模拟表面所需的所有信息。

材质的内容可以分为以下几类:

一个简单的例子

LightmappedGeneric
{
	$basetexture coast\shingle_01
	$surfaceprop gravel
}

这是一种非常基本的卵石沙滩arrow-up-right材质:

  1. LightmappedGenericarrow-up-right 是使用的着色器名称,意味着此材质用于有光线贴图arrow-up-right的表面 (笔刷arrow-up-right)。

  2. { 字符用于启用一组参数。

  3. $basetexturearrow-up-rightcoast\shingle_01对应路径的贴图给予。 这是将要绘制在表面上的基础贴图。

  4. $surfaceproparrow-up-right提供了表面的物理属性。

  5. } 字符用于结束一组参数。

  6. 注意:不同着色器的参数,用法及效果都不同,请根据使用情景进行选用

注意,这种材质只能用于笔刷。如果你想要在模型arrow-up-right上使用它,则需要使用另一种名为 VertexLitGenericarrow-up-right 的着色器。

大多数的情况下,你只需要更改vmt第一行的着色器名称来改变着色器,因为它们之间的大部分参数都是共享的。当然,也有用于特定着色器的参数,比如说Phongarrow-up-right效果只能用于VertexLitGeneric。需要注意的是,如果参数不能被着色器所理解,在没有冲突的情况下,不会有任何报错,只是不会有任何的效果。

提示:如果在参数值中出现了空格或者制表符,你需要将整个参数值用双引号括起来,否则会出现错误。一般来说数值都会像这样被包装,以提高可读性。

寻找材质

SteamPipe

当V设将一些游戏上传到 SteamPipearrow-up-right 时,材质将会从 GCFarrow-up-right 中转移到 VPKarrow-up-right 文件中。VPK 文件将会与GCFScapearrow-up-right一同工作。

在此arrow-up-right参阅更多关于SteamPipe的信息。

非SteamPipe游戏

在非 SteamPipearrow-up-right 的起源游戏中, 材质将会存储在你游戏或者mod的 materials\ 文件夹中。请使用Hammerarrow-up-right(最佳)或者其他第三方编辑器来查看它们。

如果你想编辑或者查看V社材料文件中的源码,你需要使用 GCFScapearrow-up-right 将他们从 GCFarrow-up-right 包中提取出来。如果它们被存储在 GCF 中,名称中一般会伴随着“材料 material”字符。

Last updated

Was this helpful?