跳转到内容

Trainz/AM&C/纹理文件

来自维基教科书,开放世界的开放书籍
(从 Trainz/texture file 重定向)
logo
Trainz 资产维护与创建

Trainz 注释参考页
TOC | 开始乐趣 | AM&C | 创建 | 书内参考 ORP 参考:  • 索引 • 容器 • 种类 • 标签 | 附录  • 版本
 词汇表
 HKeys-CM
 HKeys-DVR
 HKeys-SUR
 HKeys-WIN
 鼠标使用
 符号

主要文章:Trainz/references/texture.txt file (如果更详细,此页面应合并到该页面;否则,应将其改写为入门和介绍,都(并且首先)用于错误修复,然后用于更简单的内容创建形式。


范围:本指南适用于以下每个 Trainz 类型规范

KIND Texture, KIND Groundtexture, , , 和 缩略图容器.
相关数据类型:"Texture-variants"_container "Texture-variants" 容器 (资产提供纹理的替代材质配置,以季节性变体显示。)

 

Trainz 纹理文件 是 ASCII 文本格式规范文件,描述单个纹理(根据 N3V 的文章名称[注释 1]) 在通用用法中,Trainzer 可能指的是 texture.txt 文件 控制的图形格式文件。这些 texture.txt 文件不是下面所述的二进制生成的压缩 .texture 文件,但与图形纹理图像一样,成为一对文件强制合并和压缩成 Auran 格式的一部分,生成的 '.texture 文件',由 CM 在资产提交时构建。这些文件有时在打开资产时可见,尤其是在它是新克隆时。

纹理文件具有 ".texture.txt" 文件名扩展名,但是,当在 config.txt 文件 中指定纹理文件时,必须省略 ".txt",在标签数据值字段中只保留 ".texture" 扩展名。(这看起来很奇怪,似乎违反直觉,但对 Trainz 来说,'.texture' 表示 '.texture.txt',而当 CM 操作数据时,后一种形式(即操作系统格式)是可以理解的,但在 TrainzUtil、驱动程序、调车场或测量员使用已提交和处理过的准备使用数据时,它是不可以理解的。(TrainzUtil 是一个后台进程,它执行由其他 Trainz 模块命令的许多数据库操作。)


  具有 *.texture.txt 后缀和扩展名的文件用于配置 Trainz 中的纹理行为。这些文件还可以控制 内容管理器 如何处理纹理。这些文件位于与源纹理文件相同的文件夹中,通常是 .bmp、.tga 或 .jpg 文件(以及 TANE 中的 .png 文件),并进行'路径规范连接'引用。修复这些路径规范通常是修复有缺陷资产所需的唯一调整,因为在 TS09 之后,软件要求更严格的文件引用。这些 texture.txt 文件由 CC 的资产源文件夹中各自的 3D 图形软件导出器或导入器实用程序自动生成,但可以在需要控制它们控制的效果的专业化时手动编辑,这在修复有缺陷内容时偶尔需要。

文件格式

[编辑 | 编辑源代码]

用户可编辑的 *.texture.txt 文件 是 ASCII 文本格式的键值对,具有以下选项。请注意,此格式与 Trainz 使用的其他基于文本的格式不同(尽管有一些相似之处)。请注意 文件名字符限制,在命名纹理和图像文件时。

语法

每个标记都指定在新的一行。在 '=' 号两侧没有空格。空值有时有效。语法是

<token>=<value>
示例
Primary=WayCoolTexture.tga
Alpha=WayCoolTexture.tga
Tile=st
AlphaHint=masked
Anisotropy=16
MagFilter=linear
MinFilter=linear
MipFilter=linear

(仅供示例,不推荐设置)


标记和值

[编辑 | 编辑源代码]
Primary=diffusemap.bmp

此标记指定表示纹理颜色(R、G、B)通道的图像文件的名称。图像文件中的任何 alpha 通道将被忽略。生成的纹理将具有纯白色 (100%) alpha 通道。

主纹理,不同 Alpha

[编辑 | 编辑源代码]
Primary=diffusemap.jpg
Alpha=diffusemap.bmp

此标记组合指定表示纹理颜色(R、G、B)通道的图像文件的名称,以及表示纹理 alpha (A) 通道的图像文件的名称。alpha 通道图像应该是灰度图像。两个文件都不应该包含 alpha 通道。

主纹理,相同 Alpha

[编辑 | 编辑源代码]
Primary=diffusemap.tga
Alpha=diffusemap.tga

此标签组合指定单个图像文件的名称,该文件表示纹理的颜色和 Alpha(R、G、B、A)通道。在这种情况下,两个标签必须引用相同的文件名。图像文件必须包含 Alpha 通道。

Compression=dxt1

此标签强制使用特定的纹理压缩方案。如果省略,Trainz 将根据提供的图像文件的内容选择适当的纹理压缩方案。如果您没有特定的效果,请不要包含此标签。有效选项为“none”、“dxt1”、“dxt3”、“dxt5”。参考 DXT 压缩

NormalMapHint

[编辑 | 编辑源代码]
NormalMapHint=normalmap

'NormalMapHint' 标签允许将纹理指定为 法线贴图。默认情况下,Trainz 会假设您的纹理是 漫反射贴图,并将应用一些不适合法线贴图的处理选项。您必须为法线贴图指定此选项。有效选项为“none”和“normalmap”。

ModifyMap

[编辑 | 编辑源代码]
ModifyMap=flipgreen

'ModifyMap' 选项允许翻转纹理的绿色通道。某些程序(例如 3ds Max)创建的 法线贴图 的 Y 轴方向与 Trainz 着色器预期的方向相反。此选项可用于使凹凸效果在 Trainz 中看起来正确。此选项由 内容管理器 在提交时应用。有效选项为“none”和“flipgreen”。

AlphaHint

[编辑 | 编辑源代码]
AlphaHint=opaque

'AlphaHint' 标签允许您强制对纹理使用特定的 Alpha 模式。有效选项为“opaque”(表示 Alpha 通道未使用,实际上是纯白色)、“semitransparent”(表示 Alpha 通道是灰度混合)和“masked”(表示 Alpha 通道是纯黑白色位图)。如果省略,Trainz 会根据 Alpha 通道为该标签提供适当的值。指定此选项可以防止掩码纹理中的轻微变色触发混合 Alpha 路径。

Anisotropy

[编辑 | 编辑源代码]
Anisotropy=1

各向异性采样质量。数字越大,视觉质量越好,但性能成本会显著提高。在需要纹理质量的地方,指定更高的值。Trainz 当前默认使用极高各向异性过滤,然后由游戏中的各向异性滑块进一步限制。有效值为整数“1”(默认值) - 无各向异性过滤,“2” - 低,“4” - 中,“8” - 高,以及“16” - 极高

MagFilter

[编辑 | 编辑源代码]
MagFilter=linear

控制纹理放大时的过滤样式。当纹理以大于实际大小显示时(例如,单个纹理使用多个像素表示)使用此选项。放大滤镜的有效设置包括“nearest”、“linear”和“default”。Trainz 当前默认使用线性插值。选择“nearest”将使用最近邻过滤模式,这将导致“像素化”输出。

MinFilter

[编辑 | 编辑源代码]
MinFilter=linear

控制纹理缩小时的过滤样式。当纹理以小于实际大小显示时(例如,单个像素使用多个纹理表示)使用此选项。缩小滤镜的有效设置包括“nearest”、“linear”和“default”。Trainz 当前默认使用线性插值。选择“nearest”将使用量化过滤模式,这将导致“噪声”输出。

MipFilter

[编辑 | 编辑源代码]
MipFilter=linear

控制纹理mipmap 选择的过滤样式。mipmap 在缩小时使用,有助于防止摩尔纹。使用mipmap 的代价是生成的图像会稍微模糊。使用mipmap 的好处是减少量化噪声并减少内存占用(因为当未使用时,可以卸载更详细的 mip 层)。mipmap 滤镜的有效设置包括“nearest”、“linear”、“default”和“none”。Trainz 当前默认使用三线性插值。选择“nearest”将导致硬件为每个像素选择单个 mipmap,这将在 mipmap 边界处导致可见的条带。选择“none”将禁用 mipmap,导致性能降低、内存使用量增加以及“噪声”输出。


Tile=st

平铺是指纹理坐标在 (0.0 .. 1.0) 范围之外时,可以被视为无限平铺纹理上的有效坐标。平铺处于活动状态时,超过纹理右侧/底部的坐标将有效地回绕到左侧/顶部,依此类推。有效选项包括“s”(水平平铺)、“t”(垂直平铺)、“st”(水平和垂直平铺)以及“none”(不平铺图像)。


评论和建议

[编辑 | 编辑源代码]

标记 Hint 仅供内部使用,但自其发现以来,已被好心人使用和滥用。Anisotropy 应用于提高纹理质量,而 MipFilter=none 应仅用于 界面纹理 来禁用 mip 映射。


图像格式

[编辑 | 编辑源代码]

以下图像格式可以作为纹理文件的源数据。

  • Targa (.tga) 文件。Targa 是一种无损图像格式,具有可选压缩和可选 Alpha 通道。
  • JPEG (.jpg) 文件。JPEG 是一种有损图像压缩格式,不支持 Alpha 通道。
  • Windows 位图 (.bmp) 文件。BMP 是一种无损图像格式,不压缩,具有可选 Alpha 通道。

这些图像与相应的 *.texture.txt 文件一起由 内容管理器 用于创建 Auran/N3V 二进制纹理 (*.texture 文件,无其他扩展名!),这些纹理用于 Trainz 模拟器中。N3V 二进制纹理使用并 包含图像 LOD 信息

  • 所有内置内容仅包含 N3V 二进制纹理,无法使用普通的图像软件打开。可以在页面上找到查看这些纹理的适当工具。

任何大于 2048x2048 的图像都将调整大小为该最大尺寸,因此在资源中使用大于该尺寸的图像没有意义。最好使用您喜欢的图像编辑程序中您首选的重采样选项调整图像大小,而不是让 内容管理器 调整图像大小。实际上,图像的大小应不超过在最典型的观看距离下提供适当细节水平所需的尺寸。统一颜色图像应尽可能小 - 当然不应大于 16x16。

有关图像编辑器的说明

[编辑 | 编辑源代码]
  • 与某些旧版 Adobe Photoshop 一起提供的 Targa Exporter 插件已损坏,会静默破坏或丢弃 Alpha 通道;可获得免费更新以解决此问题。
  • 某些图像编辑器不支持 BMP 文件的 Alpha 通道。


.txt 文件扩展名

[编辑 | 编辑源代码]

纹理文件具有“.texture.txt”名称扩展名,但是当在 config.txt 文件 或类似文件中指定纹理文件时,必须省略“.txt”,保留“.texture”扩展名。例如,在 kind groundtexture 配置文件中,使用语法 texture "grass.texture" 指定名为 grass.texture.txt 的纹理文件。

使用图像文件代替纹理文件

[编辑 | 编辑源代码]

Trainz 从历史上支持使用任何支持的图像文件类型来代替 纹理文件。这种技术有明显的局限性,并且不再推荐使用。


  1. TrainzOnline Wiki 同时使用“Texture File”和“texure.txt 文件”作为主题标题,首席程序员 Chris Bergman 进行的一项编辑表明他希望将这两个页面合并。事实上,这两个页面中的信息几乎完全相同,因此我们在texture.txt 文件页面上复制了它们,并指出源“权威”的双重位置已经存在很长时间了。
华夏公益教科书