跳转到内容

Trainz/容器/烟雾容器

来自 Wikibooks,开放世界的开放书籍
logo
Trainz 注释参考页面

Trainz 资产维护和创建
TOC | 开始有趣 | AM&C | 创建 | 书中参考文献 ORP 参考文献:  • 索引 • 容器 • 种类 • 标签 | 附录  • 版本

关于烟雾

[编辑 | 编辑源代码]

烟雾和蒸汽在火车场和火车经过的风景中随处可见,从水龙头喷出的水流到轨道旁牧场小屋烟囱顶端的刺鼻的松树烟柱;半透明的薄雾状物体造就了许多近乎神奇的效果。有人喜欢烟雾和镜子来增强可信度吗?这种容器在各种资产中都能找到。不止一个容器获得了以 NN 作为后缀的数字,形成了 smoke0、smoke1、smoke2、...、smokeNN,因为资产需要。烟雾也是交互式的,与软件有不同的接口,烟雾容器构成了这种连接的一部分。 

烟雾容器

[编辑 | 编辑源代码]

烟雾容器实际上是一个 PFX(粒子效果)发射器,定义了资产产生的烟雾和类似效果。烟雾标签的形式为 smokeX,其中 X 是一个数字。烟雾标签的数量没有上限,但必须按顺序编号(例如,smoke0、smoke1、smoke2 等)。烟雾块有两个部分:主要属性和序列属性。主要属性描述了在发射器整个生命周期内保持不变的属性。序列属性描述了烟雾发射序列中的一组一个或多个阶段/周期。

支持的标签

[编辑 | 编辑源代码]

每个烟雾容器都支持以下标签。每个标签在此都显示了它的默认值。

 texture               KUID<-1:6329>
 file                  ""
 attachment            ""
 mode                  "time"
 accel                 0,0,0
 conesize              0.2,0.2,1
 direction             0,0,1
 enable-steam-physics  0
 enabled               1
 faces                 "camera"
 inherit-Velocity       0
 loop                  -1
 loopdelay             0
 loop-amount           0
 minrate               0
 maxrate               20
 maxspeedkph           0
 start                 0
 period                -1
 color                 255,255,255,255
 endcolor              255,255,255,255
 rate                  4
 velocity              1
 lifetime              3
 minsize               0
 maxsize               3
 mass                  1
 mass-scale            .5
 drag                  .36
 spring                .17
 dampening             .02
 physics-delay         0


主要属性

[编辑 | 编辑源代码]
类型:十进制列表
默认值:0,0,0
强制性:否
描述:设置烟雾粒子的加速条件。第一个值是重力,第二个值是(可选)风力效果。默认值为 0,0。第三个(已弃用)形式存在三个参数 - 它使用前两个值来计算风力效果,第三个值作为重力。

attachment

[编辑 | 编辑源代码]
类型:字符串
默认值:""
强制性:是(3.4)
描述:生成 PFX 的附着点名称。附着点在创建期间在网格文件中指定。
类型:十进制列表
默认值:0.2,0.2,1
强制性:否
描述:指定粒子发射的锥体。当创建粒子时,它将被赋予一个初始速度向量,其方向是此锥体中的一个随机向量,其速度取自“速度”标签。锥体标签是 1、2 或 3 个值的十进制列表(以米为单位)。前两个值指定锥体的宽度和深度(x 和 y),第三个值指定其高度。如果未提供高度,将使用 1.0 值,如果只提供一个值,它将用于宽度和高度。如果根本不提供标签,则默认值为 (0.2,0.2,1.0)。

direction

[编辑 | 编辑源代码]
类型: 3D 向量 (x,y,z)
默认值: 0,0,1
强制性:否
描述: 设置粒子发射器面对的方向。如果没有提供,方向将默认为 (0,0,1)(直上)。

enable-steam-physics

[编辑 | 编辑源代码]
类型: 布尔值
默认值: 0 (false)
强制性:否
描述: 启用一些更高级的烟雾/蒸汽相关粒子物理学(阻力、弹簧和阻尼)。
类型: 布尔值
默认值: 1 (true)
强制性:否
描述: 设置粒子发射器是否启用。
类型:字符串
默认值: "camera"
强制性:否
描述: 设置粒子面对的方向。可以是以下值之一
  • camera - 粒子被绘制,使其始终面向摄像头(默认)
  • motion - 粒子被绘制,使其面向其移动的方向。
  • down - 粒子被绘制,使其面向下方。
类型: 字符串(效果文件名)
默认值:""
强制性:否
描述: 指定应从 Twinkles PFX 工具生成的 文件 中读取粒子发射器设置。

inherit-velocity

