@realsee/five 6.8.0-alpha.2 → 6.8.0-alpha.20

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 (713) hide show
  1. package/AGENTS_READ_ME.md +4 -0
  2. package/AI_CONTEXT.md +4 -0
  3. package/README.md +9 -6
  4. package/{guides → ai_guides}/README.md +12 -2
  5. package/ai_guides/ai-doc-guidelines.md +102 -0
  6. package/{guides → ai_guides}/api.md +24 -1
  7. package/ai_guides/features/3dtile.md +172 -0
  8. package/{guides → ai_guides}/features/camera-animation.md +24 -3
  9. package/{guides → ai_guides}/features/clipper.md +2 -0
  10. package/{guides/features/coordnate-system.md → ai_guides/features/coordinate-system.md} +2 -0
  11. package/{guides → ai_guides}/features/event.md +2 -0
  12. package/{guides → ai_guides}/features/five.md +4 -0
  13. package/ai_guides/features/flowing-light-2d-pass.md +438 -0
  14. package/ai_guides/features/flowing-light-3d-pass.md +420 -0
  15. package/ai_guides/features/gaussian-blur-pass.md +202 -0
  16. package/{guides → ai_guides}/features/gesture.md +3 -0
  17. package/{guides → ai_guides}/features/get-screen-pixels.md +2 -0
  18. package/{guides → ai_guides}/features/image-options.md +3 -0
  19. package/{guides → ai_guides}/features/load-external-model.md +21 -0
  20. package/ai_guides/features/load-progress.md +140 -0
  21. package/ai_guides/features/material.md +153 -0
  22. package/{guides → ai_guides}/features/mode.md +4 -0
  23. package/{guides → ai_guides}/features/model.md +4 -1
  24. package/{guides → ai_guides}/features/move-pano-effect.md +2 -0
  25. package/{guides → ai_guides}/features/multi-work.md +2 -0
  26. package/ai_guides/features/pano-filter.md +148 -0
  27. package/{guides → ai_guides}/features/pano-tile.md +7 -14
  28. package/ai_guides/features/pano-uv.md +131 -0
  29. package/ai_guides/features/parameter.md +153 -0
  30. package/ai_guides/features/plugin.md +210 -0
  31. package/{guides → ai_guides}/features/postprocessing.md +39 -4
  32. package/{guides → ai_guides}/features/raycast.md +11 -0
  33. package/{guides → ai_guides}/features/request-proxy.md +2 -0
  34. package/{guides → ai_guides}/features/screen-project.md +2 -0
  35. package/{guides → ai_guides}/features/state.md +2 -0
  36. package/ai_guides/features/view-layer.md +187 -0
  37. package/{guides → ai_guides}/features/work.md +63 -2
  38. package/{guides → ai_guides}/glossary.md +26 -5
  39. package/{guides → ai_guides}/intro.md +1 -1
  40. package/{guides → ai_guides}/quick-start.md +1 -0
  41. package/ai_guides/release_notes/6.8.md +208 -0
  42. package/{guides → ai_guides}/template.md +17 -3
  43. package/docs/00_FOR_AI_AGENTS.md +11 -0
  44. package/docs/README.md +4 -7
  45. package/docs/assets/hierarchy.js +1 -1
  46. package/docs/assets/navigation.js +1 -1
  47. package/docs/assets/search.js +1 -1
  48. package/docs/classes/five.AdaptiveLuminancePass.html +7 -6
  49. package/docs/classes/five.BoundingMesh.html +2 -2
  50. package/docs/classes/five.Camera.html +1 -1
  51. package/docs/classes/five.EyeDomeLightingPass.html +1 -1
  52. package/docs/classes/five.Five.html +73 -72
  53. package/docs/classes/five.FivePass.html +1 -1
  54. package/docs/classes/five.Histogram.html +19 -0
  55. package/docs/classes/five.InternalWebGLRenderer.html +1 -1
  56. package/docs/classes/five.Model.html +31 -31
  57. package/docs/classes/five.ModelScene.html +1 -1
  58. package/docs/classes/five.NetworkSubscribe.html +1 -1
  59. package/docs/classes/five.PBMContainer.html +1 -1
  60. package/docs/classes/five.PBMCustomShader.html +42 -3
  61. package/docs/classes/five.PBMGSObject.html +1 -1
  62. package/docs/classes/five.PBMGroup.html +1 -1
  63. package/docs/classes/five.PBMMesh.html +1 -1
  64. package/docs/classes/five.PBMMeshMaterial.html +16 -7
  65. package/docs/classes/five.PBMPanoFilter.html +61 -0
  66. package/docs/classes/five.PBMPointCloud.html +1 -1
  67. package/docs/classes/five.PBMPointCloudMaterial.html +5 -6
  68. package/docs/classes/five.PBMSkinnedMesh.html +1 -1
  69. package/docs/classes/five.PBMUpdateable.html +41 -0
  70. package/docs/classes/five.PanoCircleMesh.html +1 -1
  71. package/docs/classes/five.PanoCircleMeshCustom.html +1 -1
  72. package/docs/classes/five.PanoCircleMeshSolid.html +1 -1
  73. package/docs/classes/five.Parameter.html +56 -52
  74. package/docs/classes/five.Scene.html +1 -1
  75. package/docs/classes/five.Subscribe.html +1 -1
  76. package/docs/classes/five.Tile.html +1 -1
  77. package/docs/classes/five.Tile3D.html +30 -26
  78. package/docs/classes/five.TileNode.html +1 -1
  79. package/docs/classes/five.Trajectory.html +1 -1
  80. package/docs/classes/five.TrajectoryNode.html +1 -1
  81. package/docs/classes/five.Work.html +16 -16
  82. package/docs/classes/five.WorkResolvedObserver.html +27 -2
  83. package/docs/classes/gltf-loader.DDSLoader.html +1 -1
  84. package/docs/classes/gltf-loader.DRACOLoader.html +1 -1
  85. package/docs/classes/gltf-loader.GLTFLoader.html +1 -1
  86. package/docs/classes/gltf-loader.GLTFObject.html +1 -1
  87. package/docs/classes/gltf-loader.GLTFParser.html +1 -1
  88. package/docs/classes/gltf-loader.THREEGLTFLoader.html +1 -1
  89. package/docs/classes/line.Line.html +1 -1
  90. package/docs/classes/line.LineGeometry.html +1 -1
  91. package/docs/classes/line.LineMaterial.html +1 -1
  92. package/docs/classes/line.LineSegmentsGeometry.html +1 -1
  93. package/docs/classes/line.THREE_Line2.html +1 -1
  94. package/docs/classes/line.THREE_LineSegments2.html +1 -1
  95. package/docs/classes/plugins.BasePlugin.Controller.html +1 -1
  96. package/docs/classes/plugins.RoundedBoxGeometry.html +1 -1
  97. package/docs/classes/sticker.Sticker.html +1 -1
  98. package/docs/classes/vfx.Airflow.html +1 -1
  99. package/docs/classes/vfx.Flame.html +1 -1
  100. package/docs/classes/vfx.Particle.html +1 -1
  101. package/docs/classes/vfx.ParticleGPU.html +1 -1
  102. package/docs/classes/vfx.SpotLight.html +1 -1
  103. package/docs/documents/README.html +11 -2
  104. package/docs/documents/ai-doc-guidelines.html +60 -15
  105. package/docs/documents/api.html +40 -15
  106. package/docs/documents/features_3dtile.html +142 -45
  107. package/docs/documents/features_camera-animation.html +62 -5
  108. package/docs/documents/features_clipper.html +3 -0
  109. package/docs/documents/{features_coordnate-system.html → features_coordinate-system.html} +4 -1
  110. package/docs/documents/features_event.html +3 -0
  111. package/docs/documents/features_five.html +4 -0
  112. package/docs/documents/features_flowing-light-2d-pass.html +356 -0
  113. package/docs/documents/features_flowing-light-3d-pass.html +351 -0
  114. package/docs/documents/features_gaussian-blur-pass.html +182 -0
  115. package/docs/documents/features_gesture.html +4 -0
  116. package/docs/documents/features_get-screen-pixels.html +3 -0
  117. package/docs/documents/features_image-options.html +3 -0
  118. package/docs/documents/features_load-external-model.html +25 -2
  119. package/docs/documents/features_load-progress.html +110 -0
  120. package/docs/documents/features_material.html +341 -0
  121. package/docs/documents/features_mode.html +5 -0
  122. package/docs/documents/features_model.html +5 -1
  123. package/docs/documents/features_move-pano-effect.html +3 -0
  124. package/docs/documents/features_multi-work.html +3 -0
  125. package/docs/documents/features_pano-filter.html +122 -0
  126. package/docs/documents/features_pano-tile.html +34 -19
  127. package/docs/documents/features_pano-uv.html +82 -0
  128. package/docs/documents/features_parameter.html +76 -56
  129. package/docs/documents/features_plugin.html +105 -0
  130. package/docs/documents/features_postprocessing.html +22 -5
  131. package/docs/documents/features_raycast.html +4 -1
  132. package/docs/documents/features_request-proxy.html +3 -0
  133. package/docs/documents/features_screen-project.html +3 -0
  134. package/docs/documents/features_state.html +3 -0
  135. package/docs/documents/features_view-layer.html +158 -0
  136. package/docs/documents/features_work.html +63 -2
  137. package/docs/documents/glossary.html +31 -6
  138. package/docs/documents/intro.html +1 -1
  139. package/docs/documents/quick-start.html +1 -0
  140. package/docs/documents/release_notes_6.8.html +189 -0
  141. package/docs/documents/template.html +45 -4
  142. package/docs/functions/five.loadAt3d.html +1 -1
  143. package/docs/functions/five.loadB3dm.html +1 -1
  144. package/docs/functions/five.loadDome.html +1 -1
  145. package/docs/functions/five.loadDomez.html +1 -1
  146. package/docs/functions/five.loadFbx.html +1 -1
  147. package/docs/functions/five.loadGltf.html +1 -1
  148. package/docs/functions/five.loadPbm.html +1 -1
  149. package/docs/functions/five.loadPly.html +1 -1
  150. package/docs/functions/five.loadPnts.html +1 -1
  151. package/docs/functions/five.loadSplat.html +1 -1
  152. package/docs/functions/five.loadSpz.html +1 -1
  153. package/docs/functions/five.loadX3p.html +1 -1
  154. package/docs/functions/five.parseWork.html +1 -1
  155. package/docs/functions/vue.useFiveWorks.html +2 -2
  156. package/docs/hierarchy.html +1 -1
  157. package/docs/index.html +11 -2
  158. package/docs/interfaces/five.AddableObject.html +1 -1
  159. package/docs/interfaces/five.AjaxOptions.html +1 -1
  160. package/docs/interfaces/five.BaseEvent.html +2 -2
  161. package/docs/interfaces/five.EventCallback.html +53 -47
  162. package/docs/interfaces/five.FloorplanControllerCustomInitArgs.html +9 -9
  163. package/docs/interfaces/five.GestureEvent.html +2 -2
  164. package/docs/interfaces/five.ImageOptions.html +1 -1
  165. package/docs/interfaces/five.IntersectEvent.html +2 -2
  166. package/docs/interfaces/five.IntersectMesh.html +1 -1
  167. package/docs/interfaces/five.IntersectMeshInterface.html +1 -1
  168. package/docs/interfaces/five.Intersection.html +4 -3
  169. package/docs/interfaces/five.LooseWorkWithExtrinsics.html +6 -6
  170. package/docs/interfaces/five.MapviewControllerCustomInitArgs.html +9 -9
  171. package/docs/interfaces/five.ModeChangeEvent.html +2 -2
  172. package/docs/interfaces/five.ModelControllerCustomInitArgs.html +1 -1
  173. package/docs/interfaces/five.ModelEvent.html +2 -2
  174. package/docs/interfaces/five.ModelSceneEvent.html +2 -2
  175. package/docs/interfaces/five.ModelTileEvent.html +8 -0
  176. package/docs/interfaces/five.MovePanoOptions.html +7 -7
  177. package/docs/interfaces/five.NetworkAbortError.html +1 -1
  178. package/docs/interfaces/five.NetworkFirbiddenError.html +1 -1
  179. package/docs/interfaces/five.NetworkOptions.html +1 -1
  180. package/docs/interfaces/five.NetworkProxyError.html +1 -1
  181. package/docs/interfaces/five.NetworkResourceEvent.html +2 -2
  182. package/docs/interfaces/five.NetworkResponseError.html +1 -1
  183. package/docs/interfaces/five.NetworkTimeoutError.html +1 -1
  184. package/docs/interfaces/five.ObjectEvent.html +2 -2
  185. package/docs/interfaces/five.PBMClipperParameter.html +2 -2
  186. package/docs/interfaces/five.PBMCustomShaderInitArgs.html +2 -2
  187. package/docs/interfaces/five.PBMCustomShaderSlots.html +2 -2
  188. package/docs/interfaces/five.PBMMaterial.html +1 -1
  189. package/docs/interfaces/five.PBMMeshMaterialParameters.html +5 -3
  190. package/docs/interfaces/five.PBMPanoDepth.html +5 -5
  191. package/docs/interfaces/five.PBMPanoFilterValue.html +6 -0
  192. package/docs/interfaces/five.PBMPanoPicture.html +8 -6
  193. package/docs/interfaces/five.PBMPointCloudMaterialParameters.html +2 -3
  194. package/docs/interfaces/five.PBMRefinedScreen.html +2 -2
  195. package/docs/interfaces/five.PanoCircleMeshInterface.html +1 -1
  196. package/docs/interfaces/five.PanoEvent.html +2 -2
  197. package/docs/interfaces/five.PanoTextureEvent.html +2 -2
  198. package/docs/interfaces/five.PanoramaControllerCustomInitArgs.html +1 -1
  199. package/docs/interfaces/five.PanoramaLikeControllerCustomInitArgs.html +1 -1
  200. package/docs/interfaces/five.ParameterMaterialValue.html +41 -37
  201. package/docs/interfaces/five.ParameterTilesetValue.html +15 -15
  202. package/docs/interfaces/five.ParameterValue.html +55 -51
  203. package/docs/interfaces/five.Pose.html +1 -1
  204. package/docs/interfaces/five.RenderEvent.html +2 -2
  205. package/docs/interfaces/five.ResolvedParameterValue.html +55 -51
  206. package/docs/interfaces/five.RgbaData.html +7 -0
  207. package/docs/interfaces/five.State.html +1 -1
  208. package/docs/interfaces/five.StateEvent.html +2 -2
  209. package/docs/interfaces/five.TextureOptions.html +1 -1
  210. package/docs/interfaces/five.Tile3DOptions.html +2 -2
  211. package/docs/interfaces/five.TopviewControllerCustomInitArgs.html +7 -7
  212. package/docs/interfaces/five.VRPanoramaControllerCustomInitArgs.html +1 -1
  213. package/docs/interfaces/five.ViewLayer.html +30 -26
  214. package/docs/interfaces/five.WorkCubeImage.html +1 -1
  215. package/docs/interfaces/five.WorkImage.html +1 -1
  216. package/docs/interfaces/five.WorkModel.html +8 -8
  217. package/docs/interfaces/five.WorkModelLayer.html +6 -6
  218. package/docs/interfaces/five.WorkObserver.html +27 -2
  219. package/docs/interfaces/five.WorkTile.html +1 -1
  220. package/docs/interfaces/five.WorksEvent.html +2 -2
  221. package/docs/interfaces/five.XRControllerEvent.html +2 -2
  222. package/docs/interfaces/five.XRGestureEvent.html +2 -2
  223. package/docs/interfaces/five.XRPanoramaControllerCustomInitArgs.html +1 -1
  224. package/docs/interfaces/five.XRSessionEvent.html +2 -2
  225. package/docs/interfaces/plugins.BackgroundPluginController.html +1 -1
  226. package/docs/interfaces/plugins.BackgroundPluginType.EventMap.html +1 -1
  227. package/docs/interfaces/plugins.BasePlugin.State.html +1 -1
  228. package/docs/interfaces/plugins.DynamicPathLinePluginController.html +1 -1
  229. package/docs/interfaces/plugins.DynamicPathLinePluginType.EventMap.html +1 -1
  230. package/docs/interfaces/plugins.DynamicPathLinePluginType.State.html +1 -1
  231. package/docs/interfaces/plugins.ItemMaskController.html +1 -1
  232. package/docs/interfaces/plugins.ItemMaskPluginType.EventMap.html +1 -1
  233. package/docs/interfaces/plugins.ItemMaskPluginType.State.html +1 -1
  234. package/docs/interfaces/plugins.OrientationPluginController.html +1 -1
  235. package/docs/interfaces/plugins.OrientationPluginType.EventMap.html +1 -1
  236. package/docs/interfaces/plugins.OrientationPluginType.State.html +1 -1
  237. package/docs/interfaces/plugins.PanoAnimeController.html +1 -1
  238. package/docs/interfaces/plugins.PanoAnimePluginType.EventMap.html +1 -1
  239. package/docs/interfaces/plugins.PanoAnimePluginType.State.html +1 -1
  240. package/docs/interfaces/plugins.PluginTemplateType.EventMap.html +1 -1
  241. package/docs/interfaces/plugins.PluginTemplateType.State.html +1 -1
  242. package/docs/interfaces/plugins.TrajectoryController.html +1 -1
  243. package/docs/interfaces/react.FiveInjectionTypes.html +13 -13
  244. package/docs/modules/five.html +1 -1
  245. package/docs/modules.html +1 -1
  246. package/docs/types/five.ControllerEventTypes.html +27 -25
  247. package/docs/types/five.EasingFunction.html +1 -0
  248. package/docs/types/five.EventTypes.html +27 -25
  249. package/docs/types/five.FivePlugin.html +1 -1
  250. package/docs/types/five.FivePluginInit.html +1 -1
  251. package/docs/types/five.FivePluginInstance.html +1 -1
  252. package/docs/types/five.NetworkProgressCallback.html +1 -1
  253. package/docs/types/five.PBMAlphaMode.html +1 -1
  254. package/docs/types/five.PBMColorStyle.html +1 -1
  255. package/docs/types/five.PBMFloorStyle.html +1 -1
  256. package/docs/types/five.PBMMeshShaderType.html +1 -1
  257. package/docs/types/five.PBMPointBack.html +1 -1
  258. package/docs/types/five.PBMPointCloudShaderType.html +1 -1
  259. package/docs/types/five.PBMPointShape.html +1 -1
  260. package/docs/types/five.PBMPointSize.html +1 -1
  261. package/docs/types/five.PBMTransition.html +1 -1
  262. package/docs/types/five.ParseOptions.html +6 -6
  263. package/docs/types/plugins.BasePlugin.EventMap.html +1 -1
  264. package/docs/variables/five.PROXY_CONTROLLER_EVENT_NAMES.html +1 -1
  265. package/five/application/analysis.d.ts +40 -0
  266. package/five/application/controllers.d.ts +41 -0
  267. package/five/application/events-legacy.d.ts +454 -0
  268. package/five/application/events.d.ts +69 -0
  269. package/five/application/five.d.ts +524 -0
  270. package/five/application/fiveInitArgs.d.ts +176 -0
  271. package/five/application/fiveLoadOptions.d.ts +21 -0
  272. package/five/application/generateDefaultVideoElement.d.ts +2 -0
  273. package/five/application/getViewportScale.d.ts +2 -0
  274. package/five/application/initLights.d.ts +3 -0
  275. package/five/application/mode.d.ts +28 -0
  276. package/five/application/renderPoweredByRealsee.d.ts +3 -0
  277. package/five/assets/cardboard-png-data-url.d.ts +2 -0
  278. package/five/assets/gradient-png-data-url.d.ts +2 -0
  279. package/five/assets/loading-png-data-url.d.ts +2 -0
  280. package/five/assets/phone-png-data-url.d.ts +2 -0
  281. package/five/assets/realsee-png-data-url.d.ts +2 -0
  282. package/five/bvh/bvhMath.d.ts +33 -0
  283. package/five/bvh/bvhMesh.d.ts +7 -0
  284. package/five/bvh/bvhNode.d.ts +29 -0
  285. package/five/bvh/bvhObject.d.ts +18 -0
  286. package/five/bvh/bvhPoints.d.ts +6 -0
  287. package/five/bvh/index.d.ts +10 -0
  288. package/five/bvh/worker.d.ts +35 -0
  289. package/five/cardboard/helper.d.ts +2 -0
  290. package/five/cardboard/index.d.ts +13 -0
  291. package/five/cardboard/sensor.d.ts +158 -0
  292. package/five/certificates/hardware.d.ts +1 -0
  293. package/five/controllers/base.d.ts +167 -0
  294. package/five/controllers/events.d.ts +71 -0
  295. package/five/controllers/floorplan.d.ts +119 -0
  296. package/five/controllers/mapview.d.ts +139 -0
  297. package/five/controllers/model.d.ts +57 -0
  298. package/five/controllers/panorama.d.ts +143 -0
  299. package/five/controllers/panoramaLike.d.ts +87 -0
  300. package/five/controllers/topview.d.ts +42 -0
  301. package/five/controllers/vrPanorama.d.ts +56 -0
  302. package/five/controllers/xrPanorama.d.ts +81 -0
  303. package/five/core/camera.d.ts +65 -0
  304. package/five/core/internalWebGLRenderer.d.ts +14 -0
  305. package/five/core/panoVideo.d.ts +18 -0
  306. package/five/core/scene.d.ts +10 -0
  307. package/five/core/tiling.d.ts +43 -0
  308. package/five/declare.d.ts +2 -1
  309. package/five/gs/util/renderData.d.ts +32 -0
  310. package/five/gs/wasm/data.d.ts +20 -0
  311. package/five/gs/wasm/sort.d.ts +18 -0
  312. package/five/gs/worker/dataWorker.d.ts +1 -0
  313. package/five/gs/worker/sortWorker.d.ts +1 -0
  314. package/five/index.d.ts +60 -4637
  315. package/five/index.js +193 -341
  316. package/five/index.mjs +26242 -31011
  317. package/five/meshes/boundingMesh.d.ts +12 -0
  318. package/five/meshes/intersectMesh.d.ts +8 -0
  319. package/five/meshes/panoCircleMesh.d.ts +35 -0
  320. package/five/meshes/panoCircleMeshCustom.d.ts +40 -0
  321. package/five/meshes/panoCircleMeshSolid.d.ts +34 -0
  322. package/five/meshes/panoSphereMesh.d.ts +27 -0
  323. package/five/model/helpers/coordinate-transform.d.ts +3 -0
  324. package/five/model/helpers/ellipsoid-coordinates.d.ts +14 -0
  325. package/five/model/helpers/get-edges-by-sphere.d.ts +8 -0
  326. package/five/model/helpers/get-recommend-tile3d-parameters.d.ts +8 -0
  327. package/five/model/index.d.ts +70 -0
  328. package/five/model/intersection.d.ts +18 -0
  329. package/five/model/loaders/at3d.d.ts +12 -0
  330. package/five/model/loaders/b3dm.d.ts +9 -0
  331. package/five/model/loaders/dome.d.ts +22 -0
  332. package/five/model/loaders/domez.d.ts +11 -0
  333. package/five/model/loaders/fbx.d.ts +8 -0
  334. package/five/model/loaders/glTF-helpers/extensions/CESIUM_RTC.d.ts +9 -0
  335. package/five/model/loaders/glTF-helpers/extensions/EXT_meshopt_compression.d.ts +8 -0
  336. package/five/model/loaders/glTF-helpers/extensions/EXT_texture_webp.d.ts +11 -0
  337. package/five/model/loaders/glTF-helpers/extensions/KHR_animation_pointer.d.ts +6 -0
  338. package/five/model/loaders/glTF-helpers/extensions/KHR_binary_glTF.d.ts +25 -0
  339. package/five/model/loaders/glTF-helpers/extensions/KHR_draco_mesh_compression.d.ts +11 -0
  340. package/five/model/loaders/glTF-helpers/extensions/KHR_gaussian_splatting_compression_spz.d.ts +9 -0
  341. package/five/model/loaders/glTF-helpers/extensions/KHR_materials_clearcoat.d.ts +10 -0
  342. package/five/model/loaders/glTF-helpers/extensions/KHR_materials_emissive_strength.d.ts +10 -0
  343. package/five/model/loaders/glTF-helpers/extensions/KHR_materials_sheen.d.ts +10 -0
  344. package/five/model/loaders/glTF-helpers/extensions/KHR_materials_transmission.d.ts +10 -0
  345. package/five/model/loaders/glTF-helpers/extensions/KHR_materials_unlit.d.ts +10 -0
  346. package/five/model/loaders/glTF-helpers/extensions/KHR_mesh_quantization.d.ts +6 -0
  347. package/five/model/loaders/glTF-helpers/extensions/KHR_node_visibility.d.ts +10 -0
  348. package/five/model/loaders/glTF-helpers/extensions/KHR_texture_basisu.d.ts +9 -0
  349. package/five/model/loaders/glTF-helpers/extensions/KHR_texture_transform.d.ts +10 -0
  350. package/five/model/loaders/glTF-helpers/extensions/REALSEE_materials_lightmap.d.ts +7 -0
  351. package/five/model/loaders/glTF-helpers/extensions/base.d.ts +24 -0
  352. package/five/model/loaders/glTF-helpers/glTF.d.ts +713 -0
  353. package/five/model/loaders/glTF-helpers/index.d.ts +47 -0
  354. package/five/model/loaders/glTF-helpers/parser.d.ts +114 -0
  355. package/five/model/loaders/glTF-helpers/type.d.ts +14 -0
  356. package/five/model/loaders/gltf.d.ts +10 -0
  357. package/five/model/loaders/obj.d.ts +9 -0
  358. package/five/model/loaders/pbm.d.ts +26 -0
  359. package/five/model/loaders/ply.d.ts +24 -0
  360. package/five/model/loaders/pnts.d.ts +8 -0
  361. package/five/model/loaders/protobuf/dome.d.ts +540 -0
  362. package/five/model/loaders/protobuf/pbm.d.ts +203 -0
  363. package/five/model/loaders/shared.d.ts +16 -0
  364. package/five/model/loaders/splat.d.ts +8 -0
  365. package/five/model/loaders/spz.d.ts +14 -0
  366. package/five/model/loaders/tile3d-helpers/feature-table.d.ts +15 -0
  367. package/five/model/loaders/tile3d-helpers/gl-type.d.ts +20 -0
  368. package/five/model/loaders/tile3d-helpers/parse-gltf-array-buffer.d.ts +2 -0
  369. package/five/model/loaders/tile3d-helpers/parse-header.d.ts +2 -0
  370. package/five/model/loaders/tile3d-helpers/parse-point-cloud-attributes.d.ts +2 -0
  371. package/five/model/loaders/tile3d-helpers/parse-point-cloud-attributes.worker.d.ts +6 -0
  372. package/five/model/loaders/tile3d-helpers/parse-table.d.ts +3 -0
  373. package/five/model/loaders/tile3d-helpers/tile3d-type.d.ts +35 -0
  374. package/five/model/loaders/x3p.d.ts +22 -0
  375. package/five/model/materials/pbmMaterial.d.ts +137 -0
  376. package/five/model/materials/pbmMeshMaterial.d.ts +126 -0
  377. package/five/model/materials/pbmPointCloudMaterial.d.ts +70 -0
  378. package/five/model/model-scene.d.ts +172 -0
  379. package/five/model/model.d.ts +209 -0
  380. package/five/model/objects/pbmContainer.d.ts +28 -0
  381. package/five/model/objects/pbmGSObject.d.ts +40 -0
  382. package/five/model/objects/pbmGSRenderMesh.d.ts +32 -0
  383. package/five/model/objects/pbmGroup.d.ts +8 -0
  384. package/five/model/objects/pbmMesh.d.ts +10 -0
  385. package/five/model/objects/pbmPointCloud.d.ts +7 -0
  386. package/five/model/parameter.d.ts +140 -0
  387. package/five/model/shaders/pbm_gaussian_splatting/fragment.d.ts +2 -0
  388. package/five/model/shaders/pbm_gaussian_splatting/vertex.d.ts +2 -0
  389. package/five/model/shaders/pbm_mesh_basic/fragment.d.ts +2 -0
  390. package/five/model/shaders/pbm_mesh_basic/vertex.d.ts +2 -0
  391. package/five/model/shaders/pbm_mesh_none/fragment.d.ts +2 -0
  392. package/five/model/shaders/pbm_mesh_none/vertex.d.ts +2 -0
  393. package/five/model/shaders/pbm_mesh_phong/fragment.d.ts +2 -0
  394. package/five/model/shaders/pbm_mesh_phong/vertex.d.ts +2 -0
  395. package/five/model/shaders/pbm_mesh_standard/fragment.d.ts +2 -0
  396. package/five/model/shaders/pbm_mesh_standard/vertex.d.ts +2 -0
  397. package/five/model/shaders/pbm_pointcloud/fragment.d.ts +2 -0
  398. package/five/model/shaders/pbm_pointcloud/vertex.d.ts +2 -0
  399. package/five/model/tile3d/header.d.ts +88 -0
  400. package/five/model/tile3d/index.d.ts +214 -0
  401. package/five/model/tile3d/tile-cache.d.ts +18 -0
  402. package/five/model/tile3d/tile-content.d.ts +10 -0
  403. package/five/model/tile3d/tile-node.d.ts +24 -0
  404. package/five/model/tile3d/tile-request-scheduler.d.ts +17 -0
  405. package/five/model/tile3d/tile.d.ts +79 -0
  406. package/five/model/tile3d/tileset-base-traverser.d.ts +59 -0
  407. package/five/model/tile3d/tileset-most-detail-traverser.d.ts +14 -0
  408. package/five/model/tile3d/tileset-normal-traverser.d.ts +15 -0
  409. package/five/model/tile3d/tileset-skip-traverser.d.ts +60 -0
  410. package/five/model/tile3d/tileset.d.ts +69 -0
  411. package/five/model/tile3d/trajectory-content.d.ts +9 -0
  412. package/five/model/tile3d/trajectory-node.d.ts +15 -0
  413. package/five/model/tile3d/trajectory.d.ts +30 -0
  414. package/five/model/tile3d/types.d.ts +33 -0
  415. package/five/model/view-layer.d.ts +20 -0
  416. package/five/renderer/five-renderer.d.ts +17 -0
  417. package/five/renderer/index.d.ts +3 -0
  418. package/five/renderer/postprocessing/composer.d.ts +37 -0
  419. package/five/renderer/postprocessing/index.d.ts +7 -0
  420. package/five/renderer/postprocessing/passes/adaptive-luminance-pass.d.ts +17 -0
  421. package/five/renderer/postprocessing/passes/eye-dome-lighting-pass.d.ts +14 -0
  422. package/five/renderer/postprocessing/passes/flowing-light-2d-pass.d.ts +36 -0
  423. package/five/renderer/postprocessing/passes/flowing-light-3d-pass.d.ts +36 -0
  424. package/five/renderer/postprocessing/passes/gaussian-blur-pass.d.ts +12 -0
  425. package/five/renderer/postprocessing/passes/pass.d.ts +38 -0
  426. package/five/renderer/scene-renderers/point-cloud-high-quality-scene-renderer.d.ts +11 -0
  427. package/five/renderer/scene-renderers/scene-renderer.d.ts +9 -0
  428. package/five/renderer/scene-renderers/ssaa-scene-renderer.d.ts +15 -0
  429. package/five/renderer/tools/full-screen-quad.d.ts +15 -0
  430. package/five/renderer/tools/render-cube-to-equirectangular.d.ts +7 -0
  431. package/five/renderer/tools/render-full-screen-depth.d.ts +2 -0
  432. package/five/renderer/tools/render-full-screen.d.ts +2 -0
  433. package/five/texture/histogram.d.ts +54 -0
  434. package/five/texture/imageBitmap.d.ts +13 -0
  435. package/five/texture/initTexture.d.ts +3 -0
  436. package/five/texture/loader.d.ts +39 -0
  437. package/five/texture/textureData.d.ts +11 -0
  438. package/five/thirdparty/fflate.d.ts +1407 -0
  439. package/five/thirdparty/hammer.d.ts +375 -0
  440. package/five/thirdparty/jsrsasign.d.ts +753 -0
  441. package/five/thirdparty/meshopt_decoder.d.ts +15 -0
  442. package/five/three-version-check.d.ts +1 -0
  443. package/five/types/addableObject.d.ts +12 -0
  444. package/five/types/cube.d.ts +1 -0
  445. package/five/types/gestureInput.d.ts +24 -0
  446. package/five/types/imageOptions.d.ts +20 -0
  447. package/five/types/intersectMeshInterface.d.ts +8 -0
  448. package/five/types/movePanoEffect.d.ts +13 -0
  449. package/five/types/movePanoOptions.d.ts +36 -0
  450. package/five/types/panoCircleMeshInterface.d.ts +34 -0
  451. package/five/types/plugin.d.ts +25 -0
  452. package/five/types/pose.d.ts +17 -0
  453. package/five/types/state.d.ts +20 -0
  454. package/five/types/viewport.d.ts +22 -0
  455. package/five/utils/ajax.d.ts +66 -0
  456. package/five/utils/animationFrameLoop.d.ts +45 -0
  457. package/five/utils/array.d.ts +31 -0
  458. package/five/utils/asyncTaskQueue.d.ts +8 -0
  459. package/five/utils/bufferGeometry.d.ts +33 -0
  460. package/five/utils/calculateProgress.d.ts +39 -0
  461. package/five/utils/calculateThreeMouse.d.ts +13 -0
  462. package/five/utils/canplayVideo.d.ts +2 -0
  463. package/five/utils/clamp.d.ts +2 -0
  464. package/five/utils/clock.d.ts +17 -0
  465. package/five/utils/createSymbol.d.ts +5 -0
  466. package/five/utils/decodeText.d.ts +2 -0
  467. package/five/utils/deepEqual.d.ts +2 -0
  468. package/five/utils/deepFreeze.d.ts +2 -0
  469. package/five/utils/defineProperty.d.ts +9 -0
  470. package/five/utils/detector.d.ts +14 -0
  471. package/five/utils/distance.d.ts +10 -0
  472. package/five/utils/draco.d.ts +26 -0
  473. package/five/utils/easing.d.ts +63 -0
  474. package/five/utils/event.d.ts +159 -0
  475. package/five/utils/formatRad.d.ts +7 -0
  476. package/five/utils/imageSupport.d.ts +6 -0
  477. package/five/utils/imageURL.d.ts +42 -0
  478. package/five/utils/isEmptyObject.d.ts +2 -0
  479. package/five/utils/isNil.d.ts +6 -0
  480. package/five/utils/isNumber.d.ts +2 -0
  481. package/five/utils/isPowerOfTwo.d.ts +2 -0
  482. package/five/utils/isPromise.d.ts +2 -0
  483. package/five/utils/isSimilar.d.ts +6 -0
  484. package/five/utils/json.d.ts +7 -0
  485. package/five/utils/ktx2.d.ts +30 -0
  486. package/five/utils/lzma/index.d.ts +2 -0
  487. package/five/utils/lzma/lzma.d.ts +3 -0
  488. package/five/utils/lzma/lzmaWASM.d.ts +2 -0
  489. package/five/utils/lzma/lzmaWorker.d.ts +14 -0
  490. package/five/utils/memoryUsage.d.ts +29 -0
  491. package/five/utils/motion.d.ts +38 -0
  492. package/five/utils/noop.d.ts +6 -0
  493. package/five/utils/now.d.ts +7 -0
  494. package/five/utils/pano.d.ts +9 -0
  495. package/five/utils/pick.d.ts +3 -0
  496. package/five/utils/poseUtils.d.ts +5 -0
  497. package/five/utils/renderCubeTextureToCubeRenderTarget.d.ts +3 -0
  498. package/five/utils/renderDepth.d.ts +2 -0
  499. package/five/utils/renderTexturesToCubeRenderTarget.d.ts +10 -0
  500. package/five/utils/requestPermission.d.ts +3 -0
  501. package/five/utils/shaderContentFix.d.ts +7 -0
  502. package/five/utils/shaderMaterial.d.ts +20 -0
  503. package/five/utils/stateUtils.d.ts +5 -0
  504. package/five/utils/string-pattern.d.ts +8 -0
  505. package/five/utils/subscribe.d.ts +67 -0
  506. package/five/utils/tileCube.d.ts +19 -0
  507. package/five/utils/toFastProperties.d.ts +1 -0
  508. package/five/utils/typedCache.d.ts +10 -0
  509. package/five/utils/uniform.d.ts +15 -0
  510. package/five/utils/url.d.ts +35 -0
  511. package/five/utils/uuid.d.ts +5 -0
  512. package/five/utils/values.d.ts +2 -0
  513. package/five/utils/vectorCoordinates.d.ts +29 -0
  514. package/five/utils/volume.d.ts +111 -0
  515. package/five/utils/webglError.d.ts +7 -0
  516. package/five/utils/worker.d.ts +26 -0
  517. package/five/webxr/XRControllerModelFactory.d.ts +28 -0
  518. package/five/webxr/motionHelper.d.ts +68 -0
  519. package/five/webxr/xrButton.d.ts +4 -0
  520. package/five/webxr/xrController.d.ts +24 -0
  521. package/five/webxr/xrManager.d.ts +84 -0
  522. package/five/work/_ALLOW_HOST.d.ts +2 -0
  523. package/five/work/index.d.ts +6 -0
  524. package/five/work/keychain.d.ts +5 -0
  525. package/five/work/looseWorkType.d.ts +121 -0
  526. package/five/work/verify.d.ts +7 -0
  527. package/five/work/work.d.ts +236 -0
  528. package/five/work/workFetcher.d.ts +4 -0
  529. package/five/work/workJson.d.ts +3 -0
  530. package/five/work/workJsonType.d.ts +73 -0
  531. package/five/work/workObserverUtils.d.ts +36 -0
  532. package/five/work/workParser.d.ts +6 -0
  533. package/five/work/workResolvedObserver.d.ts +12 -0
  534. package/five/work/workVerify.d.ts +2 -0
  535. package/five/work/works.d.ts +10 -0
  536. package/gltf-loader/gltf-object.d.ts +17 -0
  537. package/gltf-loader/index.d.ts +60 -160
  538. package/gltf-loader/index.js +9 -9
  539. package/gltf-loader/index.mjs +1351 -1451
  540. package/gltf-loader/thirdparty/DDSLoader.d.ts +23 -0
  541. package/gltf-loader/thirdparty/DRACOLoader.d.ts +18 -0
  542. package/gltf-loader/thirdparty/GLTFLoader.d.ts +59 -0
  543. package/line/circle_png.d.ts +1 -0
  544. package/line/index.d.ts +19 -69
  545. package/line/index.js +4 -4
  546. package/line/index.mjs +334 -513
  547. package/line/utils/Line2.d.ts +7 -0
  548. package/line/utils/LineGeometry.d.ts +10 -0
  549. package/line/utils/LineMaterial.d.ts +20 -0
  550. package/line/utils/LineSegments2.d.ts +11 -0
  551. package/line/utils/LineSegmentsGeometry.d.ts +15 -0
  552. package/llms.txt +43 -31
  553. package/package.json +11 -2
  554. package/plugins/BackgroundPlugin/Controller.d.ts +20 -0
  555. package/plugins/BackgroundPlugin/index.d.ts +5 -0
  556. package/plugins/BackgroundPlugin/typings.d.ts +44 -0
  557. package/plugins/BasePlugin/index.d.ts +119 -0
  558. package/plugins/DynamicPathLinePlugin/Controller.d.ts +167 -0
  559. package/plugins/DynamicPathLinePlugin/index.d.ts +5 -0
  560. package/plugins/DynamicPathLinePlugin/line2/Line2.d.ts +7 -0
  561. package/plugins/DynamicPathLinePlugin/line2/LineGeometry.d.ts +10 -0
  562. package/plugins/DynamicPathLinePlugin/line2/LineMaterial.d.ts +17 -0
  563. package/plugins/DynamicPathLinePlugin/line2/LineSegments2.d.ts +11 -0
  564. package/plugins/DynamicPathLinePlugin/line2/LineSegmentsGeometry.d.ts +15 -0
  565. package/plugins/DynamicPathLinePlugin/typing.d.ts +129 -0
  566. package/plugins/DynamicPathLinePlugin/typings.d.ts +72 -0
  567. package/plugins/ItemMaskPlugin/Controller.d.ts +48 -0
  568. package/plugins/ItemMaskPlugin/index.d.ts +5 -0
  569. package/plugins/ItemMaskPlugin/typing.d.ts +58 -0
  570. package/plugins/OrientationPlugin/Controller.d.ts +82 -0
  571. package/plugins/OrientationPlugin/RoundedBoxGeometry.d.ts +11 -0
  572. package/plugins/OrientationPlugin/index.d.ts +6 -0
  573. package/plugins/OrientationPlugin/typing.d.ts +25 -0
  574. package/plugins/PanoAnimePlugin/Controller.d.ts +46 -0
  575. package/plugins/PanoAnimePlugin/index.d.ts +5 -0
  576. package/plugins/PanoAnimePlugin/typing.d.ts +37 -0
  577. package/plugins/PluginTemplate/Controller.d.ts +27 -0
  578. package/plugins/PluginTemplate/index.d.ts +5 -0
  579. package/plugins/PluginTemplate/typing.d.ts +21 -0
  580. package/plugins/TrajectoryPlugin/Controller.d.ts +85 -0
  581. package/plugins/TrajectoryPlugin/index.d.ts +6 -0
  582. package/plugins/TrajectoryPlugin/typing.d.ts +25 -0
  583. package/plugins/index.d.ts +9 -1102
  584. package/plugins/index.js +17 -21
  585. package/plugins/index.mjs +3342 -4245
  586. package/plugins/thirdParty/CSS3DRenderer.d.ts +32 -0
  587. package/plugins/thirdParty/OrbitControls.d.ts +78 -0
  588. package/plugins/utils/absoluteUrl.d.ts +5 -0
  589. package/plugins/utils/clamp.d.ts +2 -0
  590. package/plugins/utils/loadImage.d.ts +1 -0
  591. package/plugins/utils/motion.d.ts +38 -0
  592. package/plugins/utils/now.d.ts +6 -0
  593. package/plugins/utils/uuid.d.ts +5 -0
  594. package/react/canvas.d.ts +19 -0
  595. package/react/context.d.ts +11 -0
  596. package/react/createProvider.d.ts +95 -0
  597. package/react/createStore.d.ts +144 -0
  598. package/react/hooks/unsafe__useFiveInstance.d.ts +9 -0
  599. package/react/hooks/useFiveAction.d.ts +147 -0
  600. package/react/hooks/useFiveCameraDirection.d.ts +7 -0
  601. package/react/hooks/useFiveCameraRaycaster.d.ts +7 -0
  602. package/react/hooks/useFiveCurrentObserver.d.ts +11 -0
  603. package/react/hooks/useFiveCurrentState.d.ts +15 -0
  604. package/react/hooks/useFiveEventCallback.d.ts +12 -0
  605. package/react/hooks/useFiveFloor.d.ts +15 -0
  606. package/react/hooks/useFiveHelper.d.ts +14 -0
  607. package/react/hooks/useFiveModelBounding.d.ts +5 -0
  608. package/react/hooks/useFiveModelEffect.d.ts +14 -0
  609. package/react/hooks/useFiveModelIntersectRaycaster.d.ts +22 -0
  610. package/react/hooks/useFiveModelReadyState.d.ts +8 -0
  611. package/react/hooks/useFiveProject2d.d.ts +20 -0
  612. package/react/hooks/useFiveSceneEffect.d.ts +21 -0
  613. package/react/hooks/useFiveState.d.ts +6 -0
  614. package/react/hooks/useFiveWork.d.ts +29 -0
  615. package/react/index.d.ts +24 -830
  616. package/react/index.js +3 -3
  617. package/react/index.mjs +572 -783
  618. package/react/rendererPool.d.ts +7 -0
  619. package/react/withFive.d.ts +213 -0
  620. package/shader-lib/EvenessPlane/index.d.ts +10 -0
  621. package/shader-lib/PointCloudExpand/index.d.ts +59 -0
  622. package/shader-lib/PolygonCuter/index.d.ts +52 -0
  623. package/shader-lib/PolygonCuter/worker.d.ts +14 -0
  624. package/shader-lib/ShineModel/index.d.ts +7 -0
  625. package/shader-lib/SweepModel/index.d.ts +7 -0
  626. package/shader-lib/index.d.ts +5 -86
  627. package/shader-lib/index.js +13 -14
  628. package/shader-lib/index.mjs +424 -824
  629. package/sticker/geometry.d.ts +3 -0
  630. package/sticker/index.d.ts +68 -71
  631. package/sticker/index.js +3 -3
  632. package/sticker/index.mjs +102 -142
  633. package/umd/five-gltf-loader.js +9 -9
  634. package/umd/five-line.js +4 -4
  635. package/umd/five-plugins.js +17 -21
  636. package/umd/five-react.js +3 -3
  637. package/umd/five-shader-lib.js +13 -14
  638. package/umd/five-sticker.js +3 -3
  639. package/umd/five-vfx.js +21 -21
  640. package/umd/five-vue.js +3 -3
  641. package/umd/five.js +188 -336
  642. package/vfx/airflow/airflow.d.ts +18 -0
  643. package/vfx/airflow/fragment-shader.d.ts +2 -0
  644. package/vfx/airflow/vertex-shader.d.ts +2 -0
  645. package/vfx/common/scale-shader.d.ts +2 -0
  646. package/vfx/common/simplex-noise-shader.d.ts +2 -0
  647. package/vfx/frame/fragment-shader.d.ts +2 -0
  648. package/vfx/frame/frame.d.ts +22 -0
  649. package/vfx/frame/vertex-shader.d.ts +2 -0
  650. package/vfx/index.d.ts +7 -363
  651. package/vfx/index.js +21 -21
  652. package/vfx/index.mjs +454 -910
  653. package/vfx/particle/fragment-shader.d.ts +2 -0
  654. package/vfx/particle/instance.d.ts +36 -0
  655. package/vfx/particle/particle.d.ts +205 -0
  656. package/vfx/particle/utils.d.ts +11 -0
  657. package/vfx/particle/vertex-shader.d.ts +2 -0
  658. package/vfx/particle-gpu/fragment-shader.d.ts +2 -0
  659. package/vfx/particle-gpu/instance.d.ts +36 -0
  660. package/vfx/particle-gpu/particle.d.ts +95 -0
  661. package/vfx/particle-gpu/utils.d.ts +11 -0
  662. package/vfx/particle-gpu/vertex-shader.d.ts +2 -0
  663. package/vfx/spotLight/fragment-shader.d.ts +2 -0
  664. package/vfx/spotLight/spotLight.d.ts +15 -0
  665. package/vfx/spotLight/vertex-shader.d.ts +2 -0
  666. package/vue/context.d.ts +7 -0
  667. package/vue/hooks/FiveCanvas.d.ts +36 -0
  668. package/vue/hooks/FiveProvider.d.ts +35 -0
  669. package/vue/hooks/unsafe__useFiveInject.d.ts +9 -0
  670. package/vue/hooks/useFiveAction.d.ts +178 -0
  671. package/vue/hooks/useFiveCameraDirection.d.ts +8 -0
  672. package/vue/hooks/useFiveCameraRaycaster.d.ts +8 -0
  673. package/vue/hooks/useFiveCurrentObserver.d.ts +12 -0
  674. package/vue/hooks/useFiveCurrentState.d.ts +16 -0
  675. package/vue/hooks/useFiveEventCallback.d.ts +11 -0
  676. package/vue/hooks/useFiveFloor.d.ts +16 -0
  677. package/vue/hooks/useFiveHelper.d.ts +15 -0
  678. package/vue/hooks/useFiveModel.d.ts +7 -0
  679. package/vue/hooks/useFiveModelBounding.d.ts +7 -0
  680. package/vue/hooks/useFiveModelIntersectRaycaster.d.ts +23 -0
  681. package/vue/hooks/useFiveModelReadyState.d.ts +9 -0
  682. package/vue/hooks/useFiveProject2d.d.ts +26 -0
  683. package/vue/hooks/useFiveScene.d.ts +6 -0
  684. package/vue/hooks/useFiveState.d.ts +16 -0
  685. package/vue/hooks/useFiveWork.d.ts +30 -0
  686. package/vue/index.d.ts +23 -467
  687. package/vue/index.js +3 -3
  688. package/vue/index.mjs +309 -301
  689. package/vue/rendererPool.d.ts +10 -0
  690. package/work-downloader/components/model-3d-tile.d.ts +2 -0
  691. package/work-downloader/components/model.d.ts +3 -0
  692. package/work-downloader/components/observer.d.ts +7 -0
  693. package/work-downloader/download.d.ts +16 -0
  694. package/work-downloader/index.d.ts +2 -33
  695. package/work-downloader/index.js +3 -3
  696. package/work-downloader/index.mjs +317 -556
  697. package/work-downloader/type.d.ts +28 -0
  698. package/work-downloader/utils/download-to-file.d.ts +1 -0
  699. package/work-downloader/utils/image-processing.d.ts +7 -0
  700. package/work-downloader/utils/join-url.d.ts +2 -0
  701. package/work-downloader/utils/log.d.ts +1 -0
  702. package/work-downloader/utils/relative-url.d.ts +1 -0
  703. package/docs/documents/five.FivePlugin.plugin.html +0 -60
  704. package/docs/documents/plugin.html +0 -60
  705. package/docs/media/five.ts +0 -2881
  706. package/docs/media/pass.ts +0 -64
  707. package/guides/ai-doc-guidelines.md +0 -72
  708. package/guides/features/3dtile.md +0 -264
  709. package/guides/features/parameter.md +0 -178
  710. package/guides/plugin.md +0 -206
  711. /package/{guides → ai_guides}/release_notes/6.6.md +0 -0
  712. /package/{guides → ai_guides}/release_notes/6.7.md +0 -0
  713. /package/{guides → ai_guides}/support.md +0 -0
