@realsee/five 6.8.0-alpha.13 → 6.8.0-alpha.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (201) hide show
  1. package/ai_guides/README.md +1 -0
  2. package/ai_guides/features/material.md +2 -0
  3. package/ai_guides/features/pano-filter.md +148 -0
  4. package/ai_guides/release_notes/6.8.md +13 -1
  5. package/docs/assets/hierarchy.js +1 -1
  6. package/docs/assets/navigation.js +1 -1
  7. package/docs/assets/search.js +1 -1
  8. package/docs/classes/five.AdaptiveLuminancePass.html +1 -1
  9. package/docs/classes/five.BoundingMesh.html +2 -2
  10. package/docs/classes/five.Camera.html +1 -1
  11. package/docs/classes/five.EyeDomeLightingPass.html +1 -1
  12. package/docs/classes/five.Five.html +63 -63
  13. package/docs/classes/five.FivePass.html +1 -1
  14. package/docs/classes/five.Histogram.html +16 -0
  15. package/docs/classes/five.InternalWebGLRenderer.html +1 -1
  16. package/docs/classes/five.Model.html +1 -1
  17. package/docs/classes/five.ModelScene.html +1 -1
  18. package/docs/classes/five.NetworkSubscribe.html +1 -1
  19. package/docs/classes/five.PBMContainer.html +1 -1
  20. package/docs/classes/five.PBMCustomShader.html +42 -3
  21. package/docs/classes/five.PBMGSObject.html +1 -1
  22. package/docs/classes/five.PBMGroup.html +1 -1
  23. package/docs/classes/five.PBMMesh.html +1 -1
  24. package/docs/classes/five.PBMMeshMaterial.html +7 -6
  25. package/docs/classes/five.PBMPanoFilter.html +61 -0
  26. package/docs/classes/five.PBMPointCloud.html +1 -1
  27. package/docs/classes/five.PBMPointCloudMaterial.html +1 -1
  28. package/docs/classes/five.PBMSkinnedMesh.html +1 -1
  29. package/docs/classes/five.PBMUpdateable.html +41 -0
  30. package/docs/classes/five.PanoCircleMesh.html +1 -1
  31. package/docs/classes/five.PanoCircleMeshCustom.html +1 -1
  32. package/docs/classes/five.PanoCircleMeshSolid.html +1 -1
  33. package/docs/classes/five.Parameter.html +54 -52
  34. package/docs/classes/five.Scene.html +1 -1
  35. package/docs/classes/five.Subscribe.html +1 -1
  36. package/docs/classes/five.Tile3D.html +1 -1
  37. package/docs/classes/five.TileNode.html +1 -1
  38. package/docs/classes/five.TrajectoryNode.html +1 -1
  39. package/docs/classes/five.WorkResolvedObserver.html +1 -1
  40. package/docs/classes/gltf-loader.DDSLoader.html +1 -1
  41. package/docs/classes/gltf-loader.DRACOLoader.html +1 -1
  42. package/docs/classes/gltf-loader.GLTFLoader.html +1 -1
  43. package/docs/classes/gltf-loader.GLTFObject.html +1 -1
  44. package/docs/classes/gltf-loader.GLTFParser.html +1 -1
  45. package/docs/classes/gltf-loader.THREEGLTFLoader.html +1 -1
  46. package/docs/classes/line.Line.html +1 -1
  47. package/docs/classes/line.LineGeometry.html +1 -1
  48. package/docs/classes/line.LineMaterial.html +1 -1
  49. package/docs/classes/line.LineSegmentsGeometry.html +1 -1
  50. package/docs/classes/line.THREE_Line2.html +1 -1
  51. package/docs/classes/line.THREE_LineSegments2.html +1 -1
  52. package/docs/classes/plugins.BasePlugin.Controller.html +1 -1
  53. package/docs/classes/plugins.RoundedBoxGeometry.html +1 -1
  54. package/docs/classes/sticker.Sticker.html +1 -1
  55. package/docs/classes/vfx.Airflow.html +1 -1
  56. package/docs/classes/vfx.Flame.html +1 -1
  57. package/docs/classes/vfx.Particle.html +1 -1
  58. package/docs/classes/vfx.ParticleGPU.html +1 -1
  59. package/docs/classes/vfx.SpotLight.html +1 -1
  60. package/docs/documents/README.html +1 -0
  61. package/docs/documents/features_material.html +7 -0
  62. package/docs/documents/features_pano-filter.html +122 -0
  63. package/docs/documents/release_notes_6.8.html +12 -2
  64. package/docs/hierarchy.html +1 -1
  65. package/docs/index.html +1 -0
  66. package/docs/interfaces/five.AddableObject.html +1 -1
  67. package/docs/interfaces/five.AjaxOptions.html +1 -1
  68. package/docs/interfaces/five.BaseEvent.html +1 -1
  69. package/docs/interfaces/five.EventCallback.html +1 -1
  70. package/docs/interfaces/five.FloorplanControllerCustomInitArgs.html +9 -9
  71. package/docs/interfaces/five.GestureEvent.html +1 -1
  72. package/docs/interfaces/five.ImageOptions.html +1 -1
  73. package/docs/interfaces/five.IntersectEvent.html +1 -1
  74. package/docs/interfaces/five.IntersectMesh.html +1 -1
  75. package/docs/interfaces/five.IntersectMeshInterface.html +1 -1
  76. package/docs/interfaces/five.Intersection.html +1 -1
  77. package/docs/interfaces/five.LooseWorkWithExtrinsics.html +1 -1
  78. package/docs/interfaces/five.MapviewControllerCustomInitArgs.html +9 -9
  79. package/docs/interfaces/five.ModeChangeEvent.html +1 -1
  80. package/docs/interfaces/five.ModelControllerCustomInitArgs.html +1 -1
  81. package/docs/interfaces/five.ModelEvent.html +1 -1
  82. package/docs/interfaces/five.ModelSceneEvent.html +1 -1
  83. package/docs/interfaces/five.ModelTileEvent.html +1 -1
  84. package/docs/interfaces/five.MovePanoOptions.html +1 -1
  85. package/docs/interfaces/five.NetworkAbortError.html +1 -1
  86. package/docs/interfaces/five.NetworkFirbiddenError.html +1 -1
  87. package/docs/interfaces/five.NetworkOptions.html +1 -1
  88. package/docs/interfaces/five.NetworkProxyError.html +1 -1
  89. package/docs/interfaces/five.NetworkResourceEvent.html +1 -1
  90. package/docs/interfaces/five.NetworkResponseError.html +1 -1
  91. package/docs/interfaces/five.NetworkTimeoutError.html +1 -1
  92. package/docs/interfaces/five.ObjectEvent.html +1 -1
  93. package/docs/interfaces/five.PBMClipperParameter.html +2 -2
  94. package/docs/interfaces/five.PBMCustomShaderInitArgs.html +2 -2
  95. package/docs/interfaces/five.PBMCustomShaderSlots.html +2 -2
  96. package/docs/interfaces/five.PBMMaterial.html +1 -1
  97. package/docs/interfaces/five.PBMMeshMaterialParameters.html +5 -2
  98. package/docs/interfaces/five.PBMPanoDepth.html +5 -5
  99. package/docs/interfaces/five.PBMPanoFilterValue.html +5 -0
  100. package/docs/interfaces/five.PBMPanoPicture.html +8 -6
  101. package/docs/interfaces/five.PBMPointCloudMaterialParameters.html +1 -1
  102. package/docs/interfaces/five.PBMRefinedScreen.html +2 -2
  103. package/docs/interfaces/five.PanoCircleMeshInterface.html +1 -1
  104. package/docs/interfaces/five.PanoEvent.html +1 -1
  105. package/docs/interfaces/five.PanoTextureEvent.html +1 -1
  106. package/docs/interfaces/five.PanoramaControllerCustomInitArgs.html +9 -9
  107. package/docs/interfaces/five.PanoramaLikeControllerCustomInitArgs.html +1 -1
  108. package/docs/interfaces/five.ParameterMaterialValue.html +39 -37
  109. package/docs/interfaces/five.ParameterTilesetValue.html +15 -15
  110. package/docs/interfaces/five.ParameterValue.html +53 -51
  111. package/docs/interfaces/five.Pose.html +1 -1
  112. package/docs/interfaces/five.RenderEvent.html +1 -1
  113. package/docs/interfaces/five.ResolvedParameterValue.html +53 -51
  114. package/docs/interfaces/five.RgbaData.html +7 -0
  115. package/docs/interfaces/five.State.html +1 -1
  116. package/docs/interfaces/five.StateEvent.html +1 -1
  117. package/docs/interfaces/five.TextureOptions.html +1 -1
  118. package/docs/interfaces/five.TopviewControllerCustomInitArgs.html +7 -7
  119. package/docs/interfaces/five.VRPanoramaControllerCustomInitArgs.html +9 -9
  120. package/docs/interfaces/five.ViewLayer.html +1 -1
  121. package/docs/interfaces/five.WorkCubeImage.html +1 -1
  122. package/docs/interfaces/five.WorkImage.html +1 -1
  123. package/docs/interfaces/five.WorkObserver.html +1 -1
  124. package/docs/interfaces/five.WorkTile.html +1 -1
  125. package/docs/interfaces/five.WorksEvent.html +1 -1
  126. package/docs/interfaces/five.XRControllerEvent.html +1 -1
  127. package/docs/interfaces/five.XRGestureEvent.html +1 -1
  128. package/docs/interfaces/five.XRPanoramaControllerCustomInitArgs.html +9 -9
  129. package/docs/interfaces/five.XRSessionEvent.html +1 -1
  130. package/docs/interfaces/plugins.BackgroundPluginController.html +1 -1
  131. package/docs/interfaces/plugins.BackgroundPluginType.EventMap.html +1 -1
  132. package/docs/interfaces/plugins.BasePlugin.State.html +1 -1
  133. package/docs/interfaces/plugins.DynamicPathLinePluginController.html +1 -1
  134. package/docs/interfaces/plugins.DynamicPathLinePluginType.EventMap.html +1 -1
  135. package/docs/interfaces/plugins.DynamicPathLinePluginType.State.html +1 -1
  136. package/docs/interfaces/plugins.ItemMaskController.html +1 -1
  137. package/docs/interfaces/plugins.ItemMaskPluginType.EventMap.html +1 -1
  138. package/docs/interfaces/plugins.ItemMaskPluginType.State.html +1 -1
  139. package/docs/interfaces/plugins.OrientationPluginController.html +1 -1
  140. package/docs/interfaces/plugins.OrientationPluginType.EventMap.html +1 -1
  141. package/docs/interfaces/plugins.OrientationPluginType.State.html +1 -1
  142. package/docs/interfaces/plugins.PanoAnimeController.html +1 -1
  143. package/docs/interfaces/plugins.PanoAnimePluginType.EventMap.html +1 -1
  144. package/docs/interfaces/plugins.PanoAnimePluginType.State.html +1 -1
  145. package/docs/interfaces/plugins.PluginTemplateType.EventMap.html +1 -1
  146. package/docs/interfaces/plugins.PluginTemplateType.State.html +1 -1
  147. package/docs/interfaces/plugins.TrajectoryController.html +1 -1
  148. package/docs/interfaces/react.FiveInjectionTypes.html +1 -1
  149. package/docs/modules/five.html +1 -1
  150. package/docs/modules.html +1 -1
  151. package/docs/types/five.PBMAlphaMode.html +1 -1
  152. package/docs/types/five.PBMColorStyle.html +1 -1
  153. package/docs/types/five.PBMFloorStyle.html +1 -1
  154. package/docs/types/five.PBMMeshShaderType.html +1 -1
  155. package/docs/types/five.PBMPointBack.html +1 -1
  156. package/docs/types/five.PBMPointCloudShaderType.html +1 -1
  157. package/docs/types/five.PBMPointShape.html +1 -1
  158. package/docs/types/five.PBMPointSize.html +1 -1
  159. package/docs/types/five.PBMTransition.html +1 -1
  160. package/docs/types/five.ParseOptions.html +1 -1
  161. package/docs/types/plugins.BasePlugin.EventMap.html +1 -1
  162. package/five/application/five.d.ts +5 -0
  163. package/five/index.d.ts +2 -0
  164. package/five/index.js +108 -81
  165. package/five/index.mjs +7677 -7365
  166. package/five/model/index.d.ts +1 -1
  167. package/five/model/materials/pbmMaterial.d.ts +60 -2
  168. package/five/model/materials/pbmMeshMaterial.d.ts +5 -1
  169. package/five/model/parameter.d.ts +5 -1
  170. package/five/renderer/tools/render-cube-to-equirectangular.d.ts +7 -0
  171. package/five/texture/histogram.d.ts +47 -0
  172. package/five/texture/textureData.d.ts +10 -0
  173. package/gltf-loader/index.js +3 -3
  174. package/gltf-loader/index.mjs +3 -3
  175. package/line/index.js +3 -3
  176. package/line/index.mjs +3 -3
  177. package/llms.txt +1 -0
  178. package/package.json +1 -1
  179. package/plugins/index.js +2 -2
  180. package/plugins/index.mjs +2 -2
  181. package/react/index.js +2 -2
  182. package/react/index.mjs +2 -2
  183. package/shader-lib/index.js +2 -2
  184. package/shader-lib/index.mjs +2 -2
  185. package/sticker/index.js +3 -3
  186. package/sticker/index.mjs +3 -3
  187. package/umd/five-gltf-loader.js +3 -3
  188. package/umd/five-line.js +3 -3
  189. package/umd/five-plugins.js +2 -2
  190. package/umd/five-react.js +2 -2
  191. package/umd/five-shader-lib.js +2 -2
  192. package/umd/five-sticker.js +3 -3
  193. package/umd/five-vfx.js +2 -2
  194. package/umd/five-vue.js +2 -2
  195. package/umd/five.js +108 -81
  196. package/vfx/index.js +2 -2
  197. package/vfx/index.mjs +2 -2
  198. package/vue/index.js +2 -2
  199. package/vue/index.mjs +2 -2
  200. package/work-downloader/index.js +2 -2
  201. package/work-downloader/index.mjs +2 -2
