Particle modding: Difference between revisions

本页面所适用的版本可能已经过时,最后更新于1.5
(汉化)
No edit summary
 
(4 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{version|1.5}}
{{version|1.5}}
{{需要翻译|译者=霜泽图书馆}}


 粒子是 一种 用来创 闪电、雪等视觉效果 的特殊实体
 粒子是 特殊的实体模型,被其他实体模型 用来创 建诸如 闪电、雪等视觉效果。


 粒子在 '''.asset'''文件中 定义 ,这些文件位于 {{path|gfx/particles/}}.
 粒子 效果定义 在 '''.asset''' 文件中,这些文件位于 {{path|gfx/particles/}}.


== 添加粒子效果 ==
== 添加粒子效果 ==
{{SVersion|1.5}}
{{SVersion|1.5}}


== 粒子效果编辑器 ==
{{SVersion|1.5}}


== 添加 光效 ==
可以通过在 Steam 的启动选项中添加 '''-editor''' 并'''回退到 1.11 版本'''来访问粒子编辑器;使用任何更早的版本将导致启动器无法运行,使用任何更晚的版本将在尝试使用编辑器时导致崩溃。由于粒子编辑器无法访问由模组创建的新粒子,'''因此有必要覆盖原版粒子,将编辑后的粒子移动到你的模组文件中,然后在完成后验证完整性。'''粒子编辑器可以访问任何原版实体、网格或粒子效果;一旦访问后,可以根据需要编辑原版粒子效果。
== 添加光效==
{{SVersion|1.5}}
{{SVersion|1.5}}


  光是实体中引用的特殊类型 粒子,例如在战斗动画中枪口 闪光。
 光 实体 模型 引用的特殊类型粒子 效果 ,例如在战斗动画中 枪口闪光。


 下 是一个通用的例子:
  下是一个通用的例子:
<pre>
<pre>
light = {
light = {
Line 44: Line 48:
      maxValue = <float>
      maxValue = <float>
      curve = {
      curve = {
        <?>
        <decimal> <decimal> <decimal> <decimal> <decimal> <decimal>
       #example: 0.000 0.000 0.250 1.000 0.500 0.500 0.750 0.000 1.000 1.000
      }
      }
    }
    }
}
}
</pre>
</pre>
* '''name''' 是 你所要定义闪 光效 的名
* '''name''' 是光效的名
* '''color'''  定义了 光的颜色 ,通过 十进制 的RGB取值
* '''color'''  的颜色 。取值为 十进制 RGB
* '''intensity'''  决定了 光的强度, 第二个值 则决定了光 是否会渐 渐消失
* '''intensity'''  的强度,第二个值 表示它 是否会渐
* '''radius''' 是光的半径。
* '''radius''' 是光 的半径。
* '''falloff''' 是光的衰减梯度。
* '''falloff''' 是光 的衰减梯度。
* '''position''' 是相对于 发生光 的实体的位置。
* '''position'''是 光效 相对于 使用它 的实体的位置。
* '''animation''' 发生时 的动画。
* '''animation''' 效要播放 的动画。


=== 动画 ===
=== 动画 ===
{{SVersion|1.5}}
{{SVersion|1.5}}
* '''name''' 你要定义的 动画的名
* '''name'''是动画的名
* '''start''' 是曲线的起始位置。
* '''start''' 是曲线的起始位置。
* '''duration''' 是动画的持续时间。
* '''duration'''是动画的持续时间。
* '''repeat''' 决定 动画是否重复。
* '''repeat'''决定动画是否重复 播放
* '''op''' 决定 多个源如何混合。可以是乘法(MUL) 加法(ADD)或绝对值(ABS)。
* '''op'''决定多个源如何混合。可以是乘法 (MUL) 加法 (ADD) 或绝对值 (ABS)。
* '''minValue''' 是曲线上的最小值。
* '''minValue'''是曲线上的最小值。
* '''maxValue''' 是曲线上的最大值。
* '''maxValue'''是曲线上的最大值。
* '''curve''' 使 的曲线。
* '''curve'''是用 的曲线 ;每组有两个小数表示曲线图上的 x 和 y 位置,游戏使用这些点来计算动画所交互的变化。小数的数量应始终为偶数;最大 y 值由 "maxValue" 参数确定,最小 y 值由 "minValue" 参数确定,最大 x 值由 "duration" 确定,最小 x 值由 "start" 确定。你可以有任意数量的小数组,但最后一个 x 坐标必须与 duration 匹配,第一个必须与 start 匹配
 
<br />
 
{{Modding navbox}}
{{Modding navbox}}
[[分类:Modding]]
[[分类:Modding]]

Latest revision as of 20:04, 4 February 2025

粒子是特殊的实体模型,被其他实体模型用来创建诸如闪电、雪等视觉效果。

粒子效果定义在 .asset 文件中,这些文件位于 /Hearts of Iron IV/gfx/particles/.

添加粒子效果

粒子效果编辑器

可以通过在 Steam 的启动选项中添加 -editor回退到 1.11 版本来访问粒子编辑器;使用任何更早的版本将导致启动器无法运行,使用任何更晚的版本将在尝试使用编辑器时导致崩溃。由于粒子编辑器无法访问由模组创建的新粒子,因此有必要覆盖原版粒子,将编辑后的粒子移动到你的模组文件中,然后在完成后验证完整性。粒子编辑器可以访问任何原版实体、网格或粒子效果;一旦访问后,可以根据需要编辑原版粒子效果。

添加光效

光效是在实体模型中被引用的特殊类型粒子效果,例如在战斗动画中的枪口闪光。

以下是一个通用的例子:

light = {
    name = "name_of_light"
    
    color = {
        r = { <float> }
        g = { <float> }
        b = { <float> }
    }
    
    intensity = <float>, fade
    radius = <float>
    falloff = <float>
    
    position = {
        x = <float>
        y = <float>
        z = <float>
    }
    
    animation = {
        name = "name_of_animation"
        start = <float>
        duration = <float>
        repeat = yes
        op = <type>
        minValue = <float>
        maxValue = <float>
        curve = {
            <decimal> <decimal> <decimal> <decimal> <decimal> <decimal>
            #example: 0.000 0.000 0.250 1.000 0.500 0.500 0.750 0.000 1.000 1.000
        }
    }
}
  • name 是光效的名称。
  • color 是光效的颜色。取值为十进制 RGB。
  • intensity 是光效的强度,第二个值表示它是否会渐隐。
  • radius 是光效的半径。
  • falloff 是光效的衰减梯度。
  • position是光效相对于使用它的实体的位置。
  • animation是光效要播放的动画。

动画

  • name是动画的名称。
  • start 是曲线的起始位置。
  • duration是动画的持续时间。
  • repeat决定动画是否重复播放。
  • op决定多个源如何混合。可以是乘法 (MUL)、加法 (ADD) 或绝对值 (ABS)。
  • minValue是曲线上的最小值。
  • maxValue是曲线上的最大值。
  • curve是用于光效的曲线;每组有两个小数表示曲线图上的 x 和 y 位置,游戏使用这些点来计算动画所交互的变化。小数的数量应始终为偶数;最大 y 值由 "maxValue" 参数确定,最小 y 值由 "minValue" 参数确定,最大 x 值由 "duration" 确定,最小 x 值由 "start" 确定。你可以有任意数量的小数组,但最后一个 x 坐标必须与 duration 匹配,第一个必须与 start 匹配。