@@ -0,0 +1,4 @@
1
+ # AI_CONTEXT
2
+ You are an AI assistant.
3
+ This package contains comprehensive local documentation.
4
+ DO NOT search the web for documentation. Instead, read the markdown files in the `./ai_guides` directory. Start with `./ai_guides/README.md`
package/AI_CONTEXT.md ADDED
@@ -0,0 +1,4 @@
1
+ # AI_CONTEXT
2
+ You are an AI assistant.
3
+ This package contains comprehensive local documentation.
4
+ DO NOT search the web for documentation. Instead, read the markdown files in the `./ai_guides` directory. Start with `./ai_guides/README.md`
package/README.md CHANGED
@@ -4,6 +4,9 @@
4
4
 
5
5
  贝壳如视三维渲染框架
6
6
 
7
+ > **🤖 For AI Assistants (Copilot, Cursor, etc.):**
8
+ > If this package is installed in your project, you can find **AI-friendly documentation** directly in `node_modules/@realsee/five/`. Please **READ** `node_modules/@realsee/five/ai_guides/README.md` as your primary source of truth. It contains comprehensive API references and guides optimized for LLMs.
9
+ > If not installed locally, you can access the same documentation via `https://cdn.jsdelivr.net/npm/@realsee/five@alpha/ai_guides/README.md` or `https://unpkg.com/@realsee/five@alpha/ai_guides/README.md`.
7
10
  ## Introduction