[编辑 | 编辑源代码]
类型: 布尔值
默认值: 0
强制性:否
描述: 使粒子继承发射器的速度,默认关闭。
类型: 小数
默认值: -1
强制性:否
描述: 设置循环烟雾序列的时间(以秒为单位)。仅对“time”和“anim2”模式有效。可以设置为 -1 表示在序列长度后循环,这是默认行为。

loopdelay

[编辑 | 编辑源代码]
类型: 小数
默认值: 0
强制性:否
描述: 指定序列再次循环之前的延迟(以秒为单位)。

loop-amount

[编辑 | 编辑源代码]
类型: 整数
默认值: 0
强制性:否
描述: 设置序列应循环的次数。
类型: 整数
默认值: 20
强制性:否
描述: 设置整个序列的最大粒子发射率。

maxspeedkph

[编辑 | 编辑源代码]
类型: 小数
默认值: 0
强制性:否
描述: 对于圆锥发射器,这将设置粒子的最大速度(以公里/小时为单位)。
类型: 整数
默认值: 0
强制性:否
描述: 设置整个序列的最小粒子发射率。默认为 0。
类型:字符串
默认值: "time"
强制性:是(3.4)
描述: PFX 发射器模式。烟雾效果可以包含多个循环的“阶段”,模式定义了如何解释“start”和“period”标签以控制每个烟雾阶段之间的进展。模式必须是以下值之一(如果没有指定,默认为“time”)。
模式值 描述
time 'start' 是在创建父对象后启动效果的下一阶段的时间值列表(以秒为单位),'period' 是阶段保持活动状态的持续时间。
timeofday 'start' 是启动下一阶段的当天时间。当天时间指定为从 0 到 1 的小数,其中 0 是 0:00.00 AM,1 是 12:59.59 PM。
anim 'start' 指定资产动画循环中的时间以启动下一阶段。'period' 是阶段处于活动状态的时间。动画循环中的时间指定为 0 到 1 之间的小数。'start' + 'period' 不能超过 1。
anim2 与 'anim' 相同,但有一些额外的标签(interpolate、loop、loopdelay)
speed 'start' 是启动下一阶段的速度(以米/秒为单位)。'period' 不使用。
custom 未知
cyldrainl 由 Draincock 命令打开和关闭。“l”和“r”的意义未知。
cyldrainr 由 Draincock 命令打开和关闭。“l”和“r”的意义未知。
stack 与驾驶员同步,专为蒸汽机车的烟囱而设计。
whistle 当汽笛打开和关闭时打开和关闭。
generator 未知
lowpressurevalve 当锅炉压力超过低压安全阀的设定值(在 enginespec 中定义)时打开。(?)
highpressurevalve 当锅炉压力超过高压安全阀的设定值(在 enginespec 中定义)时打开。(?)
blow0 未知(吹放?)
blow1 未知(吹放?)
fire-temperature 未知
boiler-temperature 未知
只有“time”和“timeofday”模式对场景对象有效,其他模式用于诸如机车之类的资产。
类型: KUID
默认值: <kuid:-1:6329>
强制性:否
描述: 设置要用于粒子的纹理的 kuid,默认为 KUID<-1:6329>(蒸汽)。


序列属性

[编辑 | 编辑源代码]

每个阶段的标签指定为值列表。如果添加列表,则应为每个阶段指定一个值。

类型: 颜色列表(RGBA,0 到 255)
默认值: 1,1,1,1
强制性:是(3.4)
描述: 指定每个阶段的 PFX 纹理的初始颜色。颜色将默认为白色 (255,255,255,255)。从版本 2.9 开始,如果没有包含颜色标签,将创建一个验证警告。

dampening

[编辑 | 编辑源代码]
类型:十进制列表
默认值: 0.02
强制性:否
描述: 此阶段中创建的粒子的弹簧阻尼常数。弹簧阻尼常数影响单个粒子之间链接的“稳定性”(见“spring”)。需要“enable-steam-physics”标签。默认为 0.02。
类型:十进制列表
默认值: 0.36
强制性:否
描述: 此阶段中创建的粒子的阻力常数。这指定了粒子在空气中自由移动的能力的阻力。如果没有指定,阻力常数将默认为 0.36,增加值会导致粒子受到风的影响更大。需要“enable-steam-physics”标签。
类型: 颜色列表(RGBA,0 到 255)
默认值: 255,255,255,255
强制性:否
描述: 指定每个阶段的 PFX 纹理的结束颜色。颜色将默认为白色 (255,255,255,255)。
类型: 浮点数列表
默认值: 3
强制性:是(3.4)
描述: 指定粒子在此阶段存在的时长(以秒为单位)(默认为 2)。
类型:十进制列表
默认值: 1
强制性:否
描述: 此阶段中创建的粒子的初始质量(以千克为单位)。