@@ -78,6 +78,7 @@
78
78
  * [Flowing Light 3D Pass](./features/flowing-light-3d-pass.md): 3D 世界坐标流光特效(InstancedMesh 优化)。
79
79
  * [Gaussian Blur Pass](./features/gaussian-blur-pass.md): 高斯模糊特效。
80
80
  * [Material](./features/material.md): 材质参数配置 (透明度、点云大小、顶点标记)。
81
+ * [Pano Filter](./features/pano-filter.md): 全景图滤镜 (亮度、对比度、色温调节)。
81
82
  * [Get Screen Pixels](./features/get-screen-pixels.md): 获取屏幕像素 (放大镜/截图)。
82
83
  * [Move Pano Effect](./features/move-pano-effect.md): 全景点位切换的过渡效果。
83
84
  * [Clipper](./features/clipper.md): 模型裁切功能 (房屋剖面)。
@@ -82,6 +82,7 @@ Five 支持高性能的点云渲染(PBM),并提供灵活的样式配置:
82
82
  | `receiveShadow` | `boolean` | `false` | 模型是否接收阴影。 |
83
83
  | `useAddBlend` | `boolean` | `false` | 是否使用半透明叠加渲染。 |
84
84
  | `customShaders` | `PBMCustomShader[]` | `[]` | 自定义 Shader 配置。 |