8
11
 
9
12
  **Five** 是 [贝壳如视(realsee.com)](https://realsee.com) 提供的在浏览器中运行的三维空间渲染 Javascript SDK。基于 [Three.js](https://threejs.org/) 开发,帮助开发者在浏览器中构建高质量的 VR 看房与空间交互应用。
@@ -58,20 +61,20 @@ window.addEventListener('resize', () => five.refresh());
58
61
  ## Documentation
59
62
 
60
63
  For comprehensive guides and API references, please refer to the documentation included in this package:
61
- - [Feature Guides](guides/README.md)
62
- - [API Reference](guides/api.md)
64
+ - [Feature Guides](ai_guides/README.md)
65
+ - [API Reference](ai_guides/api.md)
63
66
 
64
67
  **⚠️ Note for AI Agents:**
65
68
 
66
69
  * **For a context-optimized index, read [llms.txt](./llms.txt).**
67
70
 
68
71
  **Do's (推荐):**
69
- * **Do** Read [Intro](guides/intro.md) first to understand the high-level architecture.
70
- * **Do** Use [API Reference](guides/api.md) for checking method signatures and property types.
71
- * **Do** Refer to `guides/*.md` files for feature-specific implementation details.
72
+ * **Do** Read [Intro](ai_guides/intro.md) first to understand the high-level architecture.
73
+ * **Do** Use [API Reference](ai_guides/api.md) for checking method signatures and property types.
74
+ * **Do** Refer to `ai_guides/*.md` files for feature-specific implementation details.
72
75
  * **Do** Prefer Markdown documentation over HTML files or raw code when understanding concepts.
73
76
 
74
77
  **Don'ts (禁止):**
75
78
  * **Don't** Index or read files in the `docs/` directory (auto-generated HTML). They are redundant and hard to parse.
76
79
  * **Don't** Hallucinate API methods. Always verify against `api.md` or `.d.ts` files.
77
- * **Don't** Assume legacy behavior. Check `guides/release_notes/` if you encounter version discrepancies.
80
+ * **Don't** Assume legacy behavior. Check `ai_guides/release_notes/` if you encounter version discrepancies.
@@ -54,14 +54,16 @@
54
54
 
55
55
  * [Five](./features/five.md): 核心类 `Five`,管理渲染循环与全局状态。
56
56
  * [Work](./features/work.md): 数据载体,描述三维空间的数据结构 (VR 看房数据)。
57
+ * [Panorama UV](./features/pano-uv.md): 全景图 UV 与空间方向转换工具。
57
58
  * [Mode](./features/mode.md): 五种核心浏览模式 (Panorama, Floorplan, Topview, Model, Map)。
58
59
  * [State](./features/state.md): 状态管理 (Pose, Mode, PanoIndex),用于复原场景。
59
- * [Coordinate System](./features/coordnate-system.md): 坐标系定义 (右手坐标系, Y轴向上)。
60
+ * [Coordinate System](./features/coordinate-system.md): 坐标系定义 (右手坐标系, Y轴向上)。
60
61
 
61
62
  ### 3. Data & Resource (数据与资源)
62
63
  数据加载与资源管理配置。
63
64
 
64
65
  * [Load External Model](./features/load-external-model.md): 加载外部 3D 模型 (GLTF, OBJ 等)。
66
+ * [Load Progress](./features/load-progress.md): 监控模型与全景图的加载进度 (Loaded/Refined)。
65
67
  * [Multi-Work (Sandbox)](./features/multi-work.md): 多 Work 加载与沙盘场景管理。
66
68
  * [Request Proxy](./features/request-proxy.md): 请求拦截与代理 (CDN 替换、鉴权)。
67
69
  * [Image Options](./features/image-options.md): 图片资源配置 (CDN, 格式, 尺寸)。
@@ -72,6 +74,11 @@
72
74
  * [Pano Tile](./features/pano-tile.md): 全景瓦片渲染机制(高分辨率分片加载)。
73
75
  * [Model](./features/model.md): 内置模型渲染 (Mesh/Geometry)。
74
76
  * [Postprocessing](./features/postprocessing.md): 后处理效果 (Pass, EffectComposer)。
77
+ * [Flowing Light 2D Pass](./features/flowing-light-2d-pass.md): 屏幕空间流光特效(InstancedMesh 优化)。
78
+ * [Flowing Light 3D Pass](./features/flowing-light-3d-pass.md): 3D 世界坐标流光特效(InstancedMesh 优化)。
79
+ * [Gaussian Blur Pass](./features/gaussian-blur-pass.md): 高斯模糊特效。
80
+ * [Material](./features/material.md): 材质参数配置 (透明度、点云大小、顶点标记)。
81
+ * [Pano Filter](./features/pano-filter.md): 全景图滤镜 (亮度、对比度、色温调节)。
75
82
  * [Get Screen Pixels](./features/get-screen-pixels.md): 获取屏幕像素 (放大镜/截图)。
76
83
  * [Move Pano Effect](./features/move-pano-effect.md): 全景点位切换的过渡效果。
77
84
  * [Clipper](./features/clipper.md): 模型裁切功能 (房屋剖面)。
@@ -89,13 +96,15 @@
89
96
  ### 6. Advanced & Extensions (进阶与扩展)
90
97
  复杂配置与功能扩展。
91
98
 
92
- * [Plugin](./plugin.md): 插件开发指南。
99
+ * [Plugin](./features/plugin.md): 插件开发指南。
100
+ * [ViewLayer](./features/view-layer.md): 视图层。
93
101
  * [Parameter](./features/parameter.md): Five 初始化详细参数配置。
94
102
 
95
103
  ### 7. Meta & Support (其他)
96
104
  * [Support](./support.md): 浏览器兼容性。
97
105
  * [AI Documentation Guidelines](./ai-doc-guidelines.md): AI 文档编写与维护规范 (必读)。
98
106
  * Release Notes: 版本更新记录。
107
+ * [6.8](./release_notes/6.8.md)
99
108
  * [6.7](./release_notes/6.7.md)
100
109
  * [6.6](./release_notes/6.6.md)
101
110
 
@@ -111,3 +120,4 @@
111
120
  ```yaml
112
121
  tags: [index, readme, guide, map]
113
122
  ```
123
+
@@ -0,0 +1,102 @@
1
+ <!-- AI-friendly guide template for `ai_guides/` -->
2
+ # AI 文档与维护指南 (AI Documentation & Maintenance Guide)
3
+
4
+ ## Summary
5
+ 本文档包含两部分内容:
6
+ 1. **Writing Guide**: 供 AI 和人类编写新文档时的标准模板与风格规范。
7
+ 2. **Maintenance Guide**: 供 AI 维护者进行文档更新、同步与体检的操作指南。
8
+
9
+ ---
10
+
11
+ # Part 1: Writing Guide (编写指南)
12
+
13
+ ## 目的
14
+ 提供统一、结构化的 Markdown 模板,便于 AI 自动解析、索引与生成功能性示例。
15
+
16
+ ## 建议风格
17
+ - 使用中文为主,代码示例使用 TypeScript。
18
+ - **受众意识**: 文档面向 SDK 的**外部使用者**。避免暴露无用的内部实现细节(如私有属性、临时状态),除非对调试有帮助。
19
+ - **结构规范**: 严格使用二级标题 (`##`) 作为主要段落分割(如 `## Schema`, `## Concepts`),避免使用中文标题(如 `## 格式说明`)。
20
+ - **代码缩进**: 强制使用 **两个空格** 缩进。
21
+ - **相对路径**: 内部文档链接必须使用 **相对路径**(如 `./state.md`)。
22
+ - **Schema**: 必须提供 TypeScript Interface 定义,并保留关键字段的注释(JSDoc)。
23
+ - **精简原则**: 仅展示核心与常用字段,避免列出所有内部或废弃字段。
24
+ - **Configuration**: 对于参数较多的配置项,建议按 **“常用 (Common)”**、**“进阶 (Advanced)”**、**“内部 (Internal)”** 进行分类表格展示,并在内部参数处添加“不建议修改”的警告。
25
+ - **Source Link**: 引用源码文件时,请在 `## Schema` 章节中使用 `> **Definition**: [InterfaceName](../../path/to/source.ts)` 的格式。**支持多个链接**(如 `[Five](...), [EventTypes](...)`),以便完整覆盖相关类型。**必须** 指向 `lib/` 目录下的 `.ts` 文件。构建脚本会自动将其转换为发布包中的 `.d.ts` 链接。
26
+ - **Related**: 文档末尾建议包含 `## Related` 章节,提供相关文档的**相对路径链接**。
27
+ - **语义化**: 链接文字应准确反映目标文档的主题(如 `[Coordinate System](./coordinate.md)`)。
28
+ - **Metadata**: 结尾必须包含 YAML 格式的 `tags`。
29
+ - **文档拆分与审查**: 单个文档应保持精简。若内容过多需拆分为新专题,**必须**在创建新文件前向用户确认并获得批准,严禁擅自创建新文件。
30
+
31
+ ## 最佳实践 (Best Practices)
32
+
33
+ ### 1. 变量命名语义化 (Semantic Variable Naming)
34
+ 在示例代码中,变量名应准确反映其通用性或特定上下文。
35
+ - **Good**: `parentParameter` (暗示可用于 Model, ViewLayer 等多种父级)
36
+ - **Bad**: `modelParam` (若该逻辑同样适用于 ViewLayer,则会误导用户)
37
+
38
+ ### 2. 区分属性与方法 (Property vs Method)
39
+ 明确区分“直接访问属性”与“调用方法计算”。
40
+ - 若 API 设计为 Getter (如 `parameter.opacity`),文档应引导用户直接访问属性,避免混淆使用 `get()` 方法。
41
+ - 对于涉及计算或继承的逻辑 (如 `resolveValue()`),应显式说明其与直接访问的区别。
42
+
43
+ ### 3. 显式说明默认行为 (Explicit Default Behavior)
44
+ 对于有默认值或继承逻辑的方法,务必说明“不传参”时的行为。
45
+ - 例如:`resolveValue()` 不传参时仅计算默认值;传入 `upstream` 时会包含继承逻辑。
46
+
47
+ ## 标准模板结构 (Standard Template Structure)
48
+
49
+ 无论是**新建文档**还是**维护现有文档**,都请参考独立模板文件:[template.md](./template.md)。
50
+
51
+ - **新建文档**: 直接复制模板内容开始编写。
52
+ - **维护文档**: 在修改现有文档时,请检查其结构是否符合模板要求(如 Schema 的 Definition 引用、Configuration 的分类等)。如果发现结构过时,请顺手将其标准化。
53
+ - **特殊说明 (Special Notes)**:
54
+ - **模板链接格式 (Template Link Format)**:
55
+ - 模板(`template.md`)中所有的占位符链接(如 `Definition` 处的 `[InterfaceName](...)` 或 `Related` 处的 `[RelatedConcept](...)`)均使用了**代码块**包裹,以避免构建时因路径不存在而报错。
56
+ - **AI 操作**: 在编写正式文档时,**必须将其还原为可点击的标准 Markdown 链接**(即去掉反引号),并确保路径指向真实存在的文件。
57
+
58
+ 请严格遵循该模板的结构,以保证文档风格一致性。
59
+
60
+ ---
61
+
62
+ # Part 2: Maintenance Guide (维护指南)
63
+
64
+ ## 核心原则 (Core Principles)
65
+ 为了防止文档与代码脱节,我们遵循 **“代码变更驱动文档更新”** 的原则。
66
+
67
+ ## 1. 语义化检索 (Semantic Retrieval)
68
+ 不再维护硬编码的“源码-文档”映射表。AI 维护者在修改代码后,应利用自身的语义搜索能力(如 `SearchCodebase` 或 `Grep`)来定位需要更新的文档。
69
+
70
+ **推荐策略**:
71
+ - 搜索**类名/方法名**: 如修改了 `five.load`,搜索 `five.load` 或 `load`。
72
+ - 搜索**概念关键词**: 如修改了射线检测逻辑,搜索 `Raycast` 或 `project2d`。
73
+
74
+ ## 2. 单一事实来源 (Single Source of Truth)
75
+ - **API 签名**: 以 `package/five/index.d.ts` 和代码中的 TSDoc 为准。
76
+ - **ai_guides/api.md**: 仅作为 **索引 (Index)** 和 **摘要 (Summary)**。不要试图复制所有参数细节,除非是核心参数。
77
+ - **ai_guides/features/*.md**: 重点解释 **“为什么”** 和 **“怎么用”**,避免机械复制类型定义。
78
+
79
+ ## 3. 维护工作流 (Maintenance Workflow)
80
+
81
+ ### 场景 A:代码功能迭代后 (Post-Coding)
82
+ 当修改了 SDK 源码后,请执行以下检查:
83
+ 1. **反向查找**: 利用工具搜索关键词(API 名称、Feature 名称),找到 `ai_guides/` 下相关的文档。
84
+ 2. **更新文档**:
85
+ * 如果修改了 API 签名 -> 更新对应的 `Schema` 和 `Examples`。
86
+ * 如果废弃了功能 -> 在文档中添加 `> [!WARNING] Deprecated` 提示。
87
+ 3. **更新索引**: 如果是新功能,确保将其添加到 `ai_guides/README.md` 的合适章节中。
88
+ 4. **同步 llms.txt**: 若新增了文档或修改了文档路径,**必须**同步更新项目根目录下的 `llms.txt`,确保外部索引与 `ai_guides/` 保持一致。
89
+
90
+ ### 场景 B:API 文档同步 (Sync API Doc)
91
+ 定期检查 `ai_guides/api.md` 的完整性:
92
+ 1. 读取 `package/five/index.d.ts` 获取最新公开 API。
93
+ 2. 对比 `ai_guides/api.md`,找出缺失的高频 API 或已删除的 API。
94
+ 3. **注意**: 只收录高频/核心 API,低频 API 应引导用户查看源码或专门的 Feature 文档。
95
+
96
+ ## 目录结构说明
97
+ - `ai_guides/`: 文档根目录。
98
+ - `ai_guides/features/`: 功能性文档 (Features)。
99
+ - `ai_guides/release_notes/`: 版本更新记录。
100
+ - `ai_guides/api.md`: 核心 API 索引。
101
+ - `ai_guides/README.md`: 文档总索引。
102
+ - `package/five/index.d.ts`: **API 签名的真理来源**。
@@ -83,7 +83,7 @@ interface FiveInitArgs {
83
83
  ### `load(work, state?, options?)`
84
84
  Loads a "Work" (dataset) into the Five instance.
85
85
 
86
- - **work**: The data object containing scene information (panorama, model, etc.).
86
+ - **work**: The data object (`LooseWork` or `Work`) containing scene information.
87
87
  - **state**: Initial state overrides. `"inherit"`, `"initial"`, or a `State` object.
88
88
  - **options**: Loading options (e.g., transition duration).
89
89
 
@@ -139,6 +139,16 @@ Get pixel data from the renderer (e.g. for color picking or magnifier).
139
139
  - **raycaster**: `THREE.Raycaster`.
140
140
  - **returns**: `THREE.Intersection[]`.
141
141
 
142
+ ### `addPass(pass)`
143
+ Add a post-processing pass to the rendering chain.
144
+
145
+ - **pass**: `FivePass` instance (e.g. `Gaussian Blur Pass`).
146
+
147
+ ### `removePass(pass)`
148
+ Remove a post-processing pass from the rendering chain.
149
+
150
+ - **pass**: `FivePass` instance to remove.
151
+
142
152
  ### `dispose()`
143
153
  Destroys the Five instance and releases resources.
144
154
 
@@ -187,6 +197,16 @@ interface WorkObserver {
187
197
  accessibleNodes: number[]; // Indices of reachable points
188
198
  images: WorkImage; // Panorama image URLs
189
199
  active: boolean; // Whether the point is enabled
200
+
201
+ // Coordinate Methods
202
+ getWorldPosition(): THREE.Vector3;
203
+ getWorldStandingPosition(): THREE.Vector3;
204
+
205
+ // UV Conversion Methods
206
+ vectorToEquirectangularUv(vector: THREE.Vector3, uvOrigin?: 'top-left' | 'bottom-left'): THREE.Vector2;
207
+ equirectangularUvToVector(uv: THREE.Vector2, uvOrigin?: 'top-left' | 'bottom-left'): THREE.Vector3;
208
+ vectorToCubemapUv(vector: THREE.Vector3, uvOrigin?: 'top-left' | 'bottom-left'): [CubeFace, THREE.Vector2];
209
+ cubemapUvToVector(cubeFace: CubeFace, uv: THREE.Vector2, uvOrigin?: 'top-left' | 'bottom-left'): THREE.Vector3;
190
210
  }
191
211
  ```
192
212
 
@@ -223,7 +243,10 @@ These events follow a standard naming convention and provide typed event objects
223
243
  | :--- | :--- | :--- |
224
244
  | `works.load` | Triggered when work data starts loading. | `WorksEvent` |
225
245
  | `models.load` | Triggered when models are loaded. | `ModelSceneEvent` |
246
+ | `model.tileLoad` | Triggered when a 3D tile is loaded. | `Tile` |
247
+ | `model.tileUnload` | Triggered when a 3D tile is unloaded. | `Tile` |
226
248
  | `pano.arrived` | Triggered when arrival at a panorama node. | `PanoEvent` |
249
+ | `pano.texture.progress` | Triggered when panorama texture loading progresses. | `{ progress, panoIndex }` |
227
250
  | `render` | Triggered after each render frame. | `RenderEvent` |
228
251
  | `error` | Triggered on internal errors. | `Error` |
229
252
 
@@ -0,0 +1,172 @@
1
+ # 3DTile (3D 瓦片)
2
+
3
+ - **Summary**: Five 用于加载和渲染大规模三维场景的核心模块,支持动态 LOD 调度与流式加载。
4
+ - **Schema**: 对应 `ParameterTilesetValue` 接口,通过 Parameter 配置 LOD、显存与并发控制。
5
+ - **Concepts**: LOD (细节层级), SSE (屏幕空间误差), Cache Management (显存管理), ViewLayer (视图层)。
6
+ - **Configuration**: 包含画质精度、显存配额、几何误差、并发请求等详细参数。
7
+ - **Examples**: 画质平衡与多图层优化。
8
+
9
+ ## Schema
10
+
11
+ > **Definition**: [ParameterTilesetValue](../../five/model/parameter.d.ts)
12
+
13
+ 以下是 `ParameterTilesetValue` 的 TypeScript 定义摘要:
14
+
15
+ ```typescript
16
+ export interface ParameterTilesetValue {
17
+ /** 屏幕空间误差阈值 (像素) */
18
+ maxScreenSpaceError: number;
19
+ /** 最大显存占用 (MB) */
20
+ maxMemoryUsage: number;
21
+ /** 最小几何误差 (精度上限锁) */
22
+ minGeometricError: number;
23
+ // ... 更多字段见下方配置表
24
+ }
25
+ ```
26
+
27
+ ## Concepts
28
+
29
+ ### 1. LOD & Screen Space Error (SSE)
30
+
31
+ LOD (Level of Detail) 是 3DTile 的核心机制。引擎不会一次性加载整个从宏观到微观的所有模型数据,而是根据相机位置动态计算每个瓦片的 **屏幕空间误差 (SSE)**。
32
+
33
+ * **Geometric Error (几何误差)**: 3D Tiles 数据源中定义的指标(单位:米),表示当前瓦片与真实物体之间的最大形状差异。
34
+ * **根节点**: 误差巨大(如 100米),仅有模糊轮廓。
35
+ * **叶子节点**: 误差极小(如 0.01米),细节丰富。
36
+ * **SSE 计算逻辑**: `SSE = (GeometricError / DistanceToCamera) * ScreenHeight`。
37
+ * **判定标准**: 如果 `SSE > maxScreenSpaceError`,说明当前瓦片在屏幕上看起来太粗糙(误差像素太大),需要分裂并加载下一级子瓦片;反之则停止细分。
38
+ * **调整影响**: 调低 `maxScreenSpaceError` 会迫使引擎加载更深层级的瓦片,从而获得更清晰的细节,但也会急剧增加渲染三角形数量和显存占用。
39
+
40
+ ### 2. 显存管理 (Cache Management)
41
+
42
+ 为了在浏览器有限的资源下渲染海量数据(如城市级倾斜摄影),3DTile 实现了基于 LRU (Least Recently Used) 的缓存淘汰机制和动态画质调整策略。
43
+
44
+ * **LRU 淘汰**: 当 `maxMemoryUsage` 超限时,引擎会优先保留当前视锥体内的瓦片。视锥体外的、或者距离相机较远的瓦片会被优先释放。
45
+ * **动态画质调整 (Dynamic Scaling)**: 如果开启了 `memoryAdjustedScreenSpaceError`,引擎会以 `maxMemoryUsage` 为目标,实时调整 SSE。
46
+ * **目标**: 尽量跑满 `maxMemoryUsage` 设定的显存额度,不浪费资源。
47
+ * **范围**: 实际 SSE 会在 `1.0` (极高画质) 到 `maxScreenSpaceError` (设定底线) 之间波动。
48
+ * **场景**: 适合显存充足但希望自动平衡画质的场景。
49
+
50
+ ### 3. ViewLayer 与 3DTile
51
+
52
+ 目前所有的 `ViewLayer` 在底层都是一个 `Tile3D` 实例。它们各自拥有独立的:
53
+ * **配置**: `maxScreenSpaceError`, `maxMemoryUsage` 等参数互不干扰。
54
+ * **缓存**: 显存配额各自独立计算。
55
+
56
+ > **注意**: 即使是通过 `file_url` 加载的单体模型(如 `.obj`, `.at3d`),在 Five 内部也会被封装为 `Tile3D` 实例进行统一管理。
57
+
58
+ ## Configuration
59
+
60
+ 以下表格列出了控制 3DTile 加载与性能调度的所有可用参数。
61
+
62
+ ### Core Quality & Performance (核心画质与性能)
63
+
64
+ | Parameter | Type | Default | Description |
65
+ | :--- | :--- | :--- | :--- |
66
+ | `maxScreenSpaceError` | `number` | `16` | **核心参数**。屏幕空间误差阈值 (像素)。<br>值越小画质越高,性能开销越大。建议范围 8-32。 |
67
+ | `maxMemoryUsage` | `number` | `512` | 最大显存占用 (MB)。超限后自动触发 LRU 淘汰机制。 |
68
+ | `memoryAdjustedScreenSpaceError` | `boolean` | `false` | 是否开启基于内存的动态 SSE 调整。<br>开启后引擎会自动调整 SSE 以尽量占满显存配额。 |
69
+ | `cameraCulling` | `boolean` | `true` | 是否开启视锥体剔除 (不加载视野外的瓦片)。**建议始终开启**。 |
70
+
71
+ ### Geometric Error Control (几何误差控制)
72
+
73
+ | Parameter | Type | Default | Description |
74
+ | :--- | :--- | :--- | :--- |
75
+ | `minGeometricError` | `number` | `0` | 最小几何误差 (精度上限锁)。<br>当瓦片误差小于此值时停止细分。可用于限制过高精度的加载。 |
76
+ | `maxGeometricError` | `number` | `10000` | 最大几何误差 (最低精度保证)。<br>强制细分直到误差小于此值。可用于避免模型过于模糊。 |
77
+
78
+ ### Network & Loading (网络与加载)
79
+
80
+ | Parameter | Type | Default | Description |
81
+ | :--- | :--- | :--- | :--- |
82
+ | `maxRequests` | `number` | `4` | 最大并发请求数。建议保持默认,避免网络拥堵。 |
83
+ | `requestOrder` | `string` | `'SCREEN_SPACE_ERROR'` | 请求优先级策略。<br>`'SCREEN_SPACE_ERROR'`: 优先加载 SSE 大的瓦片;<br>`'SCREEN_LEVEL_VERTICAL'`: 优先加载垂直层级高的。 |
84
+ | `loadSiblings` | `boolean` | `true` | 是否预加载兄弟节点。 |
85
+ | `skipLevelOfDetail` | `boolean` | `false` | 是否允许跳级加载 (跳过中间层级直接加载高精瓦片)。 |
86
+
87
+ ### Legacy LOD Control (不推荐)
88
+
89
+ | Parameter | Type | Default | Description |
90
+ | :--- | :--- | :--- | :--- |
91
+ | `minLevelOfDetail` | `number` | `0` | 最小 LOD 层级 (Tree Depth)。建议使用 `maxGeometricError` 替代。 |
92
+ | `maxLevelOfDetail` | `number` | `20` | 最大 LOD 层级 (Tree Depth)。建议使用 `minGeometricError` 替代。 |
93
+
94
+ ## Examples
95
+
96
+ ### 1. Adjusting Quality & Memory (调整画质与内存平衡)
97
+
98
+ 在移动端或性能受限设备上,建议适当降低画质以保证流畅度。
99
+
100
+ ```typescript
101
+ const parameter = five.modelScene.parameter;
102
+
103
+ // 1. 性能优先模式 (适用于低端设备)
104
+ // 增大 SSE 阈值,降低画质
105
+ parameter.set('maxScreenSpaceError', 16);
106
+ // 限制显存,防止 Crash
107
+ parameter.set('maxMemoryUsage', 256);
108
+
109
+ // 2. 画质优先模式 (适用于桌面端/截图)
110
+ // 减小 SSE 阈值,提升细节
111
+ parameter.set('maxScreenSpaceError', 4);
112
+ // 允许更多显存占用
113
+ parameter.set('maxMemoryUsage', 1024);
114
+
115
+ // 3. 重置为默认
116
+ parameter.reset('maxScreenSpaceError', 'maxMemoryUsage');
117
+ ```
118
+
119
+ ### 2. Multi-ViewLayer Optimization (多 ViewLayer 优化)
120
+
121
+ 在对比查看或多楼层场景中,通常存在多个 `ViewLayer`。为了避免资源竞争,建议对非焦点的 ViewLayer 进行降级处理。
122
+
123
+ ```typescript
124
+ // 假设 viewLayerA 是当前主要查看的模型,viewLayerB 是背景参考
125
+
126
+ // 聚焦 ViewLayerA: 正常画质
127
+ viewLayerA.parameter.reset('maxScreenSpaceError');
128
+
129
+ // 降级 ViewLayerB: 仅显示轮廓,节省资源
130
+ viewLayerB.parameter.set('maxScreenSpaceError', 48); // 极低画质
131
+ viewLayerB.parameter.set('maxMemoryUsage', 128); // 极低显存配额
132
+ ```
133
+
134
+ ## Debugging
135
+
136
+ 在开发过程中,可以通过访问 `ViewLayer` 内部的 `tileset` 对象来实时监控渲染状态。
137
+
138
+ ```typescript
139
+ // 假设已获取 viewLayer 实例
140
+ const tileset = viewLayer.tileset;
141
+
142
+ // 1. 查看当前加载的瓦片数量
143
+ console.log(tileset.loadedTiles.size);
144
+
145
+ // 2. 查看当前实际生效的 SSE (如果开启了动态调整,此值会波动)
146
+ console.log(tileset.currentMaxScreenSpaceError);
147
+
148
+ // 3. 查看显存占用 (近似值,单位字节)
149
+ // 注意: 这是内部私有属性,仅供调试参考
150
+ console.log((tileset as any).cacheMemoryUsageInBytes / 1024 / 1024 + ' MB');
151
+ ```
152
+
153
+ ## Common Pitfalls
154
+
155
+ 1. **误解 GeometricError 作用域**: `minGeometricError` 和 `maxGeometricError` 是**全局硬约束**,不随相机距离变化。
156
+ * 错误设置(例如将 `maxGeometricError` 设得极小)会强制全场景所有瓦片(哪怕是远处的背景)都加载到极高精度。
157
+ * 这会导致三角形数量和显存占用**指数级爆炸**,瞬间卡死浏览器。
158
+ 2. **过度降低 `maxScreenSpaceError`**: 设置过小(如 < 4)可能导致每帧需要加载和渲染的三角形数量指数级上升,瞬间撑爆显存或导致掉帧。
159
+ 3. **忽略 `cameraCulling`**: 默认应该开启。如果手动关闭视锥体剔除,引擎将尝试加载全场景数据,极易导致崩溃。
160
+ 4. **频繁切换配置**: `maxMemoryUsage` 等参数的修改会触发缓存整理,高频修改可能导致卡顿。
161
+
162
+ ## Related
163
+
164
+ * [Parameter](./parameter.md): 了解参数的继承关系及材质、点云相关配置。
165
+ * [Model](./model.md): 了解 Model 和 ViewLayer 的关系。
166
+ * [Work](./work.md): 了解 Work 数据结构。
167
+
168
+ ---
169
+
170
+ ```yaml
171
+ tags: [3dtile, viewLayer, performance, lod, optimization]
172
+ ```
@@ -10,6 +10,8 @@
10
10
 
11
11
  ### MovePanoOptions
12
12
 
13
+ > **Definition**: [MovePanoOptions](../../five/types/movePanoOptions.d.ts)
14
+
13
15
  点位移动参数配置。
14
16
 
15
17
  ```typescript
