Kaynağa Gözat

标签转跳

BAI 3 hafta önce
ebeveyn
işleme
d8a352c4e0
5 değiştirilmiş dosya ile 820 ekleme ve 1087 silme
  1. 154 0
      README.md
  2. 559 1085
      demo.txt
  3. BIN
      public/ducao2.7z
  4. 1 1
      src/App.vue
  5. 106 1
      src/scenes/WaterLevelLabel.vue

+ 154 - 0
README.md

@@ -152,3 +152,157 @@ export const labelTypeRegistry: Record<LabelDataType, LabelTypeDisplayConfig> =
 ```
 
 之后在 `WaterLevelLabel.vue` 的 `iconMap` 中映射新的图标文件即可。
+
+---
+
+## 数据传输与更新机制
+
+### 数据流总览
+
+```
+外部系统
+   │
+   ├── ① Props 传入初始值
+   │     :label-values="{ '6602380005': 0.00 }"
+   │
+   ├── ② 调用 Expose 方法更新
+   │     sceneRef.setLabelValue(id, value)
+   │     sceneRef.setLabelValues({ id: value, ... })
+   │
+   └── ③ 直接修改响应式数据
+         sceneRef.labelValues[id] = value
+              │
+              ▼
+    ┌─────────────────────────┐
+    │  场景组件内部             │
+    │  labelValues (reactive)  │
+    │  ├── Scene3D.vue         │
+    │  └── DucaoScene.vue      │
+    └──────────┬──────────────┘
+               │ :value prop 绑定
+               ▼
+    ┌─────────────────────────┐
+    │  WaterLevelLabel.vue     │
+    │  watch(value)            │
+    │    → redrawTexture()     │
+    │    → Canvas 重新绘制     │
+    │    → spriteTexture       │
+    │      .needsUpdate = true │
+    └─────────────────────────┘
+```
+
+### 三种更新方式
+
+#### 方式一:Props 传入(初始化 / 响应式更新)
+
+```vue
+<Scene3D :label-values="{ '6602380005': 1.58 }" />
+```
+
+- 父组件通过 prop `labelValues` 传入一个 `Record<string, number>`
+- 场景内部 `watch(() => props.labelValues)` 监听变化,同步到本地的 `labelValues` reactive 对象
+- **注意**:由于 watch 是 deep 监听,父组件更新 prop 对象的属性值时会自动触发重绘
+
+#### 方式二:调用 Expose 方法
+
+```ts
+// 更新单个标签
+sceneRef.value?.setLabelValue('6602380005', 1.58)
+
+// 批量更新
+sceneRef.value?.setLabelValues({
+  '6602380005': 1.58,
+  '6602380006': 3.20,
+})
+```
+
+- `setLabelValue(id, value)` — 直接设置 `labelValues[id] = value`
+- `setLabelValues(levels)` — 遍历设置多个值
+- 两种方法都直接操作 reactive 对象,Vue 的响应式系统会自动触发 `WaterLevelLabel` 的 prop 更新
+
+#### 方式三:直接操作响应式数据
+
+```ts
+sceneRef.value?.labelValues['6602380005'] = 3.0
+```
+
+- 直接修改 `labelValues` 对象的属性
+- 由于 `labelValues` 是 `reactive()` 对象,Vue 会自动追踪变化
+
+### 内部更新链路(逐层追踪)
+
+```
+labelValues[id] 更新
+  │
+  ▼
+Scene3D.vue / DucaoScene.vue 的模板
+  │  <WaterLevelLabel :value="labelValues[data.config.id]" />
+  │
+  ▼
+WaterLevelLabel.vue props.value 更新
+  │
+  ▼
+watch(() => props.value) 触发
+  │
+  ▼
+redrawTexture() 被调用
+  ├── ctx.clearRect()          → 清空 Canvas
+  ├── ctx.drawImage(iconImg)   → 重绘图标
+  ├── drawText()               → 重绘数值文本
+  │     ├── 使用 cfg.label (如 "水 量")
+  │     ├── 使用 props.value.toFixed(cfg.decimalPlaces)
+  │     └── 白色文字 + 半透明单位文本
+  └── spriteTexture.needsUpdate = true  → Three.js 更新纹理
+       │
+       ▼
+       屏幕上的 Sprite 立即显示新数值
+```
+
+### 初始化流程
+
+```
+组件挂载
+  │
+  ▼
+initLabelData()
+  │
+  ├── 遍历 sceneLabels (从 sceneConfig.ts 读取标签配置)
+  ├── 对每个标签:
+  │     ├── 优先读取 props.labelValues[cfg.id](外部传入值)
+  │     └── 如果外部未传入,则使用 cfg.initialValue(配置默认值)
+  │
+  ▼
+  labelDataList 构建完成
+  │
+  ▼
+3D 场景初始化 → labelDataList.forEach(init)
+  │
+  ▼
+  WaterLevelLabel.init(scene, camera)
+    → ensureSprite() → 创建 CanvasTexture Sprite
+    → createTooltip() → 创建悬停提示 Sprite
+```
+
+### 标签配置数据结构
+
+```ts
+interface WaterLevelLabelConfig {
+  id: string           // 唯一标识,外部传值时使用
+  name: string         // 名称(悬停 tooltip 显示)
+  type: LabelDataType  // 标签类型(waterLevel / flowRate / StressMonitor)
+  scene: SceneType     // 所属场景(main / ducao)
+  positionX: number    // 3D 场景坐标
+  positionY: number
+  positionZ: number
+  initialValue: number // 初始默认值
+}
+```
+
+### 两个场景的差异
+
+| 场景 | 组件 | 标签来源 | 标签数量 |
+|---|---|---|---|
+| 主场景(沉砂池) | Scene3D.vue | `sceneLabels.main` | 6 个 |
+| 渡槽场景 | DucaoScene.vue | `sceneLabels.ducao` | 8 个 |
+
+两个场景的标签配置统一在 `sceneConfig.ts` 的 `waterLevelLabels` 数组中管理,通过 `scene` 字段区分。但数据更新方式完全一致(Props + Expose + 直接修改)。

+ 559 - 1085
demo.txt

@@ -1,1085 +1,559 @@
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode_Root Name="MaterialGraphNode_Root_0" ExportPath=/Script/UnrealEd.MaterialGraphNode_Root'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_Root_0"'
-   Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   NodePosX=464
-   NodePosY=-208
-   NodeGuid=5365BDEE4598AAE9665C468E45E341BB
-   CustomProperties Pin (PinId=48D6121145F05BC44AB2C188B3D0EF2D,PinName="基础颜色",PinType.PinCategory="materialinput",PinType.PinSubCategory="5",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_0 BA3F45254B7E0F3DF532F69ED7A766D4,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=8828E381411D7B27CF157B83109ACE01,PinName="Metallic",PinType.PinCategory="materialinput",PinType.PinSubCategory="6",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_1 B6E77B0C4C39704A85B9219C52C69E95,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=E24616AC4F87866CD71453BE9B7FCD1A,PinName="高光度",PinType.PinCategory="materialinput",PinType.PinSubCategory="7",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_1 B6E77B0C4C39704A85B9219C52C69E95,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=3C5118EC47B9EE7D5F58239E313E277B,PinName="粗糙度",PinType.PinCategory="materialinput",PinType.PinSubCategory="8",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_2 52D539414DC82CA33E3B768F74890C8C,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=BE9B28DC4CB9B2B7E7F885AC0BF6575A,PinName="各向异性",PinType.PinCategory="materialinput",PinType.PinSubCategory="9",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=1E91647544BB8512239BAFAC2A0028EA,PinName="自发光颜色",PinType.PinCategory="materialinput",PinType.PinSubCategory="0",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_0 BA3F45254B7E0F3DF532F69ED7A766D4,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=F8373E744A0A47079716F1AA6B9EFF2C,PinName="不透明度",PinType.PinCategory="materialinput",PinType.PinSubCategory="1",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_4 6540EC8C43135270E31599A892F9CE8B,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=7A2988664B5F924B07490495363EF249,PinName="不透明蒙版",PinType.PinCategory="materialinput",PinType.PinSubCategory="2",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=79C04DB345C324565C2845BD6220F0B2,PinName="Normal",PinType.PinCategory="materialinput",PinType.PinSubCategory="10",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_3 BB844DDD479311DAEF6EBAB697A8CDBB,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=AA65DAF7481BD0B0480DB0A60A6F7A70,PinName="切线",PinType.PinCategory="materialinput",PinType.PinSubCategory="11",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=303EB29E4D8DD5C7BDFD829AF86DF82B,PinName="全局位置偏移",PinType.PinCategory="materialinput",PinType.PinSubCategory="12",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=8F418E0948A254651A54CFAE0DD6D822,PinName="Subsurface Color",PinType.PinCategory="materialinput",PinType.PinSubCategory="15",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=6EA20DA545BAA1672C088AAD122C1DBD,PinName="Custom Data 0",PinType.PinCategory="materialinput",PinType.PinSubCategory="16",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=0B8C385F46DA54DB299875B18472F9DE,PinName="Custom Data 1",PinType.PinCategory="materialinput",PinType.PinSubCategory="17",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=FC4DE56749B4A5C06B408C84D3F9BC4C,PinName="环境光遮挡",PinType.PinCategory="materialinput",PinType.PinSubCategory="18",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=4E169D814AE28F1EEC1912A25AEF7C5B,PinName="折射 (Disabled)",PinType.PinCategory="materialinput",PinType.PinSubCategory="19",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=626205584B6249C80807C18EC1AD3C04,PinName="Customized UV0",PinType.PinCategory="materialinput",PinType.PinSubCategory="20",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=2B9AD6014DEAE6EC62B82FA54234FBDD,PinName="Customized UV1",PinType.PinCategory="materialinput",PinType.PinSubCategory="21",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=66FE2424412883B58B6C19B1C5CEA574,PinName="Customized UV2",PinType.PinCategory="materialinput",PinType.PinSubCategory="22",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=E67EEC5847785D18533C8FA5EB84DEBD,PinName="Customized UV3",PinType.PinCategory="materialinput",PinType.PinSubCategory="23",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=8691616547BD2B168AB4DF825D7FA5B1,PinName="Customized UV4",PinType.PinCategory="materialinput",PinType.PinSubCategory="24",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=AEE2BE894BBBF7B3BD1B12928EB8C236,PinName="Customized UV5",PinType.PinCategory="materialinput",PinType.PinSubCategory="25",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=B41332F640860EAB7AE9EBB7196FBFC8,PinName="Customized UV6",PinType.PinCategory="materialinput",PinType.PinSubCategory="26",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=E0D84AAC4BE7BC2B2848EAB437B89863,PinName="Customized UV7",PinType.PinCategory="materialinput",PinType.PinSubCategory="27",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=BB0F0C88400767AF6E55E19B8F6B12A1,PinName="像素深度偏移",PinType.PinCategory="materialinput",PinType.PinSubCategory="28",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=CB77F72E4EEC5898F9F2D78B64CBCC76,PinName="着色模型",PinType.PinCategory="materialinput",PinType.PinSubCategory="29",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=B0FE30084074F1639D32D188A2787FAF,PinName="表面厚度",PinType.PinCategory="materialinput",PinType.PinSubCategory="31",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=55479CED425EE7BCE807EA8B6D5E2FDF,PinName="前方材质",PinType.PinCategory="materialinput",PinType.PinSubCategory="30",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=58B77B94463A880BF0A08B8EC0CFC2C3,PinName="材质属性",PinType.PinCategory="materialinput",PinType.PinSubCategory="32",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_0" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_0"'
-   Begin Object Class=/Script/Engine.MaterialExpressionMultiply Name="MaterialExpressionMultiply_6" ExportPath=/Script/Engine.MaterialExpressionMultiply'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_0.MaterialExpressionMultiply_6"'
-   End Object
-   Begin Object Name="MaterialExpressionMultiply_6" ExportPath=/Script/Engine.MaterialExpressionMultiply'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_0.MaterialExpressionMultiply_6"'
-      A=(Expression=/Script/Engine.MaterialExpressionMultiply'"MaterialGraphNode_5.MaterialExpressionMultiply_1"')
-      B=(Expression=/Script/Engine.MaterialExpressionVectorParameter'"MaterialGraphNode_22.MaterialExpressionVectorParameter_0"',Mask=1,MaskR=1,MaskG=1,MaskB=1)
-      MaterialExpressionEditorX=-352
-      MaterialExpressionEditorY=-144
-      MaterialExpressionGuid=5E8D255947A6E76E535987A82DE36E13
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionMultiply'"MaterialExpressionMultiply_6"'
-   NodePosX=-352
-   NodePosY=-144
-   NodeGuid=3388AA2E4AC7E53B02D74C8665E4E1FD
-   CustomProperties Pin (PinId=B46AB63B4BB427143269C39AA1CC41A2,PinName="A",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0.0",LinkedTo=(MaterialGraphNode_5 E2E92D2C49A6D6C723F90FB5D186F688,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=9E94B82545A4538DDC6FA6AA68ED159B,PinName="B",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="1.0",LinkedTo=(MaterialGraphNode_22 8EB0B3B746FDFD70AAFE1D90D1766932,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=BA3F45254B7E0F3DF532F69ED7A766D4,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_Root_0 48D6121145F05BC44AB2C188B3D0EF2D,MaterialGraphNode_Root_0 1E91647544BB8512239BAFAC2A0028EA,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_1" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_1"'
-   Begin Object Class=/Script/Engine.MaterialExpressionConstant Name="MaterialExpressionConstant_2" ExportPath=/Script/Engine.MaterialExpressionConstant'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_1.MaterialExpressionConstant_2"'
-   End Object
-   Begin Object Name="MaterialExpressionConstant_2" ExportPath=/Script/Engine.MaterialExpressionConstant'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_1.MaterialExpressionConstant_2"'
-      MaterialExpressionEditorX=-96
-      MaterialExpressionEditorY=-128
-      MaterialExpressionGuid=761D0EE24980CD1BFECE459EF49A745C
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionConstant'"MaterialExpressionConstant_2"'
-   NodePosX=-96
-   NodePosY=-128
-   NodeGuid=A46655CE4BC2B92C6C76DCB5856EB7F6
-   CustomProperties Pin (PinId=F95FD89B4C3502AF6FF89298168B5E2D,PinName="值",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0.0",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=B6E77B0C4C39704A85B9219C52C69E95,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_Root_0 8828E381411D7B27CF157B83109ACE01,MaterialGraphNode_Root_0 E24616AC4F87866CD71453BE9B7FCD1A,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_2" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_2"'
-   Begin Object Class=/Script/Engine.MaterialExpressionConstant Name="MaterialExpressionConstant_1" ExportPath=/Script/Engine.MaterialExpressionConstant'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_2.MaterialExpressionConstant_1"'
-   End Object
-   Begin Object Name="MaterialExpressionConstant_1" ExportPath=/Script/Engine.MaterialExpressionConstant'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_2.MaterialExpressionConstant_1"'
-      R=1.000000
-      MaterialExpressionEditorX=-96
-      MaterialExpressionEditorY=-64
-      MaterialExpressionGuid=7646282740D234EBC22A29B591215C55
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionConstant'"MaterialExpressionConstant_1"'
-   NodePosX=-96
-   NodePosY=-64
-   NodeGuid=FBAC057745575BE3893ADEB00F7D4014
-   CustomProperties Pin (PinId=04F6D00342440008676806AFD1C78BE3,PinName="值",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="1.0",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=52D539414DC82CA33E3B768F74890C8C,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_Root_0 3C5118EC47B9EE7D5F58239E313E277B,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_3" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_3"'
-   Begin Object Class=/Script/Engine.MaterialExpressionAdd Name="MaterialExpressionAdd_5" ExportPath=/Script/Engine.MaterialExpressionAdd'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_3.MaterialExpressionAdd_5"'
-   End Object
-   Begin Object Name="MaterialExpressionAdd_5" ExportPath=/Script/Engine.MaterialExpressionAdd'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_3.MaterialExpressionAdd_5"'
-      A=(Expression=/Script/Engine.MaterialExpressionTextureSample'"MaterialGraphNode_34.MaterialExpressionTextureSample_6"',Mask=1,MaskR=1,MaskG=1,MaskB=1)
-      B=(Expression=/Script/Engine.MaterialExpressionAdd'"MaterialGraphNode_36.MaterialExpressionAdd_4"')
-      ConstB=0.000000
-      MaterialExpressionEditorX=-528
-      MaterialExpressionEditorY=1024
-      MaterialExpressionGuid=1471EE234212FA677F80E1BD5BDA5D28
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionAdd'"MaterialExpressionAdd_5"'
-   NodePosX=-528
-   NodePosY=1024
-   NodeGuid=BB2F9C8546A773843B5C18B0C258BA7C
-   CustomProperties Pin (PinId=256B87854E83A5A1D7B70DBA8AD32894,PinName="A",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0.0",LinkedTo=(MaterialGraphNode_34 E7AA9CF64DE172EAD6CE99B87E69E501,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=7E8D8DBA4D2E373DFE6D16966AFE368C,PinName="B",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0.0",LinkedTo=(MaterialGraphNode_36 F4515358467330A1099A4E828DB30BEF,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=BB844DDD479311DAEF6EBAB697A8CDBB,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_Root_0 79C04DB345C324565C2845BD6220F0B2,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_4" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_4"'
-   Begin Object Class=/Script/Engine.MaterialExpressionMultiply Name="MaterialExpressionMultiply_0" ExportPath=/Script/Engine.MaterialExpressionMultiply'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_4.MaterialExpressionMultiply_0"'
-   End Object
-   Begin Object Name="MaterialExpressionMultiply_0" ExportPath=/Script/Engine.MaterialExpressionMultiply'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_4.MaterialExpressionMultiply_0"'
-      A=(Expression=/Script/Engine.MaterialExpressionMultiply'"MaterialGraphNode_5.MaterialExpressionMultiply_1"')
-      B=(Expression=/Script/Engine.MaterialExpressionScalarParameter'"MaterialGraphNode_37.MaterialExpressionScalarParameter_1"')
-      MaterialExpressionEditorX=-144
-      MaterialExpressionEditorY=288
-      MaterialExpressionGuid=5C120E1B4902AC8419D181BB89A8ABBA
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionMultiply'"MaterialExpressionMultiply_0"'
-   NodePosX=-144
-   NodePosY=288
-   NodeGuid=107B3D214B71952E7D685FA36A70D18C
-   CustomProperties Pin (PinId=396D3C4D48B08B603BA87D97C038B894,PinName="A",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0.0",LinkedTo=(MaterialGraphNode_5 E2E92D2C49A6D6C723F90FB5D186F688,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=BC8503D24687B75A24B9D6B4171B6D8F,PinName="B",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="1.0",LinkedTo=(MaterialGraphNode_37 B6BF537C473081DAF90192AB09EEA7AF,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=6540EC8C43135270E31599A892F9CE8B,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_Root_0 F8373E744A0A47079716F1AA6B9EFF2C,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_5" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_5"'
-   Begin Object Class=/Script/Engine.MaterialExpressionMultiply Name="MaterialExpressionMultiply_1" ExportPath=/Script/Engine.MaterialExpressionMultiply'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_5.MaterialExpressionMultiply_1"'
-   End Object
-   Begin Object Name="MaterialExpressionMultiply_1" ExportPath=/Script/Engine.MaterialExpressionMultiply'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_5.MaterialExpressionMultiply_1"'
-      A=(Expression=/Script/Engine.MaterialExpressionMultiply'"MaterialGraphNode_21.MaterialExpressionMultiply_5"')
-      B=(Expression=/Script/Engine.MaterialExpressionMultiply'"MaterialGraphNode_40.MaterialExpressionMultiply_2"')
-      MaterialExpressionEditorX=-416
-      MaterialExpressionEditorY=240
-      MaterialExpressionGuid=4CFA1DA7407D04DC1F824A8C869F9F9D
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionMultiply'"MaterialExpressionMultiply_1"'
-   NodePosX=-416
-   NodePosY=240
-   NodeGuid=02E4F148488347ECA9722585365A588E
-   CustomProperties Pin (PinId=45DD06264ECE8D4B4787A2B27478ADF0,PinName="A",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0.0",LinkedTo=(MaterialGraphNode_21 313B03994A181920C56E76A70A452085,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=0B95846945C5FEBB9C46F885EAD2B6F5,PinName="B",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="1.0",LinkedTo=(MaterialGraphNode_40 7CDB7581450212426090E880F0B514E8,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=E2E92D2C49A6D6C723F90FB5D186F688,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_0 B46AB63B4BB427143269C39AA1CC41A2,MaterialGraphNode_4 396D3C4D48B08B603BA87D97C038B894,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_6" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_6"'
-   Begin Object Class=/Script/Engine.MaterialExpressionAdd Name="MaterialExpressionAdd_0" ExportPath=/Script/Engine.MaterialExpressionAdd'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_6.MaterialExpressionAdd_0"'
-   End Object
-   Begin Object Name="MaterialExpressionAdd_0" ExportPath=/Script/Engine.MaterialExpressionAdd'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_6.MaterialExpressionAdd_0"'
-      A=(Expression=/Script/Engine.MaterialExpressionTextureSample'"MaterialGraphNode_23.MaterialExpressionTextureSample_5"',Mask=1,MaskR=1,MaskG=1,MaskB=1)
-      B=(Expression=/Script/Engine.MaterialExpressionTextureSample'"MaterialGraphNode_7.MaterialExpressionTextureSample_2"',Mask=1,MaskR=1,MaskG=1,MaskB=1)
-      ConstB=0.000000
-      MaterialExpressionEditorX=-928
-      MaterialExpressionEditorY=-224
-      MaterialExpressionGuid=1471EE234212FA677F80E1BD5BDA5D28
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionAdd'"MaterialExpressionAdd_0"'
-   NodePosX=-928
-   NodePosY=-224
-   NodeGuid=7E656E84415DE1332578E997B29E7942
-   CustomProperties Pin (PinId=48C01091435BEAB3AD05DE87248D3A61,PinName="A",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0.0",LinkedTo=(MaterialGraphNode_23 353C81E44AD0D2DDB0BF6CB88E10C084,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=376DA00449D6FD1FB9A3C29185CEFB25,PinName="B",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0.0",LinkedTo=(MaterialGraphNode_7 6C297FEA480F6F5F25815AACAC9B8629,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=23E69BFA42FCDDF07AF2C1AAB9059D69,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_25 60E5A027428C12F4EAE8DFB905B3E4B5,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_7" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_7"'
-   Begin Object Class=/Script/Engine.MaterialExpressionTextureSample Name="MaterialExpressionTextureSample_2" ExportPath=/Script/Engine.MaterialExpressionTextureSample'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_7.MaterialExpressionTextureSample_2"'
-   End Object
-   Begin Object Name="MaterialExpressionTextureSample_2" ExportPath=/Script/Engine.MaterialExpressionTextureSample'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_7.MaterialExpressionTextureSample_2"'
-      Coordinates=(Expression=/Script/Engine.MaterialExpressionPanner'"MaterialGraphNode_8.MaterialExpressionPanner_1"')
-      Texture=/Script/Engine.Texture2D'"/Game/Sence/CS/开闸放水/mat_water/TEXTURE/T_FoamMacro_BC.T_FoamMacro_BC"'
-      MaterialExpressionEditorX=-1264
-      MaterialExpressionEditorY=-144
-      MaterialExpressionGuid=A40A1A604CA7765EED8BE6AF7C112F6D
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionTextureSample'"MaterialExpressionTextureSample_2"'
-   NodePosX=-1264
-   NodePosY=-144
-   AdvancedPinDisplay=Hidden
-   NodeGuid=2D21CCF74C591CD5EA7E989661A830E8
-   CustomProperties Pin (PinId=BFC92D7C4C143C3C936C9B95A72CB421,PinName="UVs",PinType.PinCategory="optional",PinType.PinSubCategory="byte",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0",LinkedTo=(MaterialGraphNode_8 CD9D03F5447E2C28E589309A5E848C47,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=14E998AC4C3F554BFB7B6E915D0B22AC,PinName="Tex",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=DAD6D8594C0E3D29BD88D79167F22BA9,PinName="Apply View MipBias",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=A5DD6D944462D5FAA720CBB5DAC1E094,PinName="Mip值模式",PinType.PinCategory="optional",PinType.PinSubCategory="byte",PinType.PinSubCategoryObject=/Script/CoreUObject.Enum'"/Script/Engine.ETextureMipValueMode"',PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="无(使用计算的mip等级)",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=54DE14D646C406D38B115BACFB8DBAFD,PinName="采样器源",PinType.PinCategory="optional",PinType.PinSubCategory="byte",PinType.PinSubCategoryObject=/Script/CoreUObject.Enum'"/Script/Engine.ESamplerSourceMode"',PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="自纹理资产",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=28F7431642CA2AEC7CDDBEAAEE312431,PinName="采样器类型",PinType.PinCategory="optional",PinType.PinSubCategory="byte",PinType.PinSubCategoryObject=/Script/CoreUObject.Enum'"/Script/Engine.EMaterialSamplerType"',PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="颜色",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=6C297FEA480F6F5F25815AACAC9B8629,PinName="RGB",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_6 376DA00449D6FD1FB9A3C29185CEFB25,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=2D615D8841C4D9BD5A80CD94344580D6,PinName="R",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=74A9DB744DEE159156737CB2A5FE8EC6,PinName="G",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="green",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=3FF4BA1340DE939D0B3619992822D83E,PinName="B",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="blue",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=1FEDE6074EBCC7C5134CB18411E0C875,PinName="A",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="alpha",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=21546EFE4948D0B70A5B29AAC045F806,PinName="RGBA",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="rgba",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_8" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_8"'
-   Begin Object Class=/Script/Engine.MaterialExpressionPanner Name="MaterialExpressionPanner_1" ExportPath=/Script/Engine.MaterialExpressionPanner'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_8.MaterialExpressionPanner_1"'
-   End Object
-   Begin Object Name="MaterialExpressionPanner_1" ExportPath=/Script/Engine.MaterialExpressionPanner'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_8.MaterialExpressionPanner_1"'
-      Coordinate=(Expression=/Script/Engine.MaterialExpressionMultiply'"MaterialGraphNode_14.MaterialExpressionMultiply_4"')
-      Speed=(Expression=/Script/Engine.MaterialExpressionAppendVector'"MaterialGraphNode_9.MaterialExpressionAppendVector_2"')
-      MaterialExpressionEditorX=-1680
-      MaterialExpressionEditorY=-224
-      MaterialExpressionGuid=80AAA3184E05A5163EB8F18B6C4416D1
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionPanner'"MaterialExpressionPanner_1"'
-   NodePosX=-1680
-   NodePosY=-224
-   NodeGuid=86DF913D46EAF2619AC701BC9726499E
-   CustomProperties Pin (PinId=1CE0BA0A408D13DFAA64EF9814DFCE53,PinName="Coordinate",PinType.PinCategory="optional",PinType.PinSubCategory="int",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0",LinkedTo=(MaterialGraphNode_14 8D2E6853433402EDB4C98D82F12AC3E2,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=268377A04B94109DC89DC3AC1CD50410,PinName="Time",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=FA0B82E543ACAA3EF62EE0BE54AD1A3B,PinName="Speed",PinType.PinCategory="optional",PinType.PinSubCategory="rg",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="X=0.000 Y=0.000",LinkedTo=(MaterialGraphNode_9 78DEDE17465A6517D14BDDB154EBFF29,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=CD9D03F5447E2C28E589309A5E848C47,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_7 BFC92D7C4C143C3C936C9B95A72CB421,MaterialGraphNode_23 9B144E25433409DA24A0019C77832093,MaterialGraphNode_27 990EF6924C112737DBF78D962E8CB5D1,MaterialGraphNode_31 94740B6841DC0F3106702E81D6CEE7E2,MaterialGraphNode_32 A9A9D57347104AEBE44A469F27FA47A4,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_9" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_9"'
-   Begin Object Class=/Script/Engine.MaterialExpressionAppendVector Name="MaterialExpressionAppendVector_2" ExportPath=/Script/Engine.MaterialExpressionAppendVector'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_9.MaterialExpressionAppendVector_2"'
-   End Object
-   Begin Object Name="MaterialExpressionAppendVector_2" ExportPath=/Script/Engine.MaterialExpressionAppendVector'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_9.MaterialExpressionAppendVector_2"'
-      A=(Expression=/Script/Engine.MaterialExpressionScalarParameter'"MaterialGraphNode_10.MaterialExpressionScalarParameter_6"')
-      B=(Expression=/Script/Engine.MaterialExpressionScalarParameter'"MaterialGraphNode_11.MaterialExpressionScalarParameter_7"')
-      MaterialExpressionEditorX=-1888
-      MaterialExpressionEditorY=-144
-      MaterialExpressionGuid=2ABF8BE548CF6BDFF77904A1C49757B4
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionAppendVector'"MaterialExpressionAppendVector_2"'
-   NodePosX=-1888
-   NodePosY=-144
-   NodeGuid=25F146E44E109092FC8F658777499B0A
-   CustomProperties Pin (PinId=F4CB29D64C7152369FDCFCAA74656C96,PinName="A",PinType.PinCategory="required",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_10 B818F9A3487BBBAAEDED9AB49B41215B,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=ED0CE2DD4BBC2390A1DB748F02DA9D17,PinName="B",PinType.PinCategory="required",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_11 987F887A46145B372500C8B70CAD8B36,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=78DEDE17465A6517D14BDDB154EBFF29,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_8 FA0B82E543ACAA3EF62EE0BE54AD1A3B,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_10" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_10"'
-   Begin Object Class=/Script/Engine.MaterialExpressionScalarParameter Name="MaterialExpressionScalarParameter_6" ExportPath=/Script/Engine.MaterialExpressionScalarParameter'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_10.MaterialExpressionScalarParameter_6"'
-   End Object
-   Begin Object Name="MaterialExpressionScalarParameter_6" ExportPath=/Script/Engine.MaterialExpressionScalarParameter'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_10.MaterialExpressionScalarParameter_6"'
-      DefaultValue=0.001000
-      ParameterName="speed_x"
-      ExpressionGUID=7BEBCC8241EE1CD811F64CB022BC2B44
-      MaterialExpressionEditorX=-2080
-      MaterialExpressionEditorY=-112
-      MaterialExpressionGuid=1CF2B2C948C40325671AA39496B5F69A
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionScalarParameter'"MaterialExpressionScalarParameter_6"'
-   NodePosX=-2080
-   NodePosY=-112
-   bCanRenameNode=True
-   NodeGuid=5BB7507C4383D0E75C14D4A7641A41DE
-   CustomProperties Pin (PinId=E48346BE4DDDCE5EBABAA7A069A62176,PinName="默认值",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0.001",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=B818F9A3487BBBAAEDED9AB49B41215B,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_9 F4CB29D64C7152369FDCFCAA74656C96,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_11" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_11"'
-   Begin Object Class=/Script/Engine.MaterialExpressionScalarParameter Name="MaterialExpressionScalarParameter_7" ExportPath=/Script/Engine.MaterialExpressionScalarParameter'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_11.MaterialExpressionScalarParameter_7"'
-   End Object
-   Begin Object Name="MaterialExpressionScalarParameter_7" ExportPath=/Script/Engine.MaterialExpressionScalarParameter'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_11.MaterialExpressionScalarParameter_7"'
-      DefaultValue=0.585000
-      ParameterName="speed_y"
-      ExpressionGUID=42C0B54547BC61DB4AD128B41B13051C
-      MaterialExpressionEditorX=-2064
-      MaterialExpressionEditorY=-32
-      MaterialExpressionGuid=1CF2B2C948C40325671AA39496B5F69A
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionScalarParameter'"MaterialExpressionScalarParameter_7"'
-   NodePosX=-2064
-   NodePosY=-32
-   bCanRenameNode=True
-   NodeGuid=87ED83AE4738118E837FA4B48BD976F3
-   CustomProperties Pin (PinId=3A5577184D1D0D0BD1551EB1016A82FA,PinName="默认值",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0.585",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=987F887A46145B372500C8B70CAD8B36,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_9 ED0CE2DD4BBC2390A1DB748F02DA9D17,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_12" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_12"'
-   Begin Object Class=/Script/Engine.MaterialExpressionTextureCoordinate Name="MaterialExpressionTextureCoordinate_3" ExportPath=/Script/Engine.MaterialExpressionTextureCoordinate'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_12.MaterialExpressionTextureCoordinate_3"'
-   End Object
-   Begin Object Name="MaterialExpressionTextureCoordinate_3" ExportPath=/Script/Engine.MaterialExpressionTextureCoordinate'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_12.MaterialExpressionTextureCoordinate_3"'
-      MaterialExpressionEditorX=-2096
-      MaterialExpressionEditorY=-384
-      MaterialExpressionGuid=22CC4D124C93DD86EE5C68A5D66F0A0D
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionTextureCoordinate'"MaterialExpressionTextureCoordinate_3"'
-   NodePosX=-2096
-   NodePosY=-384
-   AdvancedPinDisplay=Hidden
-   NodeGuid=6AA2F8344F8569BB1D333FB88A22B1B6
-   CustomProperties Pin (PinId=115CE11D43FF0028B3BDD486D744D64A,PinName="坐标索引",PinType.PinCategory="optional",PinType.PinSubCategory="int",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=4473C1FD4732490202B722A62DB5640A,PinName="U平铺",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="1.0",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=20B3349A4635A4F7EF31C2A7DFB687D6,PinName="V平铺",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="1.0",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=1B9CE65C47DAA27C7020C79B5EA33C73,PinName="解除镜像U",PinType.PinCategory="optional",PinType.PinSubCategory="bool",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="false",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=5F4A7627499EBEBD1598F78E4D992591,PinName="解除镜像V",PinType.PinCategory="optional",PinType.PinSubCategory="bool",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="false",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=F57562414508904598F1B0A894A2BC79,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_14 E37A52684FC236736834E78A5621B51D,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_13" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_13"'
-   Begin Object Class=/Script/Engine.MaterialExpressionAppendVector Name="MaterialExpressionAppendVector_3" ExportPath=/Script/Engine.MaterialExpressionAppendVector'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_13.MaterialExpressionAppendVector_3"'
-   End Object
-   Begin Object Name="MaterialExpressionAppendVector_3" ExportPath=/Script/Engine.MaterialExpressionAppendVector'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_13.MaterialExpressionAppendVector_3"'
-      A=(Expression=/Script/Engine.MaterialExpressionScalarParameter'"MaterialGraphNode_15.MaterialExpressionScalarParameter_8"')
-      B=(Expression=/Script/Engine.MaterialExpressionScalarParameter'"MaterialGraphNode_16.MaterialExpressionScalarParameter_9"')
-      MaterialExpressionEditorX=-2048
-      MaterialExpressionEditorY=-272
-      MaterialExpressionGuid=024D50524A5685C3C954AA8F8010EF2E
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionAppendVector'"MaterialExpressionAppendVector_3"'
-   NodePosX=-2048
-   NodePosY=-272
-   NodeGuid=3BE2041B40A769427F37868F1E20EA2E
-   CustomProperties Pin (PinId=C2A77CCE42518599802ED0A7DD67EE61,PinName="A",PinType.PinCategory="required",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_15 74500FB741A90299E4A7B8AE2D77262F,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=E9ECD0594808675288B2128B35E913F5,PinName="B",PinType.PinCategory="required",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_16 8EECFFC84F0D8C8EEA6F539921F1CE18,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=F9D1A4B744259B68A64C8886D5B59F37,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_14 35B1F96F4B08DAFCD1B946B6F46FE138,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_14" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_14"'
-   Begin Object Class=/Script/Engine.MaterialExpressionMultiply Name="MaterialExpressionMultiply_4" ExportPath=/Script/Engine.MaterialExpressionMultiply'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_14.MaterialExpressionMultiply_4"'
-   End Object
-   Begin Object Name="MaterialExpressionMultiply_4" ExportPath=/Script/Engine.MaterialExpressionMultiply'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_14.MaterialExpressionMultiply_4"'
-      A=(Expression=/Script/Engine.MaterialExpressionTextureCoordinate'"MaterialGraphNode_12.MaterialExpressionTextureCoordinate_3"')
-      B=(Expression=/Script/Engine.MaterialExpressionAppendVector'"MaterialGraphNode_13.MaterialExpressionAppendVector_3"')
-      MaterialExpressionEditorX=-1936
-      MaterialExpressionEditorY=-368
-      MaterialExpressionGuid=D49C63EB4E0FF6592E09E59CB7164AD4
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionMultiply'"MaterialExpressionMultiply_4"'
-   NodePosX=-1936
-   NodePosY=-368
-   NodeGuid=7CC64A8D4086AD9305EAF8B24966CD02
-   CustomProperties Pin (PinId=E37A52684FC236736834E78A5621B51D,PinName="A",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0.0",LinkedTo=(MaterialGraphNode_12 F57562414508904598F1B0A894A2BC79,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=35B1F96F4B08DAFCD1B946B6F46FE138,PinName="B",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="1.0",LinkedTo=(MaterialGraphNode_13 F9D1A4B744259B68A64C8886D5B59F37,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=8D2E6853433402EDB4C98D82F12AC3E2,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_8 1CE0BA0A408D13DFAA64EF9814DFCE53,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_15" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_15"'
-   Begin Object Class=/Script/Engine.MaterialExpressionScalarParameter Name="MaterialExpressionScalarParameter_8" ExportPath=/Script/Engine.MaterialExpressionScalarParameter'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_15.MaterialExpressionScalarParameter_8"'
-   End Object
-   Begin Object Name="MaterialExpressionScalarParameter_8" ExportPath=/Script/Engine.MaterialExpressionScalarParameter'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_15.MaterialExpressionScalarParameter_8"'
-      DefaultValue=-1.000000
-      ParameterName="U"
-      ExpressionGUID=717AC6A4463978567346A5AE0FC074C0
-      MaterialExpressionEditorX=-2208
-      MaterialExpressionEditorY=-304
-      MaterialExpressionGuid=C7DA073944FD3E0D78C817847B61493B
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionScalarParameter'"MaterialExpressionScalarParameter_8"'
-   NodePosX=-2208
-   NodePosY=-304
-   bCanRenameNode=True
-   NodeGuid=B0A415284861D10E461645929E8030D6
-   CustomProperties Pin (PinId=89A5CC004B21AEA78E0702ABF897E574,PinName="默认值",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="-1.0",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=74500FB741A90299E4A7B8AE2D77262F,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_13 C2A77CCE42518599802ED0A7DD67EE61,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_16" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_16"'
-   Begin Object Class=/Script/Engine.MaterialExpressionScalarParameter Name="MaterialExpressionScalarParameter_9" ExportPath=/Script/Engine.MaterialExpressionScalarParameter'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_16.MaterialExpressionScalarParameter_9"'
-   End Object
-   Begin Object Name="MaterialExpressionScalarParameter_9" ExportPath=/Script/Engine.MaterialExpressionScalarParameter'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_16.MaterialExpressionScalarParameter_9"'
-      DefaultValue=1.540000
-      ParameterName="V"
-      ExpressionGUID=0ADA74024BFBF5B131041F999D998A9E
-      MaterialExpressionEditorX=-2208
-      MaterialExpressionEditorY=-224
-      MaterialExpressionGuid=C7DA073944FD3E0D78C817847B61493B
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionScalarParameter'"MaterialExpressionScalarParameter_9"'
-   NodePosX=-2208
-   NodePosY=-224
-   bCanRenameNode=True
-   NodeGuid=759719FB431A1F6FE16DFAB85D605FB5
-   CustomProperties Pin (PinId=AE9645E64DFA4B76FB9A00A7AC0699C2,PinName="默认值",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="1.54",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=8EECFFC84F0D8C8EEA6F539921F1CE18,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_13 E9ECD0594808675288B2128B35E913F5,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_17" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_17"'
-   Begin Object Class=/Script/Engine.MaterialExpressionComponentMask Name="MaterialExpressionComponentMask_0" ExportPath=/Script/Engine.MaterialExpressionComponentMask'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_17.MaterialExpressionComponentMask_0"'
-   End Object
-   Begin Object Name="MaterialExpressionComponentMask_0" ExportPath=/Script/Engine.MaterialExpressionComponentMask'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_17.MaterialExpressionComponentMask_0"'
-      Input=(Expression=/Script/Engine.MaterialExpressionTextureCoordinate'"MaterialGraphNode_18.MaterialExpressionTextureCoordinate_4"')
-      G=True
-      MaterialExpressionEditorX=-1632
-      MaterialExpressionEditorY=208
-      MaterialExpressionGuid=475D22984AC1A7C608EC77B199AC5E24
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionComponentMask'"MaterialExpressionComponentMask_0"'
-   NodePosX=-1632
-   NodePosY=208
-   AdvancedPinDisplay=Hidden
-   NodeGuid=A1DB68294BD41466FAB1588A72ABBB22
-   CustomProperties Pin (PinId=0168A73B47F9589010417AB6A977A813,PinName="Input",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),PinType.PinCategory="required",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_18 DFD2B1984E78AE583F4F1081CAC964F2,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=92E136024E612CF6677F4AB52BB8618D,PinName="R",PinType.PinCategory="optional",PinType.PinSubCategory="bool",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="false",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=FF679BEF4DEA69F5229B4FA5D13EA2F0,PinName="G",PinType.PinCategory="optional",PinType.PinSubCategory="bool",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="true",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=53668328474E823A8223C9A160EA63E7,PinName="B",PinType.PinCategory="optional",PinType.PinSubCategory="bool",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="false",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=91E187A04373A80EE5375888E1765627,PinName="A",PinType.PinCategory="optional",PinType.PinSubCategory="bool",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="false",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=F17E44094B9C45D26FE5889B2C3FD8A9,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_46 1D5CC7B04C4DC1D5980B08A6B4E9D7B0,MaterialGraphNode_47 A2B154C144D0083CE4D546A61049D220,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_18" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_18"'
-   Begin Object Class=/Script/Engine.MaterialExpressionTextureCoordinate Name="MaterialExpressionTextureCoordinate_4" ExportPath=/Script/Engine.MaterialExpressionTextureCoordinate'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_18.MaterialExpressionTextureCoordinate_4"'
-   End Object
-   Begin Object Name="MaterialExpressionTextureCoordinate_4" ExportPath=/Script/Engine.MaterialExpressionTextureCoordinate'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_18.MaterialExpressionTextureCoordinate_4"'
-      UTiling=0.000000
-      MaterialExpressionEditorX=-1776
-      MaterialExpressionEditorY=208
-      MaterialExpressionGuid=F3A876CD42F6F7E4AEB7EEA957FD684C
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionTextureCoordinate'"MaterialExpressionTextureCoordinate_4"'
-   NodePosX=-1776
-   NodePosY=208
-   AdvancedPinDisplay=Hidden
-   NodeGuid=A986BEBA47832340F0FA24AAE7B7C59C
-   CustomProperties Pin (PinId=B7B92EA54E710ACC54355C8F5C5D92BC,PinName="坐标索引",PinType.PinCategory="optional",PinType.PinSubCategory="int",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=284C4F8E4981D3C8CC20A99305F23451,PinName="U平铺",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0.0",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=D0400DEC4D34A2FFF3E05C9CEF5A49A2,PinName="V平铺",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="1.0",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=933A701D49667E2B79205D8A839E94F0,PinName="解除镜像U",PinType.PinCategory="optional",PinType.PinSubCategory="bool",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="false",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=87CEDA5F42470262D4E6EEBB8929A22D,PinName="解除镜像V",PinType.PinCategory="optional",PinType.PinSubCategory="bool",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="false",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=DFD2B1984E78AE583F4F1081CAC964F2,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_17 0168A73B47F9589010417AB6A977A813,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_19" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_19"'
-   Begin Object Class=/Script/Engine.MaterialExpressionPower Name="MaterialExpressionPower_1" ExportPath=/Script/Engine.MaterialExpressionPower'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_19.MaterialExpressionPower_1"'
-   End Object
-   Begin Object Name="MaterialExpressionPower_1" ExportPath=/Script/Engine.MaterialExpressionPower'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_19.MaterialExpressionPower_1"'
-      Base=(Expression=/Script/Engine.MaterialExpressionLinearInterpolate'"MaterialGraphNode_47.MaterialExpressionLinearInterpolate_2"')
-      Exponent=(Expression=/Script/Engine.MaterialExpressionScalarParameter'"MaterialGraphNode_20.MaterialExpressionScalarParameter_5"')
-      MaterialExpressionEditorX=-1184
-      MaterialExpressionEditorY=208
-      MaterialExpressionGuid=B158F7A1410FD00F31856B9FF979EAF3
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionPower'"MaterialExpressionPower_1"'
-   NodePosX=-1184
-   NodePosY=208
-   NodeGuid=80534FBF43EB366F5F534A921B71400D
-   CustomProperties Pin (PinId=D05AA63A4C2AEF147786F9A077225020,PinName="Base",PinType.PinCategory="required",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_47 21619B034ECE64C1AB681E8ADF9C2AC2,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=0F88B366494310B23F60E1AF1CD9B58A,PinName="Exp",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="2.0",LinkedTo=(MaterialGraphNode_20 647013B54EDB083159F23FA114C23A26,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=DC13F9F54FC37A2240616F88540E5B4C,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_21 D164AC5F4BF7C4571F37F48FEBD78D14,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_20" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_20"'
-   Begin Object Class=/Script/Engine.MaterialExpressionScalarParameter Name="MaterialExpressionScalarParameter_5" ExportPath=/Script/Engine.MaterialExpressionScalarParameter'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_20.MaterialExpressionScalarParameter_5"'
-   End Object
-   Begin Object Name="MaterialExpressionScalarParameter_5" ExportPath=/Script/Engine.MaterialExpressionScalarParameter'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_20.MaterialExpressionScalarParameter_5"'
-      DefaultValue=100.000000
-      ParameterName="water_gate"
-      ExpressionGUID=24448CCF4333E5CDC8838D89981A75FE
-      MaterialExpressionEditorX=-1536
-      MaterialExpressionEditorY=304
-      MaterialExpressionGuid=EC750E1F478F579BB319C0B9093FA4EA
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionScalarParameter'"MaterialExpressionScalarParameter_5"'
-   NodePosX=-1536
-   NodePosY=304
-   bCanRenameNode=True
-   NodeGuid=11B81AC94E7C4D59732F27AC2A9B5C64
-   CustomProperties Pin (PinId=687B669E45F7A3B69397B5894ACFE2A9,PinName="默认值",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="100.0",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=647013B54EDB083159F23FA114C23A26,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_19 0F88B366494310B23F60E1AF1CD9B58A,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_21" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_21"'
-   Begin Object Class=/Script/Engine.MaterialExpressionMultiply Name="MaterialExpressionMultiply_5" ExportPath=/Script/Engine.MaterialExpressionMultiply'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_21.MaterialExpressionMultiply_5"'
-   End Object
-   Begin Object Name="MaterialExpressionMultiply_5" ExportPath=/Script/Engine.MaterialExpressionMultiply'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_21.MaterialExpressionMultiply_5"'
-      A=(Expression=/Script/Engine.MaterialExpressionPower'"MaterialGraphNode_38.MaterialExpressionPower_0"')
-      B=(Expression=/Script/Engine.MaterialExpressionPower'"MaterialGraphNode_19.MaterialExpressionPower_1"')
-      MaterialExpressionEditorX=-672
-      MaterialExpressionEditorY=192
-      MaterialExpressionGuid=F5AA87D94EACD49D473450ADB4F0950D
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionMultiply'"MaterialExpressionMultiply_5"'
-   NodePosX=-672
-   NodePosY=192
-   NodeGuid=F42D128544F3A86042C68DAF9918F9D7
-   CustomProperties Pin (PinId=F8AF851F4F86D8D2CAEB728C5F468602,PinName="A",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0.0",LinkedTo=(MaterialGraphNode_38 2671A99841C5863967D9B39B995D671D,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=D164AC5F4BF7C4571F37F48FEBD78D14,PinName="B",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="1.0",LinkedTo=(MaterialGraphNode_19 DC13F9F54FC37A2240616F88540E5B4C,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=313B03994A181920C56E76A70A452085,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_5 45DD06264ECE8D4B4787A2B27478ADF0,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_22" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_22"'
-   Begin Object Class=/Script/Engine.MaterialExpressionVectorParameter Name="MaterialExpressionVectorParameter_0" ExportPath=/Script/Engine.MaterialExpressionVectorParameter'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_22.MaterialExpressionVectorParameter_0"'
-   End Object
-   Begin Object Name="MaterialExpressionVectorParameter_0" ExportPath=/Script/Engine.MaterialExpressionVectorParameter'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_22.MaterialExpressionVectorParameter_0"'
-      DefaultValue=(R=1.000000,G=1.000000,B=1.000000,A=1.000000)
-      ParameterName="color"
-      ExpressionGUID=97657F704D8C80E23B954D943E53CF46
-      MaterialExpressionEditorX=-544
-      MaterialExpressionEditorY=-80
-      MaterialExpressionGuid=F88C5BCE439595DDDEB45D9A1A81238A
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionVectorParameter'"MaterialExpressionVectorParameter_0"'
-   NodePosX=-544
-   NodePosY=-80
-   bCanRenameNode=True
-   NodeGuid=F35D089F417FBD5676ADD783A5E0B3CC
-   CustomProperties Pin (PinId=E525A46D466C40FFB13325A41B5A7608,PinName="默认值",PinType.PinCategory="optional",PinType.PinSubCategory="rgba",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="(R=1.000000,G=1.000000,B=1.000000,A=1.000000)",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=8EB0B3B746FDFD70AAFE1D90D1766932,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_0 9E94B82545A4538DDC6FA6AA68ED159B,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=95D282024E772BF25C920C8588F2F190,PinName="Output2",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=AD276BBC4B87978D6F2030A974F8461B,PinName="Output3",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="green",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=41B0C04D43317BBE76724A8B061B776A,PinName="Output4",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="blue",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=800C6C254DDF03CAD7F026A949209146,PinName="Output5",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="alpha",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_23" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_23"'
-   Begin Object Class=/Script/Engine.MaterialExpressionTextureSample Name="MaterialExpressionTextureSample_5" ExportPath=/Script/Engine.MaterialExpressionTextureSample'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_23.MaterialExpressionTextureSample_5"'
-   End Object
-   Begin Object Name="MaterialExpressionTextureSample_5" ExportPath=/Script/Engine.MaterialExpressionTextureSample'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_23.MaterialExpressionTextureSample_5"'
-      Coordinates=(Expression=/Script/Engine.MaterialExpressionPanner'"MaterialGraphNode_8.MaterialExpressionPanner_1"')
-      Texture=/Script/Engine.Texture2D'"/Game/Sence/CS/开闸放水/mat_water/TEXTURE/T_FlowTexture_BC.T_FlowTexture_BC"'
-      MaterialExpressionEditorX=-1280
-      MaterialExpressionEditorY=-448
-      MaterialExpressionGuid=37541DCD4131DDC0744411BC6B4288CD
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionTextureSample'"MaterialExpressionTextureSample_5"'
-   NodePosX=-1280
-   NodePosY=-448
-   AdvancedPinDisplay=Hidden
-   NodeGuid=E2B3A817419956D185D691807C336D0E
-   CustomProperties Pin (PinId=9B144E25433409DA24A0019C77832093,PinName="UVs",PinType.PinCategory="optional",PinType.PinSubCategory="byte",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0",LinkedTo=(MaterialGraphNode_8 CD9D03F5447E2C28E589309A5E848C47,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=9B01FB714632FFA53A043D9973EA1B7B,PinName="Tex",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=D07E4C9F40411F933E8A38B639FFE431,PinName="Apply View MipBias",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=CAD1E0A646085B0C4FF4F5BD89922F46,PinName="Mip值模式",PinType.PinCategory="optional",PinType.PinSubCategory="byte",PinType.PinSubCategoryObject=/Script/CoreUObject.Enum'"/Script/Engine.ETextureMipValueMode"',PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="无(使用计算的mip等级)",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=DACC82D44A4BA820E1F839B7D74F3BAC,PinName="采样器源",PinType.PinCategory="optional",PinType.PinSubCategory="byte",PinType.PinSubCategoryObject=/Script/CoreUObject.Enum'"/Script/Engine.ESamplerSourceMode"',PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="自纹理资产",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=B179D5EC43099420E4C32299675FEE27,PinName="采样器类型",PinType.PinCategory="optional",PinType.PinSubCategory="byte",PinType.PinSubCategoryObject=/Script/CoreUObject.Enum'"/Script/Engine.EMaterialSamplerType"',PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="颜色",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=353C81E44AD0D2DDB0BF6CB88E10C084,PinName="RGB",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_6 48C01091435BEAB3AD05DE87248D3A61,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=056A2CB6425EF9E00BDD499CFFF85828,PinName="R",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=5F64D2D448C5EB2D7887C8BE49207AA1,PinName="G",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="green",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=FB7C5773446D219AABF9CE86BD93174D,PinName="B",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="blue",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=FDED41F941FE2CD9D9D820813A5EA68A,PinName="A",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="alpha",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=F2694BDA451B736AEE07ACA4050B8F7D,PinName="RGBA",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="rgba",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_24" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_24"'
-   Begin Object Class=/Script/Engine.MaterialExpressionTextureSample Name="MaterialExpressionTextureSample_7" ExportPath=/Script/Engine.MaterialExpressionTextureSample'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_24.MaterialExpressionTextureSample_7"'
-   End Object
-   Begin Object Name="MaterialExpressionTextureSample_7" ExportPath=/Script/Engine.MaterialExpressionTextureSample'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_24.MaterialExpressionTextureSample_7"'
-      Coordinates=(Expression=/Script/Engine.MaterialExpressionMaterialFunctionCall'"MaterialGraphNode_27.MaterialExpressionMaterialFunctionCall_1"')
-      Texture=/Script/Engine.Texture2D'"/Game/Sence/CS/开闸放水/mat_water/TEXTURE/T_FlowTexture_BC.T_FlowTexture_BC"'
-      MaterialExpressionEditorX=-1264
-      MaterialExpressionEditorY=-768
-      MaterialExpressionGuid=37541DCD4131DDC0744411BC6B4288CD
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionTextureSample'"MaterialExpressionTextureSample_7"'
-   NodePosX=-1264
-   NodePosY=-768
-   AdvancedPinDisplay=Hidden
-   NodeGuid=DEE223C24EEC01B386E1A98F63AA8E4A
-   CustomProperties Pin (PinId=ACC118724F0536F531AC7492E263750B,PinName="UVs",PinType.PinCategory="optional",PinType.PinSubCategory="byte",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0",LinkedTo=(MaterialGraphNode_27 3603F4D74CAABD21B025A6AEFD103710,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=89CA4B8C42FB99C915ACBFB7633A210E,PinName="Tex",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=832920474CC3E0AA76D05CBC8CA4022E,PinName="Apply View MipBias",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=C7F0D94C49DCD345916E689962455F57,PinName="Mip值模式",PinType.PinCategory="optional",PinType.PinSubCategory="byte",PinType.PinSubCategoryObject=/Script/CoreUObject.Enum'"/Script/Engine.ETextureMipValueMode"',PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="无(使用计算的mip等级)",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=210F5DB6409236BE709DF49EC8B67026,PinName="采样器源",PinType.PinCategory="optional",PinType.PinSubCategory="byte",PinType.PinSubCategoryObject=/Script/CoreUObject.Enum'"/Script/Engine.ESamplerSourceMode"',PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="自纹理资产",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=81A39736411B42533F27E38B1A21D641,PinName="采样器类型",PinType.PinCategory="optional",PinType.PinSubCategory="byte",PinType.PinSubCategoryObject=/Script/CoreUObject.Enum'"/Script/Engine.EMaterialSamplerType"',PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="颜色",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=64A06ED24A512044F87555B74005BCB6,PinName="RGB",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_25 2F8B0E534B8FD92B289C16A11199FC35,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=67B059D24F45D248878F6A8E119CC7F8,PinName="R",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=EF700BBF41C62F7DBB8C998F1C21DE1B,PinName="G",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="green",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=BC6D3BD5451C9B9C33818BB33DA9D08B,PinName="B",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="blue",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=475FDB004AB0FAC167C459A56F2F0BB3,PinName="A",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="alpha",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=D82F084A4DB60909F8B90299C97E0765,PinName="RGBA",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="rgba",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_25" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_25"'
-   Begin Object Class=/Script/Engine.MaterialExpressionAdd Name="MaterialExpressionAdd_1" ExportPath=/Script/Engine.MaterialExpressionAdd'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_25.MaterialExpressionAdd_1"'
-   End Object
-   Begin Object Name="MaterialExpressionAdd_1" ExportPath=/Script/Engine.MaterialExpressionAdd'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_25.MaterialExpressionAdd_1"'
-      A=(Expression=/Script/Engine.MaterialExpressionTextureSample'"MaterialGraphNode_24.MaterialExpressionTextureSample_7"',Mask=1,MaskR=1,MaskG=1,MaskB=1)
-      B=(Expression=/Script/Engine.MaterialExpressionAdd'"MaterialGraphNode_6.MaterialExpressionAdd_0"')
-      ConstB=0.000000
-      MaterialExpressionEditorX=-768
-      MaterialExpressionEditorY=-400
-      MaterialExpressionGuid=1471EE234212FA677F80E1BD5BDA5D28
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionAdd'"MaterialExpressionAdd_1"'
-   NodePosX=-768
-   NodePosY=-400
-   NodeGuid=DDEEBCA3457207CB7F6CA6BEC5E94A19
-   CustomProperties Pin (PinId=2F8B0E534B8FD92B289C16A11199FC35,PinName="A",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0.0",LinkedTo=(MaterialGraphNode_24 64A06ED24A512044F87555B74005BCB6,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=60E5A027428C12F4EAE8DFB905B3E4B5,PinName="B",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0.0",LinkedTo=(MaterialGraphNode_6 23E69BFA42FCDDF07AF2C1AAB9059D69,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=835BDA18418B3B67829C9C9AB3FDC085,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_29 8F8DCEAF49D9DE3F0768469C2E06C9E6,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_26" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_26"'
-   Begin Object Class=/Script/Engine.MaterialExpressionConstant Name="MaterialExpressionConstant_0" ExportPath=/Script/Engine.MaterialExpressionConstant'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_26.MaterialExpressionConstant_0"'
-   End Object
-   Begin Object Name="MaterialExpressionConstant_0" ExportPath=/Script/Engine.MaterialExpressionConstant'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_26.MaterialExpressionConstant_0"'
-      R=0.500000
-      MaterialExpressionEditorX=-2018
-      MaterialExpressionEditorY=-636
-      MaterialExpressionGuid=C19D716E42554F7FDDF38BA5AE35BD98
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionConstant'"MaterialExpressionConstant_0"'
-   NodePosX=-2018
-   NodePosY=-636
-   NodeGuid=70022F264B2D074DE6FEB89386609DCA
-   CustomProperties Pin (PinId=B6CE0A52458DDF2E9A3808B480BBFB2B,PinName="值",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0.5",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=0DBD6D8340DE80B39E50AF8A4C7EC598,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_27 FEF4D64447533A21A42CC196EA15B0E7,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_27" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_27"'
-   Begin Object Class=/Script/Engine.MaterialExpressionMaterialFunctionCall Name="MaterialExpressionMaterialFunctionCall_1" ExportPath=/Script/Engine.MaterialExpressionMaterialFunctionCall'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_27.MaterialExpressionMaterialFunctionCall_1"'
-   End Object
-   Begin Object Name="MaterialExpressionMaterialFunctionCall_1" ExportPath=/Script/Engine.MaterialExpressionMaterialFunctionCall'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_27.MaterialExpressionMaterialFunctionCall_1"'
-      MaterialFunction=/Script/Engine.MaterialFunction'"/Engine/Functions/Engine_MaterialFunctions02/Texturing/CustomRotator.CustomRotator"'
-      FunctionInputs(0)=(ExpressionInputId=45DE7CC04BCC975C664A2AA5DA134FEF,Input=(Expression=/Script/Engine.MaterialExpressionPanner'"MaterialGraphNode_8.MaterialExpressionPanner_1"',InputName="UVs"))
-      FunctionInputs(1)=(ExpressionInputId=9B6953874136DCE4D8E4E8878152CCCE,Input=(InputName="Rotation Center"))
-      FunctionInputs(2)=(ExpressionInputId=D58F67D84CFD4C9D289810AEE4A3EBC8,Input=(Expression=/Script/Engine.MaterialExpressionConstant'"MaterialGraphNode_26.MaterialExpressionConstant_0"',InputName="Rotation Angle (0-1)"))
-      FunctionOutputs(0)=(ExpressionOutputId=35E8F8F94CC8CE3D65F114A234D0BD5E,Output=(OutputName="Rotated Values"))
-      MaterialExpressionEditorX=-1872
-      MaterialExpressionEditorY=-768
-      MaterialExpressionGuid=78E12A414EBB8D19570318A22079598E
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-      Outputs(0)=(OutputName="Rotated Values")
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionMaterialFunctionCall'"MaterialExpressionMaterialFunctionCall_1"'
-   NodePosX=-1872
-   NodePosY=-768
-   NodeGuid=9254B6544E3CB0A1E6F7869E7BA99339
-   CustomProperties Pin (PinId=990EF6924C112737DBF78D962E8CB5D1,PinName="UVs (V2)",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_8 CD9D03F5447E2C28E589309A5E848C47,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=BB8D2F4B42EF13512F74D6A858A6CE61,PinName="Rotation Center (V2)",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=FEF4D64447533A21A42CC196EA15B0E7,PinName="Rotation Angle (0-1) (S)",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_26 0DBD6D8340DE80B39E50AF8A4C7EC598,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=3603F4D74CAABD21B025A6AEFD103710,PinName="Rotated Values",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_24 ACC118724F0536F531AC7492E263750B,MaterialGraphNode_28 6D7BA3204701F09CB82E7DB7A2176A67,MaterialGraphNode_33 262B92ED46F54DDD38CCC2AA2F130DD3,MaterialGraphNode_34 2CA31B7B4BEC69695666CDB6917AE3DE,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_28" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_28"'
-   Begin Object Class=/Script/Engine.MaterialExpressionTextureSample Name="MaterialExpressionTextureSample_0" ExportPath=/Script/Engine.MaterialExpressionTextureSample'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_28.MaterialExpressionTextureSample_0"'
-   End Object
-   Begin Object Name="MaterialExpressionTextureSample_0" ExportPath=/Script/Engine.MaterialExpressionTextureSample'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_28.MaterialExpressionTextureSample_0"'
-      Coordinates=(Expression=/Script/Engine.MaterialExpressionMaterialFunctionCall'"MaterialGraphNode_27.MaterialExpressionMaterialFunctionCall_1"')
-      Texture=/Script/Engine.Texture2D'"/Game/Sence/CS/开闸放水/mat_water/TEXTURE/T_FoamMacro_BC.T_FoamMacro_BC"'
-      MaterialExpressionEditorX=-1264
-      MaterialExpressionEditorY=-1104
-      MaterialExpressionGuid=A40A1A604CA7765EED8BE6AF7C112F6D
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionTextureSample'"MaterialExpressionTextureSample_0"'
-   NodePosX=-1264
-   NodePosY=-1104
-   AdvancedPinDisplay=Hidden
-   NodeGuid=733DAFEB452FFA21AA0B50A862FAA65E
-   CustomProperties Pin (PinId=6D7BA3204701F09CB82E7DB7A2176A67,PinName="UVs",PinType.PinCategory="optional",PinType.PinSubCategory="byte",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0",LinkedTo=(MaterialGraphNode_27 3603F4D74CAABD21B025A6AEFD103710,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=12A8586F49CCC573E6D5D98E352FF835,PinName="Tex",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=9385AB04435E43C733F2D3B0B8F901C8,PinName="Apply View MipBias",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=B4FC69A745FDCA71C764E389F2E5D434,PinName="Mip值模式",PinType.PinCategory="optional",PinType.PinSubCategory="byte",PinType.PinSubCategoryObject=/Script/CoreUObject.Enum'"/Script/Engine.ETextureMipValueMode"',PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="无(使用计算的mip等级)",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=5577AF4B4417F4756DACAC90CAEE98D9,PinName="采样器源",PinType.PinCategory="optional",PinType.PinSubCategory="byte",PinType.PinSubCategoryObject=/Script/CoreUObject.Enum'"/Script/Engine.ESamplerSourceMode"',PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="自纹理资产",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=848373E140D4B905B27BAB961DC2E47D,PinName="采样器类型",PinType.PinCategory="optional",PinType.PinSubCategory="byte",PinType.PinSubCategoryObject=/Script/CoreUObject.Enum'"/Script/Engine.EMaterialSamplerType"',PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="颜色",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=9F00BA10457234C0AAF00CB72F267DF3,PinName="RGB",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_29 7F4997C84E6017DD4C002899D9F855F3,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=A9B3B63A48B106DEC60AB98D442B4A07,PinName="R",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=465511C7456CD803DC648B8EBE80BBF3,PinName="G",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="green",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=CBBC725D47CE828C13D5A3B5ADF55126,PinName="B",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="blue",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=12FC426D48EA1D3AB83ED0BAF0174BDA,PinName="A",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="alpha",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=F3B00BF84A668438AF135E9D8895F291,PinName="RGBA",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="rgba",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_29" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_29"'
-   Begin Object Class=/Script/Engine.MaterialExpressionAdd Name="MaterialExpressionAdd_2" ExportPath=/Script/Engine.MaterialExpressionAdd'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_29.MaterialExpressionAdd_2"'
-   End Object
-   Begin Object Name="MaterialExpressionAdd_2" ExportPath=/Script/Engine.MaterialExpressionAdd'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_29.MaterialExpressionAdd_2"'
-      A=(Expression=/Script/Engine.MaterialExpressionTextureSample'"MaterialGraphNode_28.MaterialExpressionTextureSample_0"',Mask=1,MaskR=1,MaskG=1,MaskB=1)
-      B=(Expression=/Script/Engine.MaterialExpressionAdd'"MaterialGraphNode_25.MaterialExpressionAdd_1"')
-      ConstB=0.000000
-      MaterialExpressionEditorX=-592
-      MaterialExpressionEditorY=-512
-      MaterialExpressionGuid=1471EE234212FA677F80E1BD5BDA5D28
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionAdd'"MaterialExpressionAdd_2"'
-   NodePosX=-592
-   NodePosY=-512
-   NodeGuid=55491FFF49297008615CBA9CD397E6C3
-   CustomProperties Pin (PinId=7F4997C84E6017DD4C002899D9F855F3,PinName="A",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0.0",LinkedTo=(MaterialGraphNode_28 9F00BA10457234C0AAF00CB72F267DF3,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=8F8DCEAF49D9DE3F0768469C2E06C9E6,PinName="B",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0.0",LinkedTo=(MaterialGraphNode_25 835BDA18418B3B67829C9C9AB3FDC085,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=D7520C094D2914988D384594A8527DEE,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_38 C1FAA0C8467F60B2B7BF28BC4F9B0CE3,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_30" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_30"'
-   Begin Object Class=/Script/Engine.MaterialExpressionTextureSampleParameter2D Name="MaterialExpressionTextureSampleParameter2D_0" ExportPath=/Script/Engine.MaterialExpressionTextureSampleParameter2D'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_30.MaterialExpressionTextureSampleParameter2D_0"'
-   End Object
-   Begin Object Name="MaterialExpressionTextureSampleParameter2D_0" ExportPath=/Script/Engine.MaterialExpressionTextureSampleParameter2D'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_30.MaterialExpressionTextureSampleParameter2D_0"'
-      ParameterName="Mask"
-      ExpressionGUID=0A1958224D5699515656109358E2D5D0
-      Texture=/Script/Engine.Texture2D'"/Game/Sence/CS/开闸放水/mat_water/TEXTURE/MASK_003.MASK_003"'
-      MaterialExpressionEditorX=-896
-      MaterialExpressionEditorY=400
-      MaterialExpressionGuid=B2E565344F7C2239106E94BBC8D98372
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionTextureSampleParameter2D'"MaterialExpressionTextureSampleParameter2D_0"'
-   NodePosX=-896
-   NodePosY=400
-   AdvancedPinDisplay=Hidden
-   bCanRenameNode=True
-   NodeGuid=8EDB47F148006E1E5FEFE79EF651FD28
-   CustomProperties Pin (PinId=7CE27AFF4752812B2A1353895C5E1F7A,PinName="UVs",PinType.PinCategory="optional",PinType.PinSubCategory="byte",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=22F132924C7FFA192E74E68AAE4F230F,PinName="Apply View MipBias",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=B245414A4D22BBBA402045812CD0CB47,PinName="Mip值模式",PinType.PinCategory="optional",PinType.PinSubCategory="byte",PinType.PinSubCategoryObject=/Script/CoreUObject.Enum'"/Script/Engine.ETextureMipValueMode"',PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="无(使用计算的mip等级)",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=9806C89F41386EDE4A7033B0E0FE62F9,PinName="采样器源",PinType.PinCategory="optional",PinType.PinSubCategory="byte",PinType.PinSubCategoryObject=/Script/CoreUObject.Enum'"/Script/Engine.ESamplerSourceMode"',PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="自纹理资产",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=3C9AEE1E44C4C3FEE67D168AB431229F,PinName="采样器类型",PinType.PinCategory="optional",PinType.PinSubCategory="byte",PinType.PinSubCategoryObject=/Script/CoreUObject.Enum'"/Script/Engine.EMaterialSamplerType"',PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="颜色",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=491E43EB4BAAF4DFE6DB54A4DAC53575,PinName="RGB",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_40 1D4F5CD54E6A230A0C15E1988839A572,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=988058C445E04879501D24AAF318AB19,PinName="R",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=B3F0E2DE4CB13BAFCDDB74A38EF87ACD,PinName="G",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="green",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=5B609CE94D5D4E7F9EE55BAE0ABD1D7C,PinName="B",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="blue",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=4268F1384B3FA8E69B0A918956D8D425,PinName="A",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="alpha",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=2D618E0D413F5847E7DCE2B9BFDAEA01,PinName="RGBA",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="rgba",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_31" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_31"'
-   Begin Object Class=/Script/Engine.MaterialExpressionTextureSample Name="MaterialExpressionTextureSample_1" ExportPath=/Script/Engine.MaterialExpressionTextureSample'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_31.MaterialExpressionTextureSample_1"'
-   End Object
-   Begin Object Name="MaterialExpressionTextureSample_1" ExportPath=/Script/Engine.MaterialExpressionTextureSample'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_31.MaterialExpressionTextureSample_1"'
-      Coordinates=(Expression=/Script/Engine.MaterialExpressionPanner'"MaterialGraphNode_8.MaterialExpressionPanner_1"')
-      Texture=/Script/Engine.Texture2D'"/Game/Sence/CS/开闸放水/mat_water/TEXTURE/T_FoamMacro_BC_NORM.T_FoamMacro_BC_NORM"'
-      SamplerType=SAMPLERTYPE_Normal
-      MaterialExpressionEditorX=-1232
-      MaterialExpressionEditorY=1392
-      MaterialExpressionGuid=A40A1A604CA7765EED8BE6AF7C112F6D
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionTextureSample'"MaterialExpressionTextureSample_1"'
-   NodePosX=-1232
-   NodePosY=1392
-   AdvancedPinDisplay=Hidden
-   NodeGuid=D67019A5443DCED20D5AA8BCDBD01971
-   CustomProperties Pin (PinId=94740B6841DC0F3106702E81D6CEE7E2,PinName="UVs",PinType.PinCategory="optional",PinType.PinSubCategory="byte",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0",LinkedTo=(MaterialGraphNode_8 CD9D03F5447E2C28E589309A5E848C47,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=5F03E7F94C76C6E2DEF7D3803E48D1EE,PinName="Tex",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=C400D7924606CF52F2F31ABF11278770,PinName="Apply View MipBias",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=287D447F4C3E170BE25FFF8B96ABD9BD,PinName="Mip值模式",PinType.PinCategory="optional",PinType.PinSubCategory="byte",PinType.PinSubCategoryObject=/Script/CoreUObject.Enum'"/Script/Engine.ETextureMipValueMode"',PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="无(使用计算的mip等级)",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=9A2836B2479A050D7596709690F97941,PinName="采样器源",PinType.PinCategory="optional",PinType.PinSubCategory="byte",PinType.PinSubCategoryObject=/Script/CoreUObject.Enum'"/Script/Engine.ESamplerSourceMode"',PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="自纹理资产",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=5B40B30B496055296BE116B0A1DDE807,PinName="采样器类型",PinType.PinCategory="optional",PinType.PinSubCategory="byte",PinType.PinSubCategoryObject=/Script/CoreUObject.Enum'"/Script/Engine.EMaterialSamplerType"',PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="法线",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=E6DB5658421B7E9FD469E9B382F1B1CB,PinName="RGB",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_35 AF8E66BB4E56269A7F07EBA0C095B93F,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=5C082297482A3DFF2D1A57B75E5D5EFD,PinName="R",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=70E8806D4C7AA4708A4571933FC7ADB0,PinName="G",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="green",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=8918E01A4595877E2CCD98B1DDD51490,PinName="B",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="blue",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=3C2C3D144BC8CE429EC2FEA64377E951,PinName="A",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="alpha",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=5DFE04BD4D5B37E3D762759B0D1900C5,PinName="RGBA",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="rgba",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_32" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_32"'
-   Begin Object Class=/Script/Engine.MaterialExpressionTextureSample Name="MaterialExpressionTextureSample_3" ExportPath=/Script/Engine.MaterialExpressionTextureSample'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_32.MaterialExpressionTextureSample_3"'
-   End Object
-   Begin Object Name="MaterialExpressionTextureSample_3" ExportPath=/Script/Engine.MaterialExpressionTextureSample'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_32.MaterialExpressionTextureSample_3"'
-      Coordinates=(Expression=/Script/Engine.MaterialExpressionPanner'"MaterialGraphNode_8.MaterialExpressionPanner_1"')
-      Texture=/Script/Engine.Texture2D'"/Game/Sence/CS/开闸放水/mat_water/TEXTURE/T_FlowTexture_BC_NORM.T_FlowTexture_BC_NORM"'
-      SamplerType=SAMPLERTYPE_Normal
-      MaterialExpressionEditorX=-1248
-      MaterialExpressionEditorY=1104
-      MaterialExpressionGuid=37541DCD4131DDC0744411BC6B4288CD
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionTextureSample'"MaterialExpressionTextureSample_3"'
-   NodePosX=-1248
-   NodePosY=1104
-   AdvancedPinDisplay=Hidden
-   NodeGuid=C7CF94DA48D2335F564C2C8AF4B3E269
-   CustomProperties Pin (PinId=A9A9D57347104AEBE44A469F27FA47A4,PinName="UVs",PinType.PinCategory="optional",PinType.PinSubCategory="byte",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0",LinkedTo=(MaterialGraphNode_8 CD9D03F5447E2C28E589309A5E848C47,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=0DA217F541FFE2D2D12D77938DFD142E,PinName="Tex",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=08764311435E48AEC6208FBA9F09670E,PinName="Apply View MipBias",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=EC0362A44C703C80391FCC938B3FBBC4,PinName="Mip值模式",PinType.PinCategory="optional",PinType.PinSubCategory="byte",PinType.PinSubCategoryObject=/Script/CoreUObject.Enum'"/Script/Engine.ETextureMipValueMode"',PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="无(使用计算的mip等级)",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=AFF79D21463CD881B4D18AAABEE8BD00,PinName="采样器源",PinType.PinCategory="optional",PinType.PinSubCategory="byte",PinType.PinSubCategoryObject=/Script/CoreUObject.Enum'"/Script/Engine.ESamplerSourceMode"',PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="自纹理资产",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=8493BC7A48BFED58CCDF368E4D151FDD,PinName="采样器类型",PinType.PinCategory="optional",PinType.PinSubCategory="byte",PinType.PinSubCategoryObject=/Script/CoreUObject.Enum'"/Script/Engine.EMaterialSamplerType"',PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="法线",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=C853F09C45B7F1F62DF07D8EDF56DD0C,PinName="RGB",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_35 95AD8E0E4C561DA3A28868A5115CB7B5,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=71F9590F45A219514ABDD3A90DF74C62,PinName="R",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=74EE561040A32A8A25A4CE92FB19F30C,PinName="G",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="green",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=2C2FACF145693F36F08CE18EDC1F3615,PinName="B",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="blue",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=BF5C02744E3083487792CCA27A6DFD3A,PinName="A",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="alpha",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=92B49C4F408B8F28306F2886ACDA7497,PinName="RGBA",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="rgba",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_33" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_33"'
-   Begin Object Class=/Script/Engine.MaterialExpressionTextureSample Name="MaterialExpressionTextureSample_4" ExportPath=/Script/Engine.MaterialExpressionTextureSample'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_33.MaterialExpressionTextureSample_4"'
-   End Object
-   Begin Object Name="MaterialExpressionTextureSample_4" ExportPath=/Script/Engine.MaterialExpressionTextureSample'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_33.MaterialExpressionTextureSample_4"'
-      Coordinates=(Expression=/Script/Engine.MaterialExpressionMaterialFunctionCall'"MaterialGraphNode_27.MaterialExpressionMaterialFunctionCall_1"')
-      Texture=/Script/Engine.Texture2D'"/Game/Sence/CS/开闸放水/mat_water/TEXTURE/T_FlowTexture_BC_NORM.T_FlowTexture_BC_NORM"'
-      SamplerType=SAMPLERTYPE_Normal
-      MaterialExpressionEditorX=-1248
-      MaterialExpressionEditorY=816
-      MaterialExpressionGuid=37541DCD4131DDC0744411BC6B4288CD
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionTextureSample'"MaterialExpressionTextureSample_4"'
-   NodePosX=-1248
-   NodePosY=816
-   AdvancedPinDisplay=Hidden
-   NodeGuid=17278F6A47E783A90C7DF2974C75E3FD
-   CustomProperties Pin (PinId=262B92ED46F54DDD38CCC2AA2F130DD3,PinName="UVs",PinType.PinCategory="optional",PinType.PinSubCategory="byte",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0",LinkedTo=(MaterialGraphNode_27 3603F4D74CAABD21B025A6AEFD103710,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=A0E26E8945C7FEC57F1E768E28E5D638,PinName="Tex",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=46CE4B4A48A537AE4BA4C388D327301F,PinName="Apply View MipBias",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=71E5B573408FA95F7407469170BC21B5,PinName="Mip值模式",PinType.PinCategory="optional",PinType.PinSubCategory="byte",PinType.PinSubCategoryObject=/Script/CoreUObject.Enum'"/Script/Engine.ETextureMipValueMode"',PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="无(使用计算的mip等级)",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=3B53F65F429BA9E4FF46C3931DF7D77A,PinName="采样器源",PinType.PinCategory="optional",PinType.PinSubCategory="byte",PinType.PinSubCategoryObject=/Script/CoreUObject.Enum'"/Script/Engine.ESamplerSourceMode"',PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="自纹理资产",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=ABBB86BE4EA713AC25FB50B3A15F6FE0,PinName="采样器类型",PinType.PinCategory="optional",PinType.PinSubCategory="byte",PinType.PinSubCategoryObject=/Script/CoreUObject.Enum'"/Script/Engine.EMaterialSamplerType"',PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="法线",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=042F7D444BF98187BDBA4BA7F0224F04,PinName="RGB",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_36 677063C641160B033D625DBCE297615B,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=805468B941403FF7F1DC75AEABAA4CCD,PinName="R",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=152BC3A34FAB56279DC132BA1824693E,PinName="G",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="green",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=AB018EAD422A0A952501CE96C8040905,PinName="B",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="blue",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=CCEDB5B741BDF41D0AC567B6CFC43596,PinName="A",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="alpha",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=0AF19FF6463F10EDF5C007B79ECBC947,PinName="RGBA",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="rgba",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_34" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_34"'
-   Begin Object Class=/Script/Engine.MaterialExpressionTextureSample Name="MaterialExpressionTextureSample_6" ExportPath=/Script/Engine.MaterialExpressionTextureSample'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_34.MaterialExpressionTextureSample_6"'
-   End Object
-   Begin Object Name="MaterialExpressionTextureSample_6" ExportPath=/Script/Engine.MaterialExpressionTextureSample'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_34.MaterialExpressionTextureSample_6"'
-      Coordinates=(Expression=/Script/Engine.MaterialExpressionMaterialFunctionCall'"MaterialGraphNode_27.MaterialExpressionMaterialFunctionCall_1"')
-      Texture=/Script/Engine.Texture2D'"/Game/Sence/CS/开闸放水/mat_water/TEXTURE/T_FoamMacro_BC_NORM.T_FoamMacro_BC_NORM"'
-      SamplerType=SAMPLERTYPE_Normal
-      MaterialExpressionEditorX=-1232
-      MaterialExpressionEditorY=576
-      MaterialExpressionGuid=A40A1A604CA7765EED8BE6AF7C112F6D
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionTextureSample'"MaterialExpressionTextureSample_6"'
-   NodePosX=-1232
-   NodePosY=576
-   AdvancedPinDisplay=Hidden
-   NodeGuid=01E060E849CA2A6DB203EB9661BFFD37
-   CustomProperties Pin (PinId=2CA31B7B4BEC69695666CDB6917AE3DE,PinName="UVs",PinType.PinCategory="optional",PinType.PinSubCategory="byte",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0",LinkedTo=(MaterialGraphNode_27 3603F4D74CAABD21B025A6AEFD103710,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=FAB5CE364880963D503B018D8CCD394C,PinName="Tex",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=DFAACDF74BC59E4C97A552B6843D7724,PinName="Apply View MipBias",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=B80B5DF643AE8ABB498AE99B77D0B4E6,PinName="Mip值模式",PinType.PinCategory="optional",PinType.PinSubCategory="byte",PinType.PinSubCategoryObject=/Script/CoreUObject.Enum'"/Script/Engine.ETextureMipValueMode"',PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="无(使用计算的mip等级)",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=975353A24427C9DE5DAA6381A7660D8E,PinName="采样器源",PinType.PinCategory="optional",PinType.PinSubCategory="byte",PinType.PinSubCategoryObject=/Script/CoreUObject.Enum'"/Script/Engine.ESamplerSourceMode"',PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="自纹理资产",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=01890F724371CDAB258DFC81CFEF8F97,PinName="采样器类型",PinType.PinCategory="optional",PinType.PinSubCategory="byte",PinType.PinSubCategoryObject=/Script/CoreUObject.Enum'"/Script/Engine.EMaterialSamplerType"',PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="法线",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=E7AA9CF64DE172EAD6CE99B87E69E501,PinName="RGB",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_3 256B87854E83A5A1D7B70DBA8AD32894,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=6054F438459BF4913BD54D8041695239,PinName="R",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=DAE07C4D4A82AB2FAD9CE99C2EBB4527,PinName="G",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="green",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=0366846D429800E47EC8CCB6CF746A3B,PinName="B",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="blue",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=332402AA481A1E4946DE669C0E735724,PinName="A",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="alpha",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=3E3EE09F4860AA8D0AFC10825003B824,PinName="RGBA",Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="rgba",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_35" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_35"'
-   Begin Object Class=/Script/Engine.MaterialExpressionAdd Name="MaterialExpressionAdd_3" ExportPath=/Script/Engine.MaterialExpressionAdd'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_35.MaterialExpressionAdd_3"'
-   End Object
-   Begin Object Name="MaterialExpressionAdd_3" ExportPath=/Script/Engine.MaterialExpressionAdd'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_35.MaterialExpressionAdd_3"'
-      A=(Expression=/Script/Engine.MaterialExpressionTextureSample'"MaterialGraphNode_32.MaterialExpressionTextureSample_3"',Mask=1,MaskR=1,MaskG=1,MaskB=1)
-      B=(Expression=/Script/Engine.MaterialExpressionTextureSample'"MaterialGraphNode_31.MaterialExpressionTextureSample_1"',Mask=1,MaskR=1,MaskG=1,MaskB=1)
-      ConstB=0.000000
-      MaterialExpressionEditorX=-912
-      MaterialExpressionEditorY=1280
-      MaterialExpressionGuid=1471EE234212FA677F80E1BD5BDA5D28
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionAdd'"MaterialExpressionAdd_3"'
-   NodePosX=-912
-   NodePosY=1280
-   NodeGuid=5FC3B52A422CA9FF807DD2824CBB5480
-   CustomProperties Pin (PinId=95AD8E0E4C561DA3A28868A5115CB7B5,PinName="A",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0.0",LinkedTo=(MaterialGraphNode_32 C853F09C45B7F1F62DF07D8EDF56DD0C,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=AF8E66BB4E56269A7F07EBA0C095B93F,PinName="B",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0.0",LinkedTo=(MaterialGraphNode_31 E6DB5658421B7E9FD469E9B382F1B1CB,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=538B9D484050C399143A4F8764C5CCBB,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_36 F91DF5B54202178A2350E08EFB5E59F1,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_36" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_36"'
-   Begin Object Class=/Script/Engine.MaterialExpressionAdd Name="MaterialExpressionAdd_4" ExportPath=/Script/Engine.MaterialExpressionAdd'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_36.MaterialExpressionAdd_4"'
-   End Object
-   Begin Object Name="MaterialExpressionAdd_4" ExportPath=/Script/Engine.MaterialExpressionAdd'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_36.MaterialExpressionAdd_4"'
-      A=(Expression=/Script/Engine.MaterialExpressionTextureSample'"MaterialGraphNode_33.MaterialExpressionTextureSample_4"',Mask=1,MaskR=1,MaskG=1,MaskB=1)
-      B=(Expression=/Script/Engine.MaterialExpressionAdd'"MaterialGraphNode_35.MaterialExpressionAdd_3"')
-      ConstB=0.000000
-      MaterialExpressionEditorX=-720
-      MaterialExpressionEditorY=1184
-      MaterialExpressionGuid=1471EE234212FA677F80E1BD5BDA5D28
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionAdd'"MaterialExpressionAdd_4"'
-   NodePosX=-720
-   NodePosY=1184
-   NodeGuid=FC9CCEE4418E44EF9A3F1398C21AF4EE
-   CustomProperties Pin (PinId=677063C641160B033D625DBCE297615B,PinName="A",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0.0",LinkedTo=(MaterialGraphNode_33 042F7D444BF98187BDBA4BA7F0224F04,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=F91DF5B54202178A2350E08EFB5E59F1,PinName="B",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0.0",LinkedTo=(MaterialGraphNode_35 538B9D484050C399143A4F8764C5CCBB,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=F4515358467330A1099A4E828DB30BEF,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_3 7E8D8DBA4D2E373DFE6D16966AFE368C,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_37" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_37"'
-   Begin Object Class=/Script/Engine.MaterialExpressionScalarParameter Name="MaterialExpressionScalarParameter_1" ExportPath=/Script/Engine.MaterialExpressionScalarParameter'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_37.MaterialExpressionScalarParameter_1"'
-   End Object
-   Begin Object Name="MaterialExpressionScalarParameter_1" ExportPath=/Script/Engine.MaterialExpressionScalarParameter'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_37.MaterialExpressionScalarParameter_1"'
-      DefaultValue=5.532769
-      ParameterName="opaque_power"
-      ExpressionGUID=5D78415A447C2F0C34646083AFA872D6
-      MaterialExpressionEditorX=-320
-      MaterialExpressionEditorY=400
-      MaterialExpressionGuid=DD8A1CDF441DBB6A0BB5CA9C500B51EE
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionScalarParameter'"MaterialExpressionScalarParameter_1"'
-   NodePosX=-320
-   NodePosY=400
-   bCanRenameNode=True
-   NodeGuid=D280BC2B4DD3C04A1FEFF0A3108DA5F7
-   CustomProperties Pin (PinId=E608137041DCC96C1A1CCE82D7A7F58F,PinName="默认值",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="5.532769",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=B6BF537C473081DAF90192AB09EEA7AF,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_4 BC8503D24687B75A24B9D6B4171B6D8F,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_38" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_38"'
-   Begin Object Class=/Script/Engine.MaterialExpressionPower Name="MaterialExpressionPower_0" ExportPath=/Script/Engine.MaterialExpressionPower'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_38.MaterialExpressionPower_0"'
-   End Object
-   Begin Object Name="MaterialExpressionPower_0" ExportPath=/Script/Engine.MaterialExpressionPower'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_38.MaterialExpressionPower_0"'
-      Base=(Expression=/Script/Engine.MaterialExpressionAdd'"MaterialGraphNode_29.MaterialExpressionAdd_2"')
-      Exponent=(Expression=/Script/Engine.MaterialExpressionScalarParameter'"MaterialGraphNode_39.MaterialExpressionScalarParameter_2"')
-      MaterialExpressionEditorX=-651
-      MaterialExpressionEditorY=-234
-      MaterialExpressionGuid=B8D4B251404E8D48A7173F82358C7A4E
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionPower'"MaterialExpressionPower_0"'
-   NodePosX=-651
-   NodePosY=-234
-   NodeGuid=29AAE8DC4F169687465CBC85BEDADEF8
-   CustomProperties Pin (PinId=C1FAA0C8467F60B2B7BF28BC4F9B0CE3,PinName="Base",PinType.PinCategory="required",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_29 D7520C094D2914988D384594A8527DEE,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=844DD6FC4EBBB4FAC16C93ACB4ED9720,PinName="Exp",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="2.0",LinkedTo=(MaterialGraphNode_39 F513B09949485DBF1EAB998C67BB6205,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=2671A99841C5863967D9B39B995D671D,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_21 F8AF851F4F86D8D2CAEB728C5F468602,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_39" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_39"'
-   Begin Object Class=/Script/Engine.MaterialExpressionScalarParameter Name="MaterialExpressionScalarParameter_2" ExportPath=/Script/Engine.MaterialExpressionScalarParameter'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_39.MaterialExpressionScalarParameter_2"'
-   End Object
-   Begin Object Name="MaterialExpressionScalarParameter_2" ExportPath=/Script/Engine.MaterialExpressionScalarParameter'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_39.MaterialExpressionScalarParameter_2"'
-      DefaultValue=0.538000
-      ParameterName="power"
-      ExpressionGUID=43E6DC8740B5306CE4F1838FD04D1425
-      MaterialExpressionEditorX=-816
-      MaterialExpressionEditorY=-128
-      MaterialExpressionGuid=6339469D437BE1428789B9A5494D6BCB
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionScalarParameter'"MaterialExpressionScalarParameter_2"'
-   NodePosX=-816
-   NodePosY=-128
-   bCanRenameNode=True
-   NodeGuid=66F003C849D1D3CF0B0ECF902D419458
-   CustomProperties Pin (PinId=67D1751B4F6DE2EC32BB6981BF378A50,PinName="默认值",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0.538",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=F513B09949485DBF1EAB998C67BB6205,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_38 844DD6FC4EBBB4FAC16C93ACB4ED9720,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_40" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_40"'
-   Begin Object Class=/Script/Engine.MaterialExpressionMultiply Name="MaterialExpressionMultiply_2" ExportPath=/Script/Engine.MaterialExpressionMultiply'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_40.MaterialExpressionMultiply_2"'
-   End Object
-   Begin Object Name="MaterialExpressionMultiply_2" ExportPath=/Script/Engine.MaterialExpressionMultiply'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_40.MaterialExpressionMultiply_2"'
-      A=(Expression=/Script/Engine.MaterialExpressionTextureSampleParameter2D'"MaterialGraphNode_30.MaterialExpressionTextureSampleParameter2D_0"',Mask=1,MaskR=1,MaskG=1,MaskB=1)
-      B=(Expression=/Script/Engine.MaterialExpressionScalarParameter'"MaterialGraphNode_41.MaterialExpressionScalarParameter_0"')
-      MaterialExpressionEditorX=-560
-      MaterialExpressionEditorY=416
-      MaterialExpressionGuid=FE6B5F6E4409B95C989005844912EA21
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionMultiply'"MaterialExpressionMultiply_2"'
-   NodePosX=-560
-   NodePosY=416
-   NodeGuid=612D18254EBBB7117E1D63BE202BCA3A
-   CustomProperties Pin (PinId=1D4F5CD54E6A230A0C15E1988839A572,PinName="A",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0.0",LinkedTo=(MaterialGraphNode_30 491E43EB4BAAF4DFE6DB54A4DAC53575,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=05EE55C04888CC67DF48799E8297BE0D,PinName="B",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="1.0",LinkedTo=(MaterialGraphNode_41 E16DE16742AB2BF69EA2BA923C84B019,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=7CDB7581450212426090E880F0B514E8,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_5 0B95846945C5FEBB9C46F885EAD2B6F5,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_41" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_41"'
-   Begin Object Class=/Script/Engine.MaterialExpressionScalarParameter Name="MaterialExpressionScalarParameter_0" ExportPath=/Script/Engine.MaterialExpressionScalarParameter'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_41.MaterialExpressionScalarParameter_0"'
-   End Object
-   Begin Object Name="MaterialExpressionScalarParameter_0" ExportPath=/Script/Engine.MaterialExpressionScalarParameter'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_41.MaterialExpressionScalarParameter_0"'
-      DefaultValue=0.547800
-      ParameterName="边缘遮罩"
-      ExpressionGUID=58CF43CF4FF67D693F58E5B4CA4CB870
-      MaterialExpressionEditorX=-588
-      MaterialExpressionEditorY=587
-      MaterialExpressionGuid=072F0F8144E625B2DA198D911B47FF1F
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionScalarParameter'"MaterialExpressionScalarParameter_0"'
-   NodePosX=-588
-   NodePosY=587
-   bCanRenameNode=True
-   NodeGuid=B7898DBB41FC5D91C69BA39F3A283A15
-   CustomProperties Pin (PinId=BC5200DD4D68EC5EF70651A70145477C,PinName="默认值",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0.5478",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=E16DE16742AB2BF69EA2BA923C84B019,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_40 05EE55C04888CC67DF48799E8297BE0D,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_42" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_42"'
-   Begin Object Class=/Script/Engine.MaterialExpressionCollectionParameter Name="MaterialExpressionCollectionParameter_0" ExportPath=/Script/Engine.MaterialExpressionCollectionParameter'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_42.MaterialExpressionCollectionParameter_0"'
-   End Object
-   Begin Object Name="MaterialExpressionCollectionParameter_0" ExportPath=/Script/Engine.MaterialExpressionCollectionParameter'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_42.MaterialExpressionCollectionParameter_0"'
-      Collection=/Script/Engine.MaterialParameterCollection'"/Game/Sence/CS/开闸放水/mat_water/water_collecte.water_collecte"'
-      ParameterName="water_gate"
-      ParameterId=B1BE4CAF4F2E477BCF9D4EB97805FB7A
-      MaterialExpressionEditorX=-1520
-      MaterialExpressionEditorY=576
-      MaterialExpressionGuid=A62669014B35733230B3079815F7368E
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-      bCollapsed=True
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionCollectionParameter'"MaterialExpressionCollectionParameter_0"'
-   NodePosX=-1520
-   NodePosY=576
-   NodeGuid=3E108C284CF3FD949B3AEE91DDF030AF
-   CustomProperties Pin (PinId=D1D32DF94A124E1B756929B1B727EFDE,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_43 6E6CF26240A57473412805A8E3334B2C,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_43" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_43"'
-   Begin Object Class=/Script/Engine.MaterialExpressionLinearInterpolate Name="MaterialExpressionLinearInterpolate_0" ExportPath=/Script/Engine.MaterialExpressionLinearInterpolate'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_43.MaterialExpressionLinearInterpolate_0"'
-   End Object
-   Begin Object Name="MaterialExpressionLinearInterpolate_0" ExportPath=/Script/Engine.MaterialExpressionLinearInterpolate'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_43.MaterialExpressionLinearInterpolate_0"'
-      A=(Expression=/Script/Engine.MaterialExpressionConstant'"MaterialGraphNode_44.MaterialExpressionConstant_3"')
-      B=(Expression=/Script/Engine.MaterialExpressionConstant'"MaterialGraphNode_45.MaterialExpressionConstant_4"')
-      Alpha=(Expression=/Script/Engine.MaterialExpressionCollectionParameter'"MaterialGraphNode_42.MaterialExpressionCollectionParameter_0"')
-      MaterialExpressionEditorX=-1184
-      MaterialExpressionEditorY=384
-      MaterialExpressionGuid=33E0EBC84FBF1DF564B1438F077B7C3C
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionLinearInterpolate'"MaterialExpressionLinearInterpolate_0"'
-   NodePosX=-1184
-   NodePosY=384
-   NodeGuid=2900B0D241CE0DB31056248F67A1F6EA
-   CustomProperties Pin (PinId=3C61C75E4D026C91B14EF99DDC12B32F,PinName="A",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0.0",LinkedTo=(MaterialGraphNode_44 D36713E24209A3F1244D43ABF7B50A07,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=26B6FC0C4CC1E766875905AEB7D8678C,PinName="B",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="1.0",LinkedTo=(MaterialGraphNode_45 438CAF37413EFE3D26EC858AC6BE84CA,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=6E6CF26240A57473412805A8E3334B2C,PinName="Alpha",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0.5",LinkedTo=(MaterialGraphNode_42 D1D32DF94A124E1B756929B1B727EFDE,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=948A60BF42FD7CC7B4135488CC3132AE,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_44" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_44"'
-   Begin Object Class=/Script/Engine.MaterialExpressionConstant Name="MaterialExpressionConstant_3" ExportPath=/Script/Engine.MaterialExpressionConstant'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_44.MaterialExpressionConstant_3"'
-   End Object
-   Begin Object Name="MaterialExpressionConstant_3" ExportPath=/Script/Engine.MaterialExpressionConstant'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_44.MaterialExpressionConstant_3"'
-      R=100.000000
-      MaterialExpressionEditorX=-1408
-      MaterialExpressionEditorY=384
-      MaterialExpressionGuid=D31411C7468FFDD557B6A68961FE85A7
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionConstant'"MaterialExpressionConstant_3"'
-   NodePosX=-1408
-   NodePosY=384
-   NodeGuid=E7B6D5114C103428A55FE99058657829
-   CustomProperties Pin (PinId=D2287C9549A2ECC7BCF9379DE27DA6E9,PinName="值",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="100.0",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=D36713E24209A3F1244D43ABF7B50A07,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_43 3C61C75E4D026C91B14EF99DDC12B32F,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_45" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_45"'
-   Begin Object Class=/Script/Engine.MaterialExpressionConstant Name="MaterialExpressionConstant_4" ExportPath=/Script/Engine.MaterialExpressionConstant'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_45.MaterialExpressionConstant_4"'
-   End Object
-   Begin Object Name="MaterialExpressionConstant_4" ExportPath=/Script/Engine.MaterialExpressionConstant'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_45.MaterialExpressionConstant_4"'
-      MaterialExpressionEditorX=-1408
-      MaterialExpressionEditorY=448
-      MaterialExpressionGuid=D31411C7468FFDD557B6A68961FE85A7
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionConstant'"MaterialExpressionConstant_4"'
-   NodePosX=-1408
-   NodePosY=448
-   NodeGuid=9E0EC83C49A05AD8BF49DC8E4F300CA5
-   CustomProperties Pin (PinId=5E894C5041D659CC588934989E98110F,PinName="值",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0.0",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=438CAF37413EFE3D26EC858AC6BE84CA,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_43 26B6FC0C4CC1E766875905AEB7D8678C,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_46" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_46"'
-   Begin Object Class=/Script/Engine.MaterialExpressionOneMinus Name="MaterialExpressionOneMinus_2" ExportPath=/Script/Engine.MaterialExpressionOneMinus'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_46.MaterialExpressionOneMinus_2"'
-   End Object
-   Begin Object Name="MaterialExpressionOneMinus_2" ExportPath=/Script/Engine.MaterialExpressionOneMinus'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_46.MaterialExpressionOneMinus_2"'
-      Input=(Expression=/Script/Engine.MaterialExpressionComponentMask'"MaterialGraphNode_17.MaterialExpressionComponentMask_0"')
-      MaterialExpressionEditorX=-1440
-      MaterialExpressionEditorY=176
-      MaterialExpressionGuid=D6BC0CBB474FBFE40AEEA9A067C7AA62
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionOneMinus'"MaterialExpressionOneMinus_2"'
-   NodePosX=-1440
-   NodePosY=176
-   NodeGuid=67583929461EE0AA237B9E9D0D6B2C71
-   CustomProperties Pin (PinId=1D5CC7B04C4DC1D5980B08A6B4E9D7B0,PinName="Input",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),PinType.PinCategory="required",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_17 F17E44094B9C45D26FE5889B2C3FD8A9,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=853F5AF84E8AB4496B512EB25D06F786,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_47 D1655BBF47AAB7F0C232FBBF85975130,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_47" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_47"'
-   Begin Object Class=/Script/Engine.MaterialExpressionLinearInterpolate Name="MaterialExpressionLinearInterpolate_2" ExportPath=/Script/Engine.MaterialExpressionLinearInterpolate'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_47.MaterialExpressionLinearInterpolate_2"'
-   End Object
-   Begin Object Name="MaterialExpressionLinearInterpolate_2" ExportPath=/Script/Engine.MaterialExpressionLinearInterpolate'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_47.MaterialExpressionLinearInterpolate_2"'
-      A=(Expression=/Script/Engine.MaterialExpressionComponentMask'"MaterialGraphNode_17.MaterialExpressionComponentMask_0"')
-      B=(Expression=/Script/Engine.MaterialExpressionOneMinus'"MaterialGraphNode_46.MaterialExpressionOneMinus_2"')
-      Alpha=(Expression=/Script/Engine.MaterialExpressionScalarParameter'"MaterialGraphNode_48.MaterialExpressionScalarParameter_3"')
-      MaterialExpressionEditorX=-1328
-      MaterialExpressionEditorY=112
-      MaterialExpressionGuid=86FABE7F48EB893991635E86AF2B32DD
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionLinearInterpolate'"MaterialExpressionLinearInterpolate_2"'
-   NodePosX=-1328
-   NodePosY=112
-   NodeGuid=A924ECAA43541BE62FC5DE90C2770A79
-   CustomProperties Pin (PinId=A2B154C144D0083CE4D546A61049D220,PinName="A",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0.0",LinkedTo=(MaterialGraphNode_17 F17E44094B9C45D26FE5889B2C3FD8A9,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=D1655BBF47AAB7F0C232FBBF85975130,PinName="B",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="1.0",LinkedTo=(MaterialGraphNode_46 853F5AF84E8AB4496B512EB25D06F786,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=CFCE264148BF6DE9D0C0A28E0FA88807,PinName="Alpha",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0.5",LinkedTo=(MaterialGraphNode_48 63CC34684774B986263008A5AA7ADC16,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=21619B034ECE64C1AB681E8ADF9C2AC2,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_19 D05AA63A4C2AEF147786F9A077225020,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
-Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_48" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_48"'
-   Begin Object Class=/Script/Engine.MaterialExpressionScalarParameter Name="MaterialExpressionScalarParameter_3" ExportPath=/Script/Engine.MaterialExpressionScalarParameter'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_48.MaterialExpressionScalarParameter_3"'
-   End Object
-   Begin Object Name="MaterialExpressionScalarParameter_3" ExportPath=/Script/Engine.MaterialExpressionScalarParameter'"/Engine/Transient.water_02:MaterialGraph_0.MaterialGraphNode_48.MaterialExpressionScalarParameter_3"'
-      ParameterName="water_gate_02"
-      ExpressionGUID=E0FF995740109B75616BC280CB0E9298
-      MaterialExpressionEditorX=-1424
-      MaterialExpressionEditorY=240
-      MaterialExpressionGuid=4C3C2C26408ED9AAD67167A0E09A8A42
-      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.water_02"'
-   End Object
-   MaterialExpression=/Script/Engine.MaterialExpressionScalarParameter'"MaterialExpressionScalarParameter_3"'
-   NodePosX=-1424
-   NodePosY=240
-   bCanRenameNode=True
-   NodeGuid=A18F2E4A4ADE8231611301A7979BC8DD
-   CustomProperties Pin (PinId=0AD1665A46170BED7AF102988A72119E,PinName="默认值",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0.0",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-   CustomProperties Pin (PinId=63CC34684774B986263008A5AA7ADC16,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_47 CFCE264148BF6DE9D0C0A28E0FA88807,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
-End Object
+// A documented, altered, recolored version of "Seascape".
+// The famous original at:
+// https://www.shadertoy.com/view/Ms2SD1
+
+// "Seascape" by Alexander Alekseev aka TDM - 2014
+// Commenting added by bteitler
+//  HSV/color adjustments and additional commenting by CaliCoastReplay - 2016
+
+// License Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License.
+
+// PI is a mathematical constant relating the ratio of a circle's circumference (distance around
+// the edge) to its diameter (distance between two points opposite on the edge).  
+// Change pi at your own peril, with your own apologies to God.
+const float PI	 	= 3.14159265358;
+
+// Can you explain these epsilons to a wide graphics audience?  YOUR comment could go here.
+const float EPSILON	= 1e-3;
+#define  EPSILON_NRM	(0.5 / iResolution.x)
+
+// Constant indicaing the number of steps taken while marching the light ray.  
+const int NUM_STEPS = 6;
+
+//Constants relating to the iteration of the heightmap for the wave, another part of the rendering
+//process.
+const int ITER_GEOMETRY = 2;
+const int ITER_FRAGMENT =5;
+
+// Constants that represent physical characteristics of the sea, can and should be changed and 
+//  played with
+const float SEA_HEIGHT = 0.5;
+const float SEA_CHOPPY = 3.0;
+const float SEA_SPEED = 1.9;
+const float SEA_FREQ = 0.24;
+const vec3 SEA_BASE = vec3(0.11,0.19,0.22);
+const vec3 SEA_WATER_COLOR = vec3(0.55,0.9,0.7);
+#define SEA_TIME (iTime * SEA_SPEED)
+
+//Matrix to permute the water surface into a complex, realistic form
+mat2 octave_m = mat2(1.7,1.2,-1.2,1.4);
+
+//Space bar key constant
+const float KEY_SP    = 32.5/256.0;
+
+//CaliCoastReplay :  These HSV/RGB translation functions are
+//from http://gamedev.stackexchange.com/questions/59797/glsl-shader-change-hue-saturation-brightness
+//This one converts red-green-blue color to hue-saturation-value color
+vec3 rgb2hsv(vec3 c)
+{
+    vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0);
+    vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g));
+    vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r));
+
+    float d = q.x - min(q.w, q.y);
+    float e = 1.0e-10;
+    return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x);
+}
+
+//CaliCoastReplay :  These HSV/RGB translation functions are
+//from http://gamedev.stackexchange.com/questions/59797/glsl-shader-change-hue-saturation-brightness
+//This one converts hue-saturation-value color to red-green-blue color
+vec3 hsv2rgb(vec3 c)
+{
+    vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0);
+    vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www);
+    return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y);
+}
+
+// math
+// bteitler: Turn a vector of Euler angles into a rotation matrix
+mat3 fromEuler(vec3 ang) {
+	vec2 a1 = vec2(sin(ang.x),cos(ang.x));
+    vec2 a2 = vec2(sin(ang.y),cos(ang.y));
+    vec2 a3 = vec2(sin(ang.z),cos(ang.z));
+    mat3 m;
+    m[0] = vec3(a1.y*a3.y+a1.x*a2.x*a3.x,a1.y*a2.x*a3.x+a3.y*a1.x,-a2.y*a3.x);
+	m[1] = vec3(-a2.y*a1.x,a1.y*a2.y,a2.x);
+	m[2] = vec3(a3.y*a1.x*a2.x+a1.y*a3.x,a1.x*a3.x-a1.y*a3.y*a2.x,a2.y*a3.y);
+	return m;
+}
+
+// bteitler: A 2D hash function for use in noise generation that returns range [0 .. 1].  You could
+// use any hash function of choice, just needs to deterministic and return
+// between 0 and 1, and also behave randomly.  Googling "GLSL hash function" returns almost exactly 
+// this function: http://stackoverflow.com/questions/4200224/random-noise-functions-for-glsl
+// Performance is a real consideration of hash functions since ray-marching is already so heavy.
+float hash( vec2 p ) {
+    float h = dot(p,vec2(127.1,311.7));	
+    return fract(sin(h)*83758.5453123);
+}
+
+// bteitler: A 2D psuedo-random wave / terrain function.  This is actually a poor name in my opinion,
+// since its the "hash" function that is really the noise, and this function is smoothly interpolating
+// between noisy points to create a continuous surface.
+float noise( in vec2 p ) {
+    vec2 i = floor( p );
+    vec2 f = fract( p );	
+
+    // bteitler: This is equivalent to the "smoothstep" interpolation function.
+    // This is a smooth wave function with input between 0 and 1
+    // (since it is taking the fractional part of <p>) and gives an output
+    // between 0 and 1 that behaves and looks like a wave.  This is far from obvious, but we can graph it to see
+    // Wolfram link: http://www.wolframalpha.com/input/?i=plot+x*x*%283.0-2.0*x%29+from+x%3D0+to+1
+    // This is used to interpolate between random points.  Any smooth wave function that ramps up from 0 and
+    // and hit 1.0 over the domain 0 to 1 would work.  For instance, sin(f * PI / 2.0) gives similar visuals.
+    // This function is nice however because it does not require an expensive sine calculation.
+    vec2 u = f*f*(3.0-2.0*f);
+
+    // bteitler: This very confusing looking mish-mash is simply pulling deterministic random values (between 0 and 1)
+    // for 4 corners of the grid square that <p> is inside, and doing 2D interpolation using the <u> function
+    // (remember it looks like a nice wave!) 
+    // The grid square has points defined at integer boundaries.  For example, if <p> is (4.3, 2.1), we will 
+    // evaluate at points (4, 2), (5, 2), (4, 3), (5, 3), and then interpolate x using u(.3) and y using u(.1).
+    return -1.0+2.0*mix( 
+                mix( hash( i + vec2(0.0,0.0) ), 
+                     hash( i + vec2(1.0,0.0) ), 
+                        u.x),
+                mix( hash( i + vec2(0.0,1.0) ), 
+                     hash( i + vec2(1.0,1.0) ), 
+                        u.x), 
+                u.y);
+}
+
+// bteitler: diffuse lighting calculation - could be tweaked to taste
+// lighting
+float diffuse(vec3 n,vec3 l,float p) {
+    return pow(dot(n,l) * 0.4 + 0.6,p);
+}
+
+// bteitler: specular lighting calculation - could be tweaked taste
+float specular(vec3 n,vec3 l,vec3 e,float s) {    
+    float nrm = (s + 8.0) / (3.1415 * 8.0);
+    return pow(max(dot(reflect(e,n),l),0.0),s) * nrm;
+}
+
+// bteitler: Generate a smooth sky gradient color based on ray direction's Y value
+// sky
+vec3 getSkyColor(vec3 e) {
+    e.y = max(e.y,0.0);
+    vec3 ret;
+    ret.x = pow(1.0-e.y,2.0);
+    ret.y = 1.0-e.y;
+    ret.z = 0.6+(1.0-e.y)*0.4;
+    return ret;
+}
+
+// sea
+// bteitler: TLDR is that this passes a low frequency random terrain through a 2D symmetric wave function that looks like this:
+// http://www.wolframalpha.com/input/?i=%7B1-%7B%7B%7BAbs%5BCos%5B0.16x%5D%5D+%2B+Abs%5BCos%5B0.16x%5D%5D+%28%281.+-+Abs%5BSin%5B0.16x%5D%5D%29+-+Abs%5BCos%5B0.16x%5D%5D%29%7D+*+%7BAbs%5BCos%5B0.16y%5D%5D+%2B+Abs%5BCos%5B0.16y%5D%5D+%28%281.+-+Abs%5BSin%5B0.16y%5D%5D%29+-+Abs%5BCos%5B0.16y%5D%5D%29%7D%7D%5E0.65%7D%7D%5E4+from+-20+to+20
+// The <choppy> parameter affects the wave shape.
+float sea_octave(vec2 uv, float choppy) {
+    // bteitler: Add the smoothed 2D terrain / wave function to the input coordinates
+    // which are going to be our X and Z world coordinates.  It may be unclear why we are doing this.
+    // This value is about to be passed through a wave function.  So we have a smoothed psuedo random height
+    // field being added to our (X, Z) coordinates, and then fed through yet another wav function below.
+    uv += noise(uv);
+    // Note that you could simply return noise(uv) here and it would take on the characteristics of our 
+    // noise interpolation function u and would be a reasonable heightmap for terrain.  
+    // However, that isn't the shape we want in the end for an ocean with waves, so it will be fed through
+    // a more wave like function.  Note that although both x and y channels of <uv> have the same value added, there is a 
+    // symmetry break because <uv>.x and <uv>.y will typically be different values.
+
+    // bteitler: This is a wave function with pointy peaks and curved troughs:
+    // http://www.wolframalpha.com/input/?i=1-abs%28cos%28x%29%29%3B
+    vec2 wv = 1.0-abs(sin(uv)); 
+
+    // bteitler: This is a wave function with curved peaks and pointy troughs:
+    // http://www.wolframalpha.com/input/?i=abs%28cos%28x%29%29%3B
+    vec2 swv = abs(cos(uv));  
+  
+    // bteitler: Blending both wave functions gets us a new, cooler wave function (output between 0 and 1):
+    // http://www.wolframalpha.com/input/?i=abs%28cos%28x%29%29+%2B+abs%28cos%28x%29%29+*+%28%281.0-abs%28sin%28x%29%29%29+-+abs%28cos%28x%29%29%29
+    wv = mix(wv,swv,wv);
+
+    // bteitler: Finally, compose both of the wave functions for X and Y channels into a final 
+    // 1D height value, shaping it a bit along the way.  First, there is the composition (multiplication) of
+    // the wave functions: wv.x * wv.y.  Wolfram will give us a cute 2D height graph for this!:
+    // http://www.wolframalpha.com/input/?i=%7BAbs%5BCos%5Bx%5D%5D+%2B+Abs%5BCos%5Bx%5D%5D+%28%281.+-+Abs%5BSin%5Bx%5D%5D%29+-+Abs%5BCos%5Bx%5D%5D%29%7D+*+%7BAbs%5BCos%5By%5D%5D+%2B+Abs%5BCos%5By%5D%5D+%28%281.+-+Abs%5BSin%5By%5D%5D%29+-+Abs%5BCos%5By%5D%5D%29%7D
+    // Next, we reshape the 2D wave function by exponentiation: (wv.x * wv.y)^0.65.  This slightly rounds the base of the wave:
+    // http://www.wolframalpha.com/input/?i=%7B%7BAbs%5BCos%5Bx%5D%5D+%2B+Abs%5BCos%5Bx%5D%5D+%28%281.+-+Abs%5BSin%5Bx%5D%5D%29+-+Abs%5BCos%5Bx%5D%5D%29%7D+*+%7BAbs%5BCos%5By%5D%5D+%2B+Abs%5BCos%5By%5D%5D+%28%281.+-+Abs%5BSin%5By%5D%5D%29+-+Abs%5BCos%5By%5D%5D%29%7D%7D%5E0.65
+    // one last final transform (with choppy = 4) results in this which resembles a recognizable ocean wave shape in 2D:
+    // http://www.wolframalpha.com/input/?i=%7B1-%7B%7B%7BAbs%5BCos%5Bx%5D%5D+%2B+Abs%5BCos%5Bx%5D%5D+%28%281.+-+Abs%5BSin%5Bx%5D%5D%29+-+Abs%5BCos%5Bx%5D%5D%29%7D+*+%7BAbs%5BCos%5By%5D%5D+%2B+Abs%5BCos%5By%5D%5D+%28%281.+-+Abs%5BSin%5By%5D%5D%29+-+Abs%5BCos%5By%5D%5D%29%7D%7D%5E0.65%7D%7D%5E4
+    // Note that this function is called with a specific frequency multiplier which will stretch out the wave.  Here is the graph
+    // with the base frequency used by map and map_detailed (0.16):
+    // http://www.wolframalpha.com/input/?i=%7B1-%7B%7B%7BAbs%5BCos%5B0.16x%5D%5D+%2B+Abs%5BCos%5B0.16x%5D%5D+%28%281.+-+Abs%5BSin%5B0.16x%5D%5D%29+-+Abs%5BCos%5B0.16x%5D%5D%29%7D+*+%7BAbs%5BCos%5B0.16y%5D%5D+%2B+Abs%5BCos%5B0.16y%5D%5D+%28%281.+-+Abs%5BSin%5B0.16y%5D%5D%29+-+Abs%5BCos%5B0.16y%5D%5D%29%7D%7D%5E0.65%7D%7D%5E4+from+-20+to+20
+    return pow(1.0-pow(wv.x * wv.y,0.65),choppy);
+}
+
+// bteitler: Compute the distance along Y axis of a point to the surface of the ocean
+// using a low(er) resolution ocean height composition function (less iterations).
+float map(vec3 p) {
+    float freq = SEA_FREQ;
+    float amp = SEA_HEIGHT;
+    float choppy = SEA_CHOPPY;
+    vec2 uv = p.xz; uv.x *= 0.75;
+    
+    // bteitler: Compose our wave noise generation ("sea_octave") with different frequencies
+    // and offsets to achieve a final height map that looks like an ocean.  Likely lots
+    // of black magic / trial and error here to get it to look right.  Each sea_octave has this shape:
+    // http://www.wolframalpha.com/input/?i=%7B1-%7B%7B%7BAbs%5BCos%5B0.16x%5D%5D+%2B+Abs%5BCos%5B0.16x%5D%5D+%28%281.+-+Abs%5BSin%5B0.16x%5D%5D%29+-+Abs%5BCos%5B0.16x%5D%5D%29%7D+*+%7BAbs%5BCos%5B0.16y%5D%5D+%2B+Abs%5BCos%5B0.16y%5D%5D+%28%281.+-+Abs%5BSin%5B0.16y%5D%5D%29+-+Abs%5BCos%5B0.16y%5D%5D%29%7D%7D%5E0.65%7D%7D%5E4+from+-20+to+20
+    // which should give you an idea of what is going.  You don't need to graph this function because it
+    // appears to your left :)
+    float d, h = 0.0;    
+    for(int i = 0; i < ITER_GEOMETRY; i++) {
+        // bteitler: start out with our 2D symmetric wave at the current frequency
+    	d = sea_octave((uv+SEA_TIME)*freq,choppy);
+        // bteitler: stack wave ontop of itself at an offset that varies over time for more height and wave pattern variance
+    	//d += sea_octave((uv-SEA_TIME)*freq,choppy);
+
+        h += d * amp; // bteitler: Bump our height by the current wave function
+        
+        // bteitler: "Twist" our domain input into a different space based on a permutation matrix
+        // The scales of the matrix values affect the frequency of the wave at this iteration, but more importantly
+        // it is responsible for the realistic assymetry since the domain is shiftly differently.
+        // This is likely the most important parameter for wave topology.
+    	uv *=  octave_m;
+        
+        freq *= 1.9; // bteitler: Exponentially increase frequency every iteration (on top of our permutation)
+        amp *= 0.22; // bteitler: Lower the amplitude every frequency, since we are adding finer and finer detail
+        // bteitler: finally, adjust the choppy parameter which will effect our base 2D sea_octave shape a bit.  This makes
+        // the "waves within waves" have different looking shapes, not just frequency and offset
+        choppy = mix(choppy,1.0,0.2);
+    }
+    return p.y - h;
+}
+
+// bteitler: Compute the distance along Y axis of a point to the surface of the ocean
+// using a high(er) resolution ocean height composition function (more iterations).
+float map_detailed(vec3 p) {
+    float freq = SEA_FREQ;
+    float amp = SEA_HEIGHT;
+    float choppy = SEA_CHOPPY;
+    vec2 uv = p.xz; uv.x *= 0.75;
+    
+    // bteitler: Compose our wave noise generation ("sea_octave") with different frequencies
+    // and offsets to achieve a final height map that looks like an ocean.  Likely lots
+    // of black magic / trial and error here to get it to look right.  Each sea_octave has this shape:
+    // http://www.wolframalpha.com/input/?i=%7B1-%7B%7B%7BAbs%5BCos%5B0.16x%5D%5D+%2B+Abs%5BCos%5B0.16x%5D%5D+%28%281.+-+Abs%5BSin%5B0.16x%5D%5D%29+-+Abs%5BCos%5B0.16x%5D%5D%29%7D+*+%7BAbs%5BCos%5B0.16y%5D%5D+%2B+Abs%5BCos%5B0.16y%5D%5D+%28%281.+-+Abs%5BSin%5B0.16y%5D%5D%29+-+Abs%5BCos%5B0.16y%5D%5D%29%7D%7D%5E0.65%7D%7D%5E4+from+-20+to+20
+    // which should give you an idea of what is going.  You don't need to graph this function because it
+    // appears to your left :)
+    float d, h = 0.0;    
+    for(int i = 0; i < ITER_FRAGMENT; i++) {
+        // bteitler: start out with our 2D symmetric wave at the current frequency
+    	d = sea_octave((uv+SEA_TIME)*freq,choppy);
+        // bteitler: stack wave ontop of itself at an offset that varies over time for more height and wave pattern variance
+    	d += sea_octave((uv-SEA_TIME)*freq,choppy);
+        
+        h += d * amp; // bteitler: Bump our height by the current wave function
+        
+        // bteitler: "Twist" our domain input into a different space based on a permutation matrix
+        // The scales of the matrix values affect the frequency of the wave at this iteration, but more importantly
+        // it is responsible for the realistic assymetry since the domain is shiftly differently.
+        // This is likely the most important parameter for wave topology.
+    	uv *= octave_m/1.2;
+        
+        freq *= 1.9; // bteitler: Exponentially increase frequency every iteration (on top of our permutation)
+        amp *= 0.22; // bteitler: Lower the amplitude every frequency, since we are adding finer and finer detail
+        // bteitler: finally, adjust the choppy parameter which will effect our base 2D sea_octave shape a bit.  This makes
+        // the "waves within waves" have different looking shapes, not just frequency and offset
+        choppy = mix(choppy,1.0,0.2);
+    }
+    return p.y - h;
+}
+
+// bteitler:
+// p: point on ocean surface to get color for
+// n: normal on ocean surface at <p>
+// l: light (sun) direction
+// eye: ray direction from camera position for this pixel
+// dist: distance from camera to point <p> on ocean surface
+vec3 getSeaColor(vec3 p, vec3 n, vec3 l, vec3 eye, vec3 dist) {  
+    // bteitler: Fresnel is an exponential that gets bigger when the angle between ocean
+    // surface normal and eye ray is smaller
+    float fresnel = 1.0 - max(dot(n,-eye),0.0);
+    fresnel = pow(fresnel,3.0) * 0.45;
+        
+    // bteitler: Bounce eye ray off ocean towards sky, and get the color of the sky
+    vec3 reflected = getSkyColor(reflect(eye,n))*0.99;    
+    
+    // bteitler: refraction effect based on angle between light surface normal
+    vec3 refracted = SEA_BASE + diffuse(n,l,80.0) * SEA_WATER_COLOR * 0.27; 
+    
+    // bteitler: blend the refracted color with the reflected color based on our fresnel term
+    vec3 color = mix(refracted,reflected,fresnel);
+    
+    // bteitler: Apply a distance based attenuation factor which is stronger
+    // at peaks
+    float atten = max(1.0 - dot(dist,dist) * 0.001, 0.0);
+    color += SEA_WATER_COLOR * (p.y - SEA_HEIGHT) * 0.15 * atten;
+    
+    // bteitler: Apply specular highlight
+    color += vec3(specular(n,l,eye,90.0))*0.5;
+    
+    return color;
+}
+
+// bteitler: Estimate the normal at a point <p> on the ocean surface using a slight more detailed
+// ocean mapping function (using more noise octaves).
+// Takes an argument <eps> (stands for epsilon) which is the resolution to use
+// for the gradient.  See here for more info on gradients: https://en.wikipedia.org/wiki/Gradient
+// tracing
+vec3 getNormal(vec3 p, float eps) {
+    // bteitler: Approximate gradient.  An exact gradient would need the "map" / "map_detailed" functions
+    // to return x, y, and z, but it only computes height relative to surface along Y axis.  I'm assuming
+    // for simplicity and / or optimization reasons we approximate the gradient by the change in ocean
+    // height for all axis.
+    vec3 n;
+    n.y = map_detailed(p); // bteitler: Detailed height relative to surface, temporarily here to save a variable?
+    n.x = map_detailed(vec3(p.x+eps,p.y,p.z)) - n.y; // bteitler approximate X gradient as change in height along X axis delta
+    n.z = map_detailed(vec3(p.x,p.y,p.z+eps)) - n.y; // bteitler approximate Z gradient as change in height along Z axis delta
+    // bteitler: Taking advantage of the fact that we know we won't have really steep waves, we expect
+    // the Y normal component to be fairly large always.  Sacrifices yet more accurately to avoid some calculation.
+    n.y = eps; 
+    return normalize(n);
+
+    // bteitler: A more naive and easy to understand version could look like this and
+    // produces almost the same visuals and is a little more expensive.
+    // vec3 n;
+    // float h = map_detailed(p);
+    // n.y = map_detailed(vec3(p.x,p.y+eps,p.z)) - h;
+    // n.x = map_detailed(vec3(p.x+eps,p.y,p.z)) - h;
+    // n.z = map_detailed(vec3(p.x,p.y,p.z+eps)) - h;
+    // return normalize(n);
+}
+
+
+//CaliCoastReplay :  Keyboard checking function from the iChannel representing keyboard input
+float isKeyPressed(float key)
+{
+	return texture( iChannel1, vec2(key, 1.0) ).x;
+}
+
+// bteitler: Find out where a ray intersects the current ocean
+float heightMapTracing(vec3 ori, vec3 dir, out vec3 p) {  
+    float tm = 0.0;
+    float tx = 500.0; // bteitler: a really far distance, this could likely be tweaked a bit as desired
+
+    // bteitler: At a really far away distance along the ray, what is it's height relative
+    // to the ocean in ONLY the Y direction?
+    float hx = map(ori + dir * tx);
+    
+    // bteitler: A positive height relative to the ocean surface (in Y direction) at a really far distance means
+    // this pixel is pure sky.  Quit early and return the far distance constant.
+    if(hx > 0.0) return tx;   
+
+    // bteitler: hm starts out as the height of the camera position relative to ocean.
+    float hm = map(ori + dir * tm); 
+   
+    // bteitler: This is the main ray marching logic.  This is probably the single most confusing part of the shader
+    // since height mapping is not an exact distance field (tells you distance to surface if you drop a line down to ocean
+    // surface in the Y direction, but there could have been a peak at a very close point along the x and z 
+    // directions that is closer).  Therefore, it would be possible/easy to overshoot the surface using the raw height field
+    // as the march distance.  The author uses a trick to compensate for this.
+    float tmid = 0.0;
+    for(int i = 0; i < NUM_STEPS; i++) { // bteitler: Constant number of ray marches per ray that hits the water
+        // bteitler: Move forward along ray in such a way that has the following properties:
+        // 1. If our current height relative to ocean is higher, move forward more
+        // 2. If the height relative to ocean floor very far along the ray is much lower
+        //    below the ocean surface, move forward less
+        // Idea behind 1. is that if we are far above the ocean floor we can risk jumping
+        // forward more without shooting under ocean, because the ocean is mostly level.
+        // The idea behind 2. is that if extruding the ray goes farther under the ocean, then 
+        // you are looking more orthgonal to ocean surface (as opposed to looking towards horizon), and therefore
+        // movement along the ray gets closer to ocean faster, so we need to move forward less to reduce risk
+        // of overshooting.
+        tmid = mix(tm,tx, hm/(hm-hx));
+        p = ori + dir * tmid; 
+                  
+    	float hmid = map(p); // bteitler: Re-evaluate height relative to ocean surface in Y axis
+
+        if(hmid < 0.0) { // bteitler: We went through the ocean surface if we are negative relative to surface now
+            // bteitler: So instead of actually marching forward to cross the surface, we instead
+            // assign our really far distance and height to be where we just evaluated that crossed the surface.
+            // Next iteration will attempt to go forward more and is less likely to cross the boundary.
+            // A naive implementation might have returned <tmid> immediately here, which
+            // results in a much poorer / somewhat indeterministic quality rendering.
+            tx = tmid;
+            hx = hmid;
+        } else {
+            // Haven't hit surface yet, easy case, just march forward
+            tm = tmid;
+            hm = hmid;
+        }
+    }
+
+    // bteitler: Return the distance, which should be really close to the height map without going under the ocean
+    return tmid;
+}
+
+// main
+void mainImage( out vec4 fragColor, in vec2 fragCoord ) {
+    // bteitler: 2D Pixel location passed in as raw pixel, let's divide by resolution
+    // to convert to coordinates between 0 and 1
+    vec2 uv = fragCoord.xy / iResolution.xy;
+
+    uv = uv * 2.0 - 1.0; //  bteitler: Shift pixel coordinates from 0 to 1 to between -1 and 1
+    uv.x *= iResolution.x / iResolution.y; // bteitler: Aspect ratio correction - if you don't do this your rays will be distorted
+    float time = iTime * 2.7; // bteitler: Animation is based on time, but allows you to scrub the animation based on mouse movement
+        
+    // ray
+
+    // bteitler: Calculated a vector that smoothly changes over time in a sinusoidal (wave) pattern.  
+    // This will be used to drive where the user is looking in world space.
+   // vec3 ang = vec3(sin(time*3.0)*0.1,sin(time)*0.2+0.3,time);
+    float roll = PI + sin(iTime)/14.0 + cos(iTime/2.0)/14.0 ;
+    float pitch = PI*1.021 + (sin(iTime/2.0)+ cos(iTime))/40.0 
+        + (iMouse.y/iResolution.y - .8)*PI/3.0  ;
+    float yaw = iMouse.x/iResolution.x * PI * 4.0;
+    vec3 ang = vec3(roll,pitch,yaw);
+   // vec3 ang = vec3(roll,pitch,0);
+    
+    // bteitler: Calculate the "origin" of the camera in world space based on time.  Camera is located
+    // at height 3.5 atx 0 (zero), and flies over the ocean in the z axis over time.
+    vec3 ori = vec3(0.0,3.5,time*3.0);
+   
+    // bteitler: This is the ray direction we are shooting from the camera location ("ori") that we need to light
+    // for this pixel.  The -2.0 indicates we are using a focal length of 2.0 - this is just an artistic choice and
+    // results in about a 90 degree field of view.
+    //  CaliCoastReplay :  Adjusted slightly to a lower focal length.  Seems to dramatize the scene.
+    vec3 dir = normalize(vec3(uv.xy,-1.6)); 
+
+    // bteitler: Distort the ray a bit for a fish eye effect (if you remove this line, it will remove
+    // the fish eye effect and look like a realistic perspective).
+   //  dir.z += length(uv) * 0.15;
+
+    // bteitler: Renormalize the ray direction, and then rotate it based on the previously calculated
+    // animation angle "ang".  "fromEuler" just calculates a rotation matrix from a vector of angles.
+    // if you remove the " * fromEuler(ang)" part, you will disable the camera rotation animation.
+    dir = normalize(dir) * fromEuler(ang);
+    
+    // tracing
+
+    // bteitler: ray-march to the ocean surface (which can be thought of as a randomly generated height map)
+    // and store in p
+    vec3 p;
+    heightMapTracing(ori,dir,p);
+
+    vec3 dist = p - ori; // bteitler: distance vector to ocean surface for this pixel's ray
+
+    // bteitler: Calculate the normal on the ocean surface where we intersected (p), using
+    // different "resolution" (in a sense) based on how far away the ray traveled.  Normals close to
+    // the camera should be calculated with high resolution, and normals far from the camera should be calculated with low resolution
+    // The reason to do this is that specular effects (or non linear normal based lighting effects) become fairly random at
+    // far distances and low resolutions and can cause unpleasant shimmering during motion.
+    vec3 n = getNormal(p, 
+             dot(dist,dist)   // bteitler: Think of this as inverse resolution, so far distances get bigger at an expnential rate
+                * EPSILON_NRM // bteitler: Just a resolution constant.. could easily be tweaked to artistic content
+           );
+
+    // bteitler: direction of the infinitely far away directional light.  Changing this will change
+    // the sunlight direction.
+    vec3 light = normalize(vec3(0.0,1.0,0.8)); 
+             
+    // CaliCoastReplay:  Get the sky and sea colors
+	vec3 skyColor = getSkyColor(dir);
+    vec3 seaColor = getSeaColor(p,n,light,dir,dist);
+    
+    //Sea/sky preprocessing
+    
+    //CaliCoastReplay:  A distance falloff for the sea color.   Drastically darkens the sea, 
+    //this will be reversed later based on day/night.
+    seaColor /= sqrt(sqrt(length(dist))) ;
+    
+    
+    //CaliCoastReplay:  Day/night mode
+    bool night; 	 
+    if( isKeyPressed(KEY_SP) > 0.0 )    //night mode!
+    {
+        //Brighten the sea up again, but not too bright at night
+    	seaColor *= seaColor * 8.5;
+        
+        //Turn down the sky 
+    	skyColor /= 1.69;
+        
+        //Store that it's night mode for later HSV calcc
+        night = true;
+    }
+    else  //day mode!
+    {
+        //Brighten the sea up again - bright and beautiful blue at day
+    	seaColor *= sqrt(sqrt(seaColor)) * 4.0;
+        skyColor *= 1.05;
+        skyColor -= 0.03;
+        night = false;
+    }
+
+    
+    //CaliCoastReplay:  A slight "constrasting" for the sky to match the more contrasted ocean
+    skyColor *= skyColor;
+    
+    
+    //CaliCoastReplay:  A rather hacky manipulation of the high-value regions in the image that seems
+    //to add a subtle charm and "sheen" and foamy effect to high value regions through subtle darkening,
+    //but it is hacky, and not physically modeled at all.  
+    vec3 seaHsv = rgb2hsv(seaColor);
+    if (seaHsv.z > .75 && length(dist) < 50.0)
+       seaHsv.z -= (0.9 - seaHsv.z) * 1.3;
+    seaColor = hsv2rgb(seaHsv);
+    
+    // bteitler: Mix (linear interpolate) a color calculated for the sky (based solely on ray direction) and a sea color 
+    // which contains a realistic lighting model.  This is basically doing a fog calculation: weighing more the sky color
+    // in the distance in an exponential manner.
+    
+    vec3 color = mix(
+        skyColor,
+        seaColor,
+    	pow(smoothstep(0.0,-0.05,dir.y), 0.3) // bteitler: Can be thought of as "fog" that gets thicker in the distance
+    );
+        
+    // Postprocessing
+    
+    // bteitler: Apply an overall image brightness factor as the final color for this pixel.  Can be
+    // tweaked artistically.
+    fragColor = vec4(pow(color,vec3(0.75)), 1.0);
+    
+    // CaliCoastReplay:  Adjust hue, saturation, and value adjustment for an even more processed look
+    // hsv.x is hue, hsv.y is saturation, and hsv.z is value
+    vec3 hsv = rgb2hsv(fragColor.xyz);    
+    //CaliCoastReplay: Increase saturation slightly
+    hsv.y += 0.131;
+    //CaliCoastReplay:
+    //A pseudo-multiplicative adjustment of value, increasing intensity near 1 and decreasing it near
+    //0 to achieve a more contrasted, real-world look
+    hsv.z *= sqrt(hsv.z) * 1.1; 
+    
+    if (night)    
+    {
+    ///CaliCoastReplay:
+    //Slight value adjustment at night to turn down global intensity
+        hsv.z -= 0.045;
+        hsv*=0.8;
+        hsv.x += 0.12 + hsv.z/100.0;
+        //Highly increased saturation at night op, oddly.  Nights appear to be very colorful
+        //within their ranges.
+        hsv.y *= 2.87;
+    }
+    else
+    {
+      //CaliCoastReplay:
+        //Add green tinge to the high range
+      //Turn down intensity in day in a different way     
+        
+        hsv.z *= 0.9;
+        
+        //CaliCoastReplay:  Hue alteration 
+        hsv.x -= hsv.z/10.0;
+        hsv.x += 0.02 + hsv.z/50.0;
+        //Final brightening
+        hsv.z *= 1.01;
+        //This really "cinemafies" it for the day -
+        //puts the saturation on a squared, highly magnified footing.
+        //Worth looking into more as to exactly why.
+       // hsv.y *= 5.10 * hsv.y * sqrt(hsv.y);
+        hsv.y += 0.07;
+    }
+    
+    //CaliCoastReplay:    
+    //Replace the final color with the adjusted, translated HSV values
+    fragColor.xyz = hsv2rgb(hsv);
+}

BIN
public/ducao2.7z


+ 1 - 1
src/App.vue

@@ -3,7 +3,7 @@ import { ref } from 'vue'
 import Scene3D from './scenes/Scene3D.vue'
 import DucaoScene from './scenes/DucaoScene.vue'
 
-const currentScene = ref<'scene3d' | 'ducao'>('ducao')
+const currentScene = ref<'scene3d' | 'ducao'>('scene3d')
 </script>
 
 <template>

+ 106 - 1
src/scenes/WaterLevelLabel.vue

@@ -7,6 +7,7 @@ import yingliIcon from '../assets/icon/yingli.png'
 
 const props = defineProps<{
   labelId: string
+  name: string
   type: LabelDataType
   positionX: number
   positionY: number
@@ -25,8 +26,11 @@ let scene: THREE.Scene | null = null
 let camera: THREE.PerspectiveCamera | null = null
 let textSprite: THREE.Sprite | null = null
 let spriteTexture: THREE.CanvasTexture | null = null
+let tooltipSprite: THREE.Sprite | null = null
+let tooltipTexture: THREE.CanvasTexture | null = null
 let iconReady = false
 let spriteCreated = false
+let isHovered = false
 
 const canvas = document.createElement('canvas')
 const ctx = canvas.getContext('2d')!
@@ -116,9 +120,73 @@ function ensureSprite() {
   textSprite.renderOrder = 999
   textSprite.name = `label_${props.labelId}`
   scene.add(textSprite)
+
+  createTooltip()
+
   spriteCreated = true
 }
 
+function createTooltip() {
+  const tooltipCanvas = document.createElement('canvas')
+  const tooltipCtx = tooltipCanvas.getContext('2d')!
+  const padding = 12
+  const fontSize = 16
+  tooltipCtx.font = `bold ${fontSize}px "Microsoft YaHei", Arial, sans-serif`
+  const textWidth = tooltipCtx.measureText(props.name).width
+  const tw = textWidth + padding * 2
+  const th = fontSize + padding * 2
+  tooltipCanvas.width = tw * CANVAS_SCALE
+  tooltipCanvas.height = th * CANVAS_SCALE
+
+  tooltipCtx.scale(CANVAS_SCALE, CANVAS_SCALE)
+  tooltipCtx.clearRect(0, 0, tw, th)
+
+  const radius = 6
+  tooltipCtx.beginPath()
+  tooltipCtx.moveTo(radius, 0)
+  tooltipCtx.lineTo(tw - radius, 0)
+  tooltipCtx.quadraticCurveTo(tw, 0, tw, radius)
+  tooltipCtx.lineTo(tw, th - radius)
+  tooltipCtx.quadraticCurveTo(tw, th, tw - radius, th)
+  tooltipCtx.lineTo(radius, th)
+  tooltipCtx.quadraticCurveTo(0, th, 0, th - radius)
+  tooltipCtx.lineTo(0, radius)
+  tooltipCtx.quadraticCurveTo(0, 0, radius, 0)
+  tooltipCtx.closePath()
+
+  tooltipCtx.fillStyle = 'rgba(0, 0, 0, 0.85)'
+  tooltipCtx.fill()
+  tooltipCtx.strokeStyle = 'rgba(255, 255, 255, 0.3)'
+  tooltipCtx.lineWidth = 1
+  tooltipCtx.stroke()
+
+  tooltipCtx.textAlign = 'center'
+  tooltipCtx.textBaseline = 'middle'
+  tooltipCtx.font = `bold ${fontSize}px "Microsoft YaHei", Arial, sans-serif`
+  tooltipCtx.fillStyle = '#ffffff'
+  tooltipCtx.fillText(props.name, tw / 2, th / 2)
+
+  tooltipTexture = new THREE.CanvasTexture(tooltipCanvas)
+  tooltipTexture.colorSpace = THREE.SRGBColorSpace
+  tooltipTexture.needsUpdate = true
+
+  const tooltipMaterial = new THREE.SpriteMaterial({
+    map: tooltipTexture,
+    transparent: true,
+    depthTest: false,
+    depthWrite: false,
+    sizeAttenuation: true,
+    opacity: 0,
+  })
+
+  tooltipSprite = new THREE.Sprite(tooltipMaterial)
+  tooltipSprite.position.set(props.positionX, props.positionY + 2.5 / 2, props.positionZ)
+  tooltipSprite.scale.set(0, 0, 1)
+  tooltipSprite.renderOrder = 1000
+  tooltipSprite.name = `tooltip_${props.labelId}`
+  scene.add(tooltipSprite)
+}
+
 function init(s: THREE.Scene, c: THREE.PerspectiveCamera) {
   scene = s
   camera = c
@@ -142,6 +210,17 @@ function tick() {
   s = Math.max(minScale, Math.min(maxScale, s))
   textSprite.scale.set(s * 3.0, s * 2.2, 1)
   textSprite.position.y = props.positionY + (s * 2.2) / 2
+
+  if (tooltipSprite) {
+    const tooltipScaleH = s * 1.0
+    const tooltipScaleW = tooltipScaleH * (tooltipSprite.material.map!.image.width / tooltipSprite.material.map!.image.height) * (ICON_H / ICON_W)
+    if (isHovered) {
+      tooltipSprite.scale.set(tooltipScaleW, tooltipScaleH, 1)
+      tooltipSprite.position.y = props.positionY + (s * 2.2) + tooltipScaleH / 2 + 0.3
+    } else {
+      tooltipSprite.scale.set(0, 0, 1)
+    }
+  }
 }
 
 function dispose() {
@@ -151,11 +230,21 @@ function dispose() {
     textSprite.material.dispose()
     textSprite = null
   }
+  if (tooltipSprite && scene) {
+    scene.remove(tooltipSprite)
+    tooltipSprite.material.map?.dispose()
+    tooltipSprite.material.dispose()
+    tooltipSprite = null
+  }
   if (spriteTexture) {
     spriteTexture = null
   }
+  if (tooltipTexture) {
+    tooltipTexture = null
+  }
   spriteCreated = false
   iconReady = false
+  isHovered = false
 }
 
 watch(() => props.value, () => {
@@ -164,7 +253,23 @@ watch(() => props.value, () => {
   }
 })
 
-defineExpose({ init, tick, dispose })
+function setHovered(hovered: boolean) {
+  isHovered = hovered
+  if (tooltipSprite) {
+    const mat = tooltipSprite.material as THREE.SpriteMaterial
+    mat.opacity = hovered ? 1 : 0
+  }
+}
+
+function getSprite(): THREE.Sprite | null {
+  return textSprite
+}
+
+function getPosition(): { x: number; y: number; z: number } {
+  return { x: props.positionX, y: props.positionY, z: props.positionZ }
+}
+
+defineExpose({ init, tick, dispose, setHovered, getSprite, getPosition })
 </script>
 
 <template>