跳转到内容

Trainz/AM&C/纹理文件

来自维基教科书,开放世界中的开放书籍
logo
Trainz 资产维护和创建

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

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


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

KIND 纹理, KIND 地面纹理, , , 和 缩略图容器.
相关数据类型: "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=normalmap

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

修改贴图

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

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

Alpha 提示

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

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

各向异性

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

各向异性采样质量。 数字越高,视觉质量越好,但性能成本也会大幅增加。 在需要纹理质量的地方,请指定较高的值。 Trainz 目前默认使用“非常高”各向异性过滤,随后会受到游戏内各向异性滑块的限制。 有效值是整数“1”(默认) - 无各向异性过滤,“2” - 低,“4” - 中,“8” - 高,和“16” - 非常高

放大过滤器

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

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

缩小过滤器

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

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

Mip 过滤器

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

控制纹理 mipmap 选择的过滤样式。 Mipmap 在缩小时用于帮助防止莫尔条纹图案。 使用 mipmap 的代价是生成的图像会稍微模糊。 使用 mipmap 的好处是减少量化噪声并减少内存占用(因为当没有使用时,可以卸载更高细节的 mip 层)。 Mip 过滤器的有效设置包括“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 导出器插件已损坏,会静默破坏或丢弃 Alpha 通道; 现在提供免费更新,可以解决此问题。
  • 某些图像编辑器不支持 BMP 文件的 Alpha 通道。


.txt 文件扩展名

[编辑 | 编辑源代码]

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

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

[编辑 | 编辑源代码]

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


  1. TrainzOnline wiki 同时使用“纹理文件”和“texure.txt 文件”作为主题标题,首席程序员 Chris Bergman 做出的修改表明他希望将这两个页面合并。实际上,这两个页面中的信息几乎完全相同,因此我们在此处在texture.txt 文件页面上复制了这些信息,只是注意到存在源“权威”的双重位置,并且这种情况已经持续很长时间了。
华夏公益教科书