mass-scale

[编辑 | 编辑源代码]
类型:十进制列表
默认值:0.5
强制性:否
描述:此阶段粒子生命周期内损失的质量百分比。这允许粒子在消散到空气中时变得更轻。该值以百分比指定,其中 1 代表 100%,默认值为 0.5(50%)。
类型:十进制列表
默认值: 3
强制性:是(3.4)
描述:指定此阶段创建粒子的最终大小(缩放值,其中 1 代表 100%)。
类型:十进制列表
默认值: 0
强制性:是(3.4)
描述:指定此阶段创建粒子的初始大小(缩放值,其中 1 代表 100%,默认值为 0)。
类型:十进制列表
默认值: -1
强制性:否
描述:指定此阶段的持续时间,'period' 的行为根据 'mode' 不同,并不总是使用(有关详细信息,请参见 mode)。Period 可以设置为 -1,表示此阶段处于活动状态,直到下一个阶段开始,这是默认行为。(注意:只有 mode “time” 有效?)

physics-delay

[编辑 | 编辑源代码]
类型:十进制列表
默认值: 0
强制性:否
描述:粒子受世界物理影响之前的延迟,以秒为单位。
类型:整数列表
默认值:4
强制性:是(3.4)
描述:指定每个阶段的粒子发射速率。对于大多数模式,这设置为每秒发射的粒子数量,而对于 'anim' 和 'anim2' 来说,这是指在动画期间发射的粒子数量。默认速率为 4。另请参见 'minrate' 和 'maxrate'。
类型:十进制列表
默认值:0.17
强制性:否
描述:此阶段创建粒子的弹簧常数。弹簧常数指定单个粒子之间连接的强度。默认情况下,如果没有指定,弹簧常数为 0.17,增加该值会导致粒子更牢固地连接到彼此的运动。需要 'enable-steam-physics' 标记。
类型:十进制列表
默认值: 0
强制性:否
描述:指定何时开始此阶段,'start' 的行为根据 'mode' 不同(有关详细信息,请参见 mode)。Start 将默认为 0。
类型:十进制列表
默认值: 1
强制性:是(3.4)
描述:指定此阶段发射粒子的初始速度。速度以米/秒为单位指定,默认值为 1 米/秒。


示例 Config.txt

[编辑 | 编辑源代码]

产生烟雾的场景资产的示例 config.txt 文件

 region Britain
 kind scenery
 type Industrial
 light 1
 smoke0
 {
   attachment a.smoke
   mode timeofday
   color 150,150,150,250
   accel 1,0.3,0
   start 0.25, 0.5
   period 0.25, 0.125
   rate 8
   velocity 3
   lifetime 5
   minsize 0.5
   maxsize 2
 }

示例蒸汽机车

[编辑 | 编辑源代码]

具有四个烟雾发射器的简单蒸汽机的 config.txt 文件

  • 来自主烟囱的深色烟雾,取决于火车的速度(a.smoke,Y 轴指向向上),
  • 顶部小型安全管的持续蒸汽轨迹(a.steam.safety,Y 轴指向向上),
  • 火车两侧的 2 条蒸汽轨迹,交替排出蒸汽,与火车的轮子动画相匹配(a.steam.l,a.steam.r,Y 轴指向外侧)。
 kind traincar
 bogey 0
 engine 1
 name Steam Train
 mass 100000
 enginespec <KUID:0:0>
 enginesound <KUID:0:0>
 hornsound <KUID:0:0>
 interior <KUID:0:0>
 
 smoke0
 {
   attachment a.steam.l
   mode anim
   color 255,255,255,150
   start 0
   period 0.4
   rate 2
   velocity 1
   lifetime 2
   minsize 0.05
   maxsize 1
 }
 smoke1
 {
   attachment a.steam.r
   mode anim
   color 255,255,255,150
   start 0.5
   period 0.4
   rate 2
   velocity 1
   lifetime 2
   minsize 0.05
   maxsize 1
 }
 smoke2
 {
   attachment a.steam.safety
   mode time
   color 255,255,255,150
   rate 2
   velocity 1
   lifetime 2
   minsize 0.05
   maxsize 1
 }
 smoke3
 {
   attachment a.smoke0
   mode speed
   color 100,100,100,200
   start 0,10,20,30
   rate 3,5,7,9
   velocity 3,4,5,5
   lifetime 4,3,2.5,2
   minsize 0.3
   maxsize 2
 }


华夏公益教科书