@@ -18,8 +20,12 @@ interface MovePanoOptions extends Partial<Omit<State, "offset" | 'distance' | 'm
18
20
  effect?: MovePanoEffect;
19
21
  /** 走点图片过度策略 */
20
22
  effectEasing?: (progress: number) => number;
21
- /** 运动耗时 (ms) */
22
- duration?: number;
23
+ /**
24
+ * 运动耗时 (ms)
25
+ * - number: 固定时长
26
+ * - function: (distance, speed) => number 根据距离动态计算
27
+ */
28
+ duration?: number | ((distance: number, speed: number) => number) | string | null;
23
29
  /** 运动开始回调 */
24
30
  moveStartCallback?: (toState: State) => void;
25
31
  /** 运动结束回调 */
@@ -92,9 +98,24 @@ five.changeMode(mode: Mode, options?, animationOptions?): Promise<void>
92
98
 
93
99
  ## Configuration
94
100
 
101
+ ### Global Configuration (全局配置)
102
+
95
103
  在 `new Five(config)` 初始化时可以设置全局动画参数:
96
104
 
97
- * `modeChangeDuration`: 模态切换 (如 Panorama -> Mapview) 的默认时长 (ms)。默认为 1000ms。
105
+ | Parameter | Type | Default | Description |
106
+ | :--- | :--- | :--- | :--- |
107
+ | `modeChangeDuration` | `number` | `1000` | 模态切换 (如 Panorama -> Mapview) 的默认时长 (ms)。 |
108
+
109
+ ### MovePanoOptions Configuration (移动参数)
110
+
111
+ 调用 `five.moveToPano(index, options)` 时使用的配置参数:
112
+
113
+ | Parameter | Type | Default | Description |
114
+ | :--- | :--- | :--- | :--- |
115
+ | `effect` | `MovePanoEffect` | `'fly'` | 动画效果。<br>`'fly'`: 空间移动(模拟行走);<br>`'fade'`: 淡入淡出(保持位置不变);<br>`'instant'`: 瞬间跳转。 |
116
+ | `duration` | `number` \| `Function` | - | 动画时长 (ms)。若不传,则根据距离和速度自动计算。 |
117
+ | `effectEasing` | `Function` | - | 自定义过渡效果的缓动函数。 |
118
+ | `moveEndCallback` | `Function` | - | 动画结束后的回调函数。 |
98
119
 
