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

315 lines
7.8 KiB
Markdown
Raw Permalink 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.
# 材质规格完整参考
## 目录
1. [M_Globe 地球材质](#m_globe-地球材质)
2. [M_DataPoint 数据点材质](#m_datapoint-数据点材质)
3. [M_Supercomputer 超算材质](#m_supercomputer-超算材质)
4. [M_Cable 光缆材质](#m_cable-光缆材质)
5. [M_DataFlow 数据流材质](#m_dataplow-数据流材质)
6. [M_Particle 粒子材质](#m_particle-粒子材质)
---
## M_Globe 地球材质
### 基础信息
| 属性 | 值 |
|------|-----|
| 材质类型 | Surface |
| 着色模型 | Default Lit |
| 混合模式 | Opaque |
| 路径 | `Content/Materials/M_Globe.uasset` |
### 材质参数
| 参数 | 类型 | 默认值 | 说明 | 使用位置 |
|------|------|--------|------|----------|
| `DayTexture` | Texture2D | Earth_Day | 白天纹理 | Base Color |
| `NightTexture` | Texture2D | Earth_Night | 夜间纹理 | Emissive |
| `CloudsTexture` | Texture2D | Earth_Clouds | 云层纹理 | Opacity |
| `NormalMap` | Texture2D | Earth_Normal | 法线贴图 | Normal |
| `SpecularMap` | Texture2D | Earth_Specular | 高光贴图 | Specular |
| `EmissiveStrength` | Float | `1.0` | 自发光强度 | Emissive |
| `CloudOpacity` | Float | `0.5` | 云层透明度 | Opacity |
| `RotationSpeed` | Float | `0.1` | 旋转速度 | Time |
| `NightThreshold` | Float | `0.3` | 夜间阈值 | LightSensor |
### 节点网络
```
1. Time → Multiply → RotationSpeed → Rotator → DayTexture UV
2. LightVector → DotProduct → NightThreshold → Step
3. Step → Lerp → NightTexture → Emissive
4. Time → Panner → CloudsTexture UV
5. CloudsTexture → Opacity Mask
```
### 效果说明
```
白天效果:
├─ 显示 DayTexture
├─ 标准光照
└─ 无自发光
夜间效果:
├─ 显示 NightTexture
├─ 关闭直射光照
└─ 启用自发光 (城市灯光)
云层效果:
├─ 半透明云层覆盖
├─ 云层缓慢移动
└─ 根据太阳位置变化
```
---
## M_DataPoint 数据点材质
### 基础信息
| 属性 | 值 |
|------|-----|
| 材质类型 | Surface |
| 着色模型 | Unlit |
| 混合模式 | Additive |
| 路径 | `Content/Materials/M_DataPoint.uasset` |
### 材质参数
| 参数 | 类型 | 默认值 | 说明 |
|------|------|--------|------|
| `BaseColor` | Vector3 | (1.0, 0.2, 0.2) | 基础颜色 |
| `EmissiveStrength` | Float | `10.0` | 自发光强度 |
| `PulseSpeed` | Float | `1.0` | 脉冲速度 |
| `PulseIntensity` | Float | `0.5` | 脉冲强度 |
| `FresnelPower` | Float | `2.0` | 菲涅尔强度 |
| `GlowRadius` | Float | `50.0` | 发光半径 |
| `AlphaMask` | ScalarParameter | `1.0` | 透明度遮罩 |
### 节点网络
```
1. ObjectPosition → WorldPosition
2. CameraPosition → Subtract → Normalize → FresnelEffect
3. FresnelEffect → Power → FresnelPower → Multiply → EmissiveStrength
4. Time → Multiply → PulseSpeed → Sine → Add → 1.0
5. Multiply → PulseIntensity → Multiply → EmissiveColor
6. FresnelOutput × PulseOutput → FinalEmissive
```
### 菲涅尔效果
```
边缘发光:
├─ 视角与表面法线夹角越大
├─ 发光越强
└─ 中心透明,边缘发光
```
---
## M_Supercomputer 超算材质
### 基础信息
| 属性 | 值 |
|------|-----|
| 材质类型 | Surface |
| 着色模型 | Unlit |
| 混合模式 | Additive |
| 路径 | `Content/Materials/M_Supercomputer.uasset` |
### 材质参数
| 参数 | 类型 | 默认值 | 说明 |
|------|------|--------|------|
| `CoreColor` | Vector3 | (1.0, 0.1, 0.1) | 核心颜色 |
| `RingColor` | Vector3 | (1.0, 0.3, 0.1) | 圆环颜色 |
| `CoreEmissive` | Float | `15.0` | 核心发光 |
| `RingEmissive` | Float | `5.0` | 圆环发光 |
| `RingPulseSpeed` | Float | `1.0` | 圆环脉冲 |
| `RingWidth` | Float | `0.02` | 圆环宽度 |
| `PerformanceFactor` | Float | `1.0` | 性能因子 |
### 节点网络
```
核心球体:
1. FresnelEffect → Power(2.5) → Multiply → CoreEmissive
2. CoreColor × CoreEmissive → CoreOutput
扩散圆环:
1. Time × RingPulseSpeed → Sine
2. Sine + 0.5 → SineWidth
3. RingWidth × SineWidth → RingWidthOutput
4. RingColor × RingEmissive × RingWidthOutput → RingOutput
最终输出:
CoreOutput + RingOutput → EmissiveColor
```
### 性能颜色映射
| 性能范围 | 核心颜色 | RGB |
|----------|----------|-----|
| > 1 EFLOPS | 暗红 | (0.8, 0, 0) |
| 500T - 1E | 红色 | (1.0, 0.1, 0.1) |
| 100T - 500T | 橙色 | (1.0, 0.4, 0.1) |
| < 100T | 黄色 | (1.0, 0.7, 0.1) |
---
## M_Cable 光缆材质
### 基础信息
| 属性 | 值 |
|------|-----|
| 材质类型 | Surface |
| 着色模型 | Default Lit |
| 混合模式 | Opaque |
| 路径 | `Content/Materials/M_Cable.uasset` |
### 材质参数
| 参数 | 类型 | 默认值 | 说明 |
|------|------|--------|------|
| `BaseColor` | Vector3 | (1.0, 0.8, 0.0) | 金黄色 |
| `Metallic` | Float | `0.8` | 金属度 |
| `Roughness` | Float | `0.3` | 粗糙度 |
| `EmissiveStrength` | Float | `2.0` | 自发光强度 |
| `FlowDirection` | Float | `1.0` | 流向 (1=正向) |
| `FlowSpeed` | Float | `1.0` | 流动速度 |
| `BandwidthColor` | Vector3 | (0.2, 1.0, 0.2) | 带宽颜色 |
### 节点网络
```
基础属性:
1. BaseColor → BaseColor
2. Metallic → Metallic
3. Roughness → Roughness
流动效果:
1. Time × FlowSpeed → Panner UV
2. NoiseTexture → Panner → FlowPattern
3. FlowPattern × EmissiveStrength → FlowEmissive
最终:
BaseColor + FlowEmissive → EmissiveColor
```
---
## M_DataFlow 数据流材质
### 基础信息
| 属性 | 值 |
|------|-----|
| 材质类型 | Surface |
| 着色模型 | Unlit |
| 混合模式 | Additive |
| 路径 | `Content/Materials/M_DataFlow.uasset` |
### 材质参数
| 参数 | 类型 | 默认值 | 说明 |
|------|------|--------|------|
| `FlowColor` | Vector4 | (0.2, 0.6, 1.0, 1.0) | 流动颜色 |
| `LineWidth` | Float | `100.0` | 线宽度 |
| `FlowSpeed` | Float | `1.0` | 流动速度 |
| `FlowIntensity` | Float | `0.8` | 流动强度 |
| `HeadLength` | Float | `0.2` | 头部长度 |
| `TailFade` | Float | `0.5` | 尾部渐隐 |
### 节点网络
```
1. TextureCoordinates → FlowUV
2. Time × FlowSpeed → Panner → FlowOffset
3. FlowUV + FlowOffset → FlowPattern
4. FlowPattern × HeadLength → HeadMask
5. 1 - FlowPattern × TailFade → TailMask
6. FlowColor × HeadMask × TailMask × FlowIntensity → Emissive
```
---
## M_Particle 粒子材质
### 基础信息
| 属性 | 值 |
|------|-----|
| 材质类型 | User Interface / Transparent |
| 着色模型 | Unlit |
| 混合模式 | Additive |
| 路径 | `Content/Materials/M_Particle.uasset` |
### 材质参数
| 参数 | 类型 | 默认值 | 说明 |
|------|------|--------|------|
| `ParticleColor` | LinearColor | (1.0, 1.0, 1.0, 1.0) | 粒子颜色 |
| `Softness` | Float | `0.5` | 柔和度 |
| `GlowCenter` | Float | `0.5` | 发光中心 |
| `GlowFalloff` | Float | `2.0` | 发光衰减 |
### 节点网络
```
1. TextureCoordinates (UV)
2. UV - 0.5 → CenterUV
3. Length(CenterUV) → DistanceFromCenter
4. DistanceFromCenter × 2 → NormalizedDistance
5. 1 - NormalizedDistance × GlowFalloff → GlowStrength
6. Softness × GlowStrength → SoftGlow
7. ParticleColor × SoftGlow × ParticleOpacity → Emissive
```
---
## 材质使用指南
### 创建新材质
```
1. 右键 Content Browser → Material → Basic → M_Name
2. 设置材质属性:
├─ Material Domain: Surface
├─ Blend Mode: Opaque/Additive/Transparent
└─ Shading Model: Default Lit/Unlit
3. 创建参数 (Material Parameter Collection)
4. 保存并编译
```
### 材质实例
```
创建实例 (右击材质 → Create Material Instance):
├─ 可在蓝图中动态修改参数
├─ 支持材质覆盖
└─ 便于批量管理
```
### 性能优化
```
材质优化技巧:
├─ 减少 Texture Sample 数量
├─ 使用 LOD
├─ 禁用不必要的计算
├─ 简化节点网络
└─ 使用材质参数而非硬编码
```