85
+ | `panoFilter` | `PBMPanoFilter` | `null` | 全景图滤镜 (亮度、对比度、色温等)。详情见 [Pano Filter](./pano-filter.md)。 |
85
86
  | `clippers` | `PBMClipperParameter[]` | `[]` | 模型裁切参数。 |
86
87
  | `boundingBox` | `THREE.Box3` | `Infinity` | 模型包围盒。 |
87
88
 
@@ -142,6 +143,7 @@ five.model.set({
142
143
  ## Related
143
144
 
144
145
  * [Parameter](./parameter.md): 配置系统入口与继承逻辑。
146
+ * [Pano Filter](./pano-filter.md): 了解全景图滤镜的详细用法。
145
147
  * [3DTile Params](./3dtile.md): 性能与加载相关参数。
146
148
 
147
149
  ---
@@ -0,0 +1,148 @@
1
+ # Pano Filter (全景图滤镜)
2
+
3
+ - **Summary**: `PBMPanoFilter` 用于调整全景图的视觉效果,包括亮度、对比度、饱和度、色温、色调等。它作为参数传递给 `ModelScene`,可实时改变全景图的渲染表现。
4
+ - **Schema**: `PBMPanoFilter`, `PBMUpdateable`
5
+ - **Concepts**: Material Filter, Color Correction
6
+ - **Configuration**: Temperature, Tint, Brightness, Contrast, Saturation
7
+ - **Examples**: 滤镜开启与参数调整
8
+
9
+ ## Schema
10
+
11
+ > **Definition**: [PBMPanoFilter](../../five/model/materials/pbmMaterial.d.ts)
12
+
13
+ `PBMPanoFilter` 类定义了全景图的滤镜参数。所有属性均为对象引用,直接修改其内部属性即可生效。
14
+
15
+ ```typescript
16
+ import { PBMUpdateable } from "@realsee/five";
17
+
18
+ export class PBMPanoFilter extends PBMUpdateable {
19
+ /** 对比度控制 */
20
+ public readonly contrast: {
21
+ /** 对比度偏移 [-1, 1] (默认 0) */
22
+ contrastBias: number;
23
+ };
24
+
25
+ /** 饱和度控制 */
26
+ public readonly saturation: {
27
+ /** 饱和度偏移 [-1, 1] (默认 0) */
28
+ saturationBias: number;
29
+ };
30
+
31
+ /** 颜色控制 (色温与色调) */
32
+ public readonly color: {
33
+ /** 色温偏移 [-100, 100] (默认 0) */
34
+ temperatureBias: number;
35
+ /** 色调偏移 [-100, 100] (默认 0) */
36
+ tintBias: number
37
+ };
38
+
39
+ /** 高光与阴影控制 */
40
+ public readonly highlightShadow: {
41
+ /** 全局亮度偏移 [-255, 255] (默认 0) */
42
+ globalBias: number;
43
+ /** 高光偏移 [-255, 255] (默认 0) */
44
+ highlightBias: number;
45
+ /** 阴影偏移 [-255, 255] (默认 0) */
46
+ shadowBias: number;
47
+ };
48
+ }
49
+ ```
50
+
51
+ ## Concepts
52
+
53
+ ### Material Filter (材质滤镜)
54
+ 与 [Postprocessing](./postprocessing.md) (后处理) 不同,`PBMPanoFilter` 是作用于全景图材质 (Material) 阶段的滤镜。这意味着它直接影响纹理的采样和着色计算,而不是对最终渲染图像进行二次处理。
55
+
56
+ ### Parameter Binding (参数绑定)
57
+ 滤镜实例需要通过 `five.modelScene.parameter.set('panoFilter', filter)` 绑定到场景中才能生效。
58
+
59
+ ## Configuration
60
+
61
+ 以下参数均通过修改 `PBMPanoFilter` 实例的属性进行配置。
62
+
63
+ ### Color & Tone (色彩与色调)
64
+
65
+ | Property | Type | Range | Default | Description |
66
+ | :--- | :--- | :--- | :--- | :--- |
67
+ | `color.temperatureBias` | `number` | `[-100, 100]` | `0` | **色温**。正值偏暖 (黄),负值偏冷 (蓝)。 |
68
+ | `color.tintBias` | `number` | `[-100, 100]` | `0` | **色调**。正值偏洋红,负值偏绿。 |
69
+ | `saturation.saturationBias` | `number` | `[-1, 1]` | `0` | **饱和度**。`0` 为原色,`-1` 为黑白。 |
70
+ | `contrast.contrastBias` | `number` | `[-1, 1]` | `0` | **对比度**。正值增强对比,负值降低对比。 |
71
+
72
+ ### Light & Shadow (光影)
73
+
74
+ | Property | Type | Range | Default | Description |
75
+ | :--- | :--- | :--- | :--- | :--- |
76
+ | `highlightShadow.globalBias` | `number` | `[-255, 255]` | `0` | **亮度 (Brightness)**。整体提升或降低画面亮度。 |
77
+ | `highlightShadow.highlightBias` | `number` | `[-255, 255]` | `0` | **高光 (Highlight)**。仅调整画面亮部的亮度。 |
78
+ | `highlightShadow.shadowBias` | `number` | `[-255, 255]` | `0` | **阴影 (Shadow)**。仅调整画面暗部的亮度。 |
79
+
80
+ ## Examples
81
+
82
+ ### Basic Usage (基础用法)
83
+
84
+ 创建一个滤镜实例并应用到 Five 场景中。
85
+
86
+ ```typescript
87
+ import { Five, PBMPanoFilter } from "@realsee/five";
88
+
89
+ const five = new Five();
90
+ // ... 初始化 five ...
91
+
92
+ // 1. 创建滤镜实例
93
+ const panoFilter = new PBMPanoFilter();
94
+
95
+ // 2. 配置参数 (例如:增加一点暖色调和亮度)
96
+ panoFilter.color.temperatureBias = 10; // 暖色
97
+ panoFilter.highlightShadow.globalBias = 20; // 提亮
98
+
99
+ // 3. 启用滤镜
100
+ five.modelScene.parameter.set('panoFilter', panoFilter);
101
+
102
+ // 4. (可选) 停用滤镜
103
+ // five.modelScene.parameter.reset('panoFilter');
104
+ ```
105
+
106
+ ### Interactive Adjustment (动态调整)
107
+
108
+ 滤镜参数支持实时修改,适合制作调节面板。
109
+
110
+ ```typescript
111
+ import { Five, PBMPanoFilter } from "@realsee/five";
112
+
113
+ // 假设已经有 five 实例
114
+ const panoFilter = new PBMPanoFilter();
115
+ five.modelScene.parameter.set('panoFilter', panoFilter);
116
+
117
+ // 模拟 UI 绑定的数据对象
118
+ const filterSettings = {
119
+ brightness: 0,
120
+ contrast: 0,
121
+ };
122
+
123
+ // 监听 UI 变化 (示例伪代码)
124
+ function onBrightnessChange(value: number) {
125
+ // value range: [-255, 255]
126
+ panoFilter.highlightShadow.globalBias = value;
127
+ // 如果 five 没有开启自动渲染 (play: false),需要手动触发重绘
128
+ five.needsRender = true;
129
+ }
130
+
131
+ function onContrastChange(value: number) {
132
+ // value range: [-1, 1]
133
+ panoFilter.contrast.contrastBias = value;
134
+ five.needsRender = true;
135
+ }
136
+ ```
137
+
138
+ ## Related
139
+
140
+ * [Model](./model.md): 了解 ModelScene 及其参数系统。
141
+ * [Parameter](./parameter.md): 了解 Five 的全局初始化参数。
142
+ * [Postprocessing](./postprocessing.md): 了解屏幕空间的后处理效果。
143
+
144
+ ---
145
+
146
+ ```yaml
147
+ tags: [filter, material, visual, color, brightness, contrast]
148
+ ```
@@ -150,6 +150,18 @@ UV 转换工具函数
150
150
  - observer.vectorToCubemapUv: 将方向向量转化为立方体贴图 uv。
151
151
  - observer.cubemapUvToVector: 将立方体贴图 uv 转化为方向向量。
152
152
 
153
+ ## 全景图滤镜
154
+
155
+ 新增了全景图滤镜功能,支持实时调整全景图的亮度、对比度、饱和度、色温和色调等参数。
156
+
157
+ 通过 `five.modelScene.parameter.set('panoFilter', filter)` 绑定。
158
+ 支持的参数如下:
159
+ - color: 颜色调整,包含色温 (Temperature) 和色调 (Tint)。
160
+ - highlightShadow: 高光和阴影的独立调节。包括高光 (Highlight) 和阴影 (Shadow) 全局(Global)。
161
+ - contrast: 对比度调整。
162
+ - saturation: 饱和度调整。
163
+
164
+
153
165
  ## 新增后处理效果 (Post-Processing Passes)
154
166
  新增了三个可选的内置后处理 Pass,用于增强视觉效果。
155
167
 
@@ -188,7 +200,7 @@ UV 转换工具函数
188
200
  2. 优化 floorplan 从下向上看时的交互的屏幕上下滑动反人类下意识的问题。
189
201
  3. 优化 camera.autoNearFar 的计算结果。优化对于小物品的 near 过远以及 出现 z-fighting 的问题。
190
202
  4. 添加了 gesture.create 事件,发生在所有事件创建时。
191
- 5. gestureEvent.center gestureEvent.pointers 中加入了 buttons button shiftKey ctrlKey metaKey altKey
203
+ 5. gestureEvent.center gestureEvent.pointers 中加入了 buttons button shiftKey ctrlKey metaKey altKey 字段。
192
204
 
193
205
  ## 内部机制改动
194
206
  1. glTF 加载 mesh / points 都将直接使用 PBM 材质,而不是作为 PBM_Mesh 扩展形式去替换覆盖使用three内置材质的方式。
@@ -1 +1 @@
1
- window.hierarchyData = "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"
1
+ window.hierarchyData = "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"
@@ -1 +1 @@
1
- window.navigationData = "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"
1
+ window.navigationData = "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"