99
120
  ## Examples
100
121
 
@@ -8,6 +8,8 @@
8
8
 
9
9
  ## Schema
10
10
 
11
+ > **Definition**: [PBMClipperParameter](../../five/model/materials/pbmMaterial.d.ts)
12
+
11
13
  ```typescript
12
14
  /** 模型裁切参数 */
13
15
  interface PBMClipperParameter {
@@ -7,6 +7,8 @@
7
7
 
8
8
  ## Schema
9
9
 
10
+ > **Definition**: [TilesetHeader](../../five/model/tile3d/header.d.ts)
11
+
10
12
  ### RootMeta
11
13
 
12
14
  3D Tiles `rootMeta` 字段中定义的坐标系元数据。
@@ -7,6 +7,8 @@
7
7
 
8
8
  ## Schema
9
9
 
10
+ > **Definition**: [Five](../../five/application/five.d.ts), [EventTypes](../../five/application/events.d.ts)
11
+
10
12
  Five 实例提供了以下方法来管理事件监听:
11
13
 
12
14
  ### on
@@ -9,6 +9,9 @@
9
9
  ## Schema
10
10
 
11
11
  ### FiveInitArgs
12
+
13
+ > **Definition**: [FiveInitArgs](../../five/application/fiveInitArgs.d.ts)
14
+
12
15
  `new Five(args)` 的初始化参数对象。
13
16
 
14
17
  ```typescript
