Files
planet/unreal/Content/Particles/Niagara_Spec.md
2026-03-05 11:46:58 +08:00

385 lines
7.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Niagara 粒子系统规格
## 目录
1. [NS_DataPoint_Glow 数据点光环](#ns_datapoint_glow-数据点光环)
2. [NS_Supercomputer_Glow 超算光环](#ns_supercomputer_glow-超算光环)
3. [NS_DataFlow_Directional 流向粒子](#ns_dataflow_directional-流向粒子)
4. [NS_Alarm_Flash 告警闪烁](#ns_alarm_flash-告警闪烁)
5. [NS_Ambient_Ambience 环境粒子](#ns_ambient_ambience-环境粒子)
---
## NS_DataPoint_Glow 数据点光环
### 系统信息
| 属性 | 值 |
|------|-----|
| 系统类型 | Emitter |
| 混合模式 | Additive |
| 路径 | `Content/Particles/NS_DataPoint_Glow.uasset` |
### 发射器配置
| 配置项 | 值 | 说明 |
|--------|-----|------|
| Emitter Type | Sprite | 精灵粒子 |
| Start Method | Owner | 所有者位置 |
| Loop | true | 循环播放 |
| Min Loop Count | 0 | 无最小限制 |
| Max Loop Count | -1 | 无最大限制 |
### 粒子初始化
| 属性 | 值 | 说明 |
|------|-----|------|
| Sprite Size | 50 → 200 cm | 渐变大小 |
| Sprite Rotation | 0 → 360 | 随机旋转 |
| Color | (1, 0.2, 0.2, 0.8) | 红色 |
| Lifetime | 1.5 秒 | 粒子寿命 |
### 粒子更新
```
缩放渐变:
├─ Start: 50 cm
├─ End: 200 cm
└─ Scale: 线性插值
颜色渐变:
├─ 0%: (1, 0.2, 0.2, 0.8)
├─ 50%: (1, 0.2, 0.2, 0.4)
└─ 100%: (1, 0.2, 0.2, 0)
物理:
├─ Velocity: (0, 0, 10) cm/s
└─ Drag: 1.0
```
### 发射速率
```
├─ Rate: 30 粒子/秒
├─ Bursts: 无
└─ Scale Factor: 1.0
```
### 渲染
```
├─ Material: M_Particle_Glow
├─ Sort: 距离排序
└─ Enable GPU Simulation: false
```
---
## NS_Supercomputer_Glow 超算光环
### 系统信息
| 属性 | 值 |
|------|-----|
| 系统类型 | Emitter |
| 混合模式 | Additive |
| 路径 | `Content/Particles/NS_Supercomputer_Glow.uasset` |
### 发射器配置
| 配置项 | 值 | 说明 |
|--------|-----|------|
| Emitter Type | Sprite | 精灵粒子 |
| Start Method | Owner | 所有者位置 |
| Loop | true | 循环播放 |
| Orbit | true | 轨道运动 |
### 粒子初始化
| 属性 | 值 | 说明 |
|------|------|------|
| Sprite Size | 100 → 300 cm | 渐变大小 |
| Color | (1.0, 0.1, 0.1, 1.0) | 红色 |
| Lifetime | 2.0 秒 | 粒子寿命 |
| RotationSpeed | 10 deg/s | 旋转速度 |
### 粒子更新
```
轨道运动:
├─ Pivot: Center
├─ Radius: 150 cm
└─ RotationSpeed: 30 deg/s
缩放:
├─ Start: 100 cm
├─ Mid: 300 cm
└─ End: 100 cm
颜色:
├─ 0%: (1.0, 0.1, 0.1, 1.0)
├─ 50%: (1.0, 0.1, 0.1, 0.5)
└─ 100%: (1.0, 0.1, 0.1, 0)
```
### 发射速率
```
├─ Rate: 20 粒子/秒
├─ Bursts:
│ └─ Time: 0s, Count: 5, Increment: 2
└─ Scale Factor: 1.0
```
---
## NS_DataFlow_Directional 流向粒子
### 系统信息
| 属性 | 值 |
|------|-----|
| 系统类型 | Emitter |
| 混合模式 | Additive |
| 路径 | `Content/Particles/NS_DataFlow_Directional.uasset` |
### 发射器配置
| 配置项 | 值 | 说明 |
|--------|-----|------|
| Emitter Type | Sprite | 精灵粒子 |
| Start Method | Spline | 沿样条路径 |
| Loop | true | 循环播放 |
### 参数接口
| 参数名 | 类型 | 默认值 | 说明 |
|--------|------|--------|------|
| `User.FlowColor` | LinearColor | (0.2, 0.6, 1.0, 1) | 粒子颜色 |
| `User.Speed` | Float | `100.0` | 粒子速度 |
| `User.Lifetime` | Float | `3.0` | 粒子寿命 |
| `User.Size` | Float | `50.0` | 粒子大小 |
| `User.Density` | Float | `1.0` | 粒子密度 |
### 粒子初始化
```
Sprite Size: User.Size → User.Size × 1.5
Color: User.FlowColor
Lifetime: User.Lifetime
RotationSpeed: 180 deg/s
```
### 粒子更新
```
沿路径移动:
├─ 位置: 沿样条插值
├─ 速度: User.Speed
└─ 方向: 样条切线方向
颜色渐变:
├─ 0%: User.FlowColor × 1.0
├─ 50%: User.FlowColor × 0.8
└─ 100%: User.FlowColor × 0.0
缩放渐变:
├─ Start: User.Size
└─ End: User.Size × 1.5
```
### 发射速率
```
├─ Rate: 100 × User.Density 粒子/秒
├─ 方法: Time Divided
└─ Scale Factor: 1.0
```
---
## NS_Alarm_Flash 告警闪烁
### 系统信息
| 属性 | 值 |
|------|-----|
| 系统类型 | Emitter |
| 混合模式 | Additive |
| 路径 | `Content/Particles/NS_Alarm_Flash.uasset` |
### 发射器配置
| 配置项 | 值 | 说明 |
|--------|-----|------|
| Emitter Type | Sprite | 精灵粒子 |
| Start Method | Owner | 所有者位置 |
| Loop | true | 循环播放 |
### 粒子初始化
| 属性 | 值 | 说明 |
|------|------|------|
| Sprite Size | 500 → 2000 cm | 渐变大小 |
| Color | (1.0, 0.0, 0.0, 1.0) | 红色 |
| Lifetime | 0.5 秒 | 粒子寿命 |
### 粒子更新
```
缩放:
├─ Start: 500 cm
├─ End: 2000 cm
└─ Scale: 指数
颜色:
├─ 0%: (1.0, 0.0, 0.0, 1.0)
├─ 50%: (1.0, 0.0, 0.0, 0.5)
└─ 100%: (1.0, 0.0, 0.0, 0)
```
### 发射配置
```
├─ Rate: 2 粒子/秒
├─ Bursts:
│ └─ Time: 0s, Count: 1
├─ Scale Factor: 1.0
└─ 闪烁频率: 2 Hz
```
---
## NS_Ambient_Ambience 环境粒子
### 系统信息
| 属性 | 值 |
|------|-----|
| 系统类型 | Emitter |
| 混合模式 | Additive |
| 路径 | `Content/Particles/NS_Ambient_Ambience.uasset` |
### 发射器配置
| 配置项 | 值 | 说明 |
|--------|-----|------|
| Emitter Type | Sprite | 精灵粒子 |
| Start Method | Box | 盒体范围 |
| Loop | true | 循环播放 |
### 发射范围
```
Box Extents: (50000, 50000, 50000) cm
├─ X: -50000 → 50000
├─ Y: -50000 → 50000
└─ Z: 0 → 100000
```
### 粒子初始化
```
Sprite Size: 5 → 15 cm
Color: (0.5, 0.5, 1.0, 0.1)
Lifetime: 5 → 10 秒
RotationSpeed: -10 → 10 deg/s
```
### 粒子更新
```
速度场:
├─ Constant: (0, 0, 5) cm/s
└─ Curl Noise: 启用
颜色:
├─ 0%: (0.5, 0.5, 1.0, 0.1)
└─ 100%: (0.5, 0.5, 1.0, 0.0)
```
### 发射配置
```
├─ Rate: 50 粒子/秒
├─ 方法: Time Divided
└─ Scale Factor: 1.0
```
---
## Niagara 模块参考
### 常用模块
| 模块 | 用途 |
|------|------|
| `Sprite Renderer` | 精灵渲染 |
| `Mesh Renderer` | 网格渲染 |
| `Emitter State` | 发射器状态 |
| `Spawn Rate` | 生成速率 |
| `Spawn Burst Instant` | 爆发生成 |
| `Particle State` | 粒子状态 |
| `Kill Particle` | 杀死粒子 |
| `Color` | 颜色 |
| `Scale Sprite Size` | 精灵缩放 |
| `Add Velocity` | 添加速度 |
| `Velocity From Point` | 从点速度 |
| `Curl Noise Force` | 卷曲噪点力 |
| `Drag` | 阻力 |
| `Limit Velocity` | 限制速度 |
| `Position` | 位置 |
| `Rotation` | 旋转 |
| `Rotation Rate` | 旋转速度 |
### 常用设置
```
GPU Simulation:
├─ Enable: false (建议)
├─ Supports GPU: true
└─ Requires persistent IDs: false
Determism:
├─ Deterministic: false
└─ Pooling Method: eager
Scalability:
├─ Max Active Particles: 10000
└─ Max Time: 60s
```
---
## 性能优化
### 粒子数量限制
```
远距离:
├─ Max Particles: 100
├─ Cull Distance: 50000 cm
└─ Scale Factor: 0.1
中距离:
├─ Max Particles: 500
├─ Cull Distance: 20000 cm
└─ Scale Factor: 0.5
近距离:
├─ Max Particles: 2000
├─ Cull Distance: 5000 cm
└─ Scale Factor: 1.0
```
### 优化建议
```
1. 使用 GPU Simulation (如果显卡支持)
2. 减少粒子数量
3. 简化粒子行为
4. 禁用不必要的效果
5. 使用 LOD
6. 定期清理粒子
```