跳转到内容

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.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 工具生成的文件中读取。

继承速度

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

循环延迟

[编辑 | 编辑源代码]
类型: 十进制
默认值: 0
必填项:否
描述: 指定序列再次循环的延迟时间(以秒为单位)。

循环次数

[编辑 | 编辑源代码]
类型: 整数
默认值: 0
必填项:否
描述: 设置序列循环的次数。

最大速率

[编辑 | 编辑源代码]
类型: 整数
默认值: 20
必填项:否
描述: 设置整个序列的粒子最大发射速率。

最大速度(公里/小时)

[编辑 | 编辑源代码]
类型: 十进制
默认值: 0
必填项:否
描述: 对于锥形发射器,这将设置粒子的最大速度(公里/小时)。

最小速率

[编辑 | 编辑源代码]
类型: 整数
默认值: 0
必填项:否
描述: 设置整个序列的粒子最小发射速率。默认值为 0。
类型:字符串
默认值: "time"
必填项:是(3.4)
描述: PFX 发射器模式。烟雾效果可以包含多个循环的“阶段”,模式定义了如何解释“开始”和“周期”标签以控制每个烟雾阶段之间的进度。模式必须是以下值之一(如果未指定,则默认为 "time")。
模式值 描述
time 'start' 是一个时间值列表(以秒为单位),表示在创建父对象后下一个效果阶段开始的时间,'period' 是该阶段保持活跃的时间长度。
timeofday 'start' 是开始下一个阶段的时刻。时刻用 0 到 1 之间的十进制数表示,其中 0 表示上午 0:00.00,1 表示下午 12:59.59。
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 开始,如果未包含颜色标签,将会生成验证警告。
类型:十进制列表
默认值: 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
必填项:否
描述: 在此阶段创建的粒子的初始质量(以千克为单位)。

质量缩放

[编辑 | 编辑源代码]
类型:十进制列表
默认值: 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
 }


华夏公益教科书