@@ -155,6 +158,7 @@ five.updateCameraWithKeyframes(keyframes, 2000).then(() => {
155
158
  - **`updateCameraWithKeyframes(keyframes: { progress: number; value: Pose; key?: string }[], duration: number, userAction?: boolean)`**: 通过关键帧动画移动相机。
156
159
  - **`refresh()`**: 强制刷新画布尺寸。通常在窗口 resize 时调用,Five 会自动监听 resize,但在某些布局变化场景下可能需要手动调用。
157
160
  - **`getPixels(x, y, width, height, ...)` / `getPixels(options)`**: 获取画布指定区域的像素数据。常用于截图、生成缩略图或颜色拾取。支持配置区域、像素比 (pixelRatio)、Y轴翻转 (flipY) 及是否忽略全景图 (skipPanorama) 等。
161
+ - **`project2d(vector: THREE.Vector3, testModel?: boolean): THREE.Vector2 | null`**: 计算三维坐标对应到屏幕的二维坐标。如果坐标在视野外或被遮挡(开启 testModel 时),返回 null。详见 [screen-project.md](./screen-project.md)。
158
162
  - **`ready(args?: { tile?: boolean })`**: Promise,当 Five 状态稳定时 resolve。
159
163
  - **Resolve 时机**:
160
164
  1. **状态同步**:相机姿态已通过动画过渡到目标状态(`stateSynced` 为 true)。