@realsee/five 6.8.0-alpha.0 → 6.8.0-alpha.10

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 (775) hide show
  1. package/AGENTS_READ_ME.md +4 -0
  2. package/AI_CONTEXT.md +4 -0
  3. package/README.md +50 -389
  4. package/ai_guides/README.md +122 -0
  5. package/ai_guides/ai-doc-guidelines.md +102 -0
  6. package/ai_guides/api.md +274 -0
  7. package/ai_guides/features/3dtile.md +172 -0
  8. package/ai_guides/features/camera-animation.md +205 -0
  9. package/ai_guides/features/clipper.md +135 -0
  10. package/ai_guides/features/coordinate-system.md +128 -0
  11. package/ai_guides/features/event.md +154 -0
  12. package/ai_guides/features/five.md +184 -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/ai_guides/features/gesture.md +180 -0
  17. package/ai_guides/features/get-screen-pixels.md +182 -0
  18. package/ai_guides/features/image-options.md +164 -0
  19. package/ai_guides/features/load-external-model.md +350 -0
  20. package/ai_guides/features/load-progress.md +140 -0
  21. package/ai_guides/features/material.md +151 -0
  22. package/ai_guides/features/mode.md +269 -0
  23. package/ai_guides/features/model.md +186 -0
  24. package/ai_guides/features/move-pano-effect.md +145 -0
  25. package/ai_guides/features/multi-work.md +146 -0
  26. package/ai_guides/features/pano-tile.md +132 -0
  27. package/ai_guides/features/pano-uv.md +131 -0
  28. package/ai_guides/features/parameter.md +153 -0
  29. package/ai_guides/features/plugin.md +210 -0
  30. package/ai_guides/features/postprocessing.md +259 -0
  31. package/ai_guides/features/raycast.md +175 -0
  32. package/ai_guides/features/request-proxy.md +112 -0
  33. package/ai_guides/features/screen-project.md +165 -0
  34. package/ai_guides/features/state.md +101 -0
  35. package/ai_guides/features/view-layer.md +187 -0
  36. package/ai_guides/features/work.md +303 -0
  37. package/ai_guides/glossary.md +93 -0
  38. package/ai_guides/intro.md +23 -0
  39. package/ai_guides/quick-start.md +69 -0
  40. package/ai_guides/release_notes/6.6.md +86 -0
  41. package/ai_guides/release_notes/6.7.md +401 -0
  42. package/ai_guides/release_notes/6.8.md +90 -0
  43. package/ai_guides/support.md +23 -0
  44. package/ai_guides/template.md +70 -0
  45. package/docs/00_FOR_AI_AGENTS.md +11 -0
  46. package/docs/README.md +11 -0
  47. package/docs/assets/hierarchy.js +1 -1
  48. package/docs/assets/highlight.css +29 -29
  49. package/docs/assets/icons.js +1 -1
  50. package/docs/assets/icons.svg +1 -1
  51. package/docs/assets/main.js +2 -2
  52. package/docs/assets/navigation.js +1 -1
  53. package/docs/assets/search.js +1 -1
  54. package/docs/assets/style.css +3 -3
  55. package/docs/classes/five.AdaptiveLuminancePass.html +2 -2
  56. package/docs/classes/five.AnimationFrameLoop.html +5 -5
  57. package/docs/classes/five.BoundingMesh.html +1 -1
  58. package/docs/classes/five.Camera.html +5 -5
  59. package/docs/classes/five.EffectComposer.html +1 -1
  60. package/docs/classes/five.EyeDomeLightingPass.html +2 -2
  61. package/docs/classes/five.Five.html +134 -134
  62. package/docs/classes/five.FivePass.html +2 -2
  63. package/docs/classes/five.FullScreenQuad.html +2 -2
  64. package/docs/classes/five.InternalWebGLRenderer.html +1 -1
  65. package/docs/classes/five.Model.html +36 -36
  66. package/docs/classes/five.ModelScene.html +12 -12
  67. package/docs/classes/five.Motion.html +1 -1
  68. package/docs/classes/five.NetworkSubscribe.html +23 -23
  69. package/docs/classes/five.PBMContainer.html +3 -3
  70. package/docs/classes/five.PBMGSObject.html +24 -0
  71. package/docs/classes/five.PBMGroup.html +1 -1
  72. package/docs/classes/five.PBMMesh.html +1 -1
  73. package/docs/classes/five.PBMMeshMaterial.html +15 -6
  74. package/docs/classes/five.PBMPointCloud.html +1 -1
  75. package/docs/classes/five.PBMPointCloudMaterial.html +3 -3
  76. package/docs/classes/five.PBMSkinnedMesh.html +1 -1
  77. package/docs/classes/five.PanoCircleMesh.html +4 -4
  78. package/docs/classes/five.PanoCircleMeshCustom.html +4 -4
  79. package/docs/classes/five.PanoCircleMeshSolid.html +4 -4
  80. package/docs/classes/five.Parameter.html +55 -51
  81. package/docs/classes/five.Scene.html +3 -3
  82. package/docs/classes/five.Subscribe.html +26 -25
  83. package/docs/classes/five.Tile.html +1 -1
  84. package/docs/classes/five.Tile3D.html +30 -26
  85. package/docs/classes/five.TileNode.html +2 -2
  86. package/docs/classes/five.Tileset.html +11 -11
  87. package/docs/classes/five.Trajectory.html +1 -1
  88. package/docs/classes/five.TrajectoryNode.html +1 -1
  89. package/docs/classes/five.Work.html +19 -19
  90. package/docs/classes/five.WorkResolvedObserver.html +41 -16
  91. package/docs/classes/gltf-loader.DDSLoader.html +1 -1
  92. package/docs/classes/gltf-loader.DRACOLoader.html +1 -1
  93. package/docs/classes/gltf-loader.GLTFLoader.html +6 -6
  94. package/docs/classes/gltf-loader.GLTFObject.html +1 -1
  95. package/docs/classes/gltf-loader.THREEGLTFLoader.html +1 -1
  96. package/docs/classes/line.Line.html +1 -1
  97. package/docs/classes/line.LineGeometry.html +4 -4
  98. package/docs/classes/line.LineMaterial.html +1 -1
  99. package/docs/classes/line.LineSegmentsGeometry.html +4 -4
  100. package/docs/classes/line.THREE_Line2.html +1 -1
  101. package/docs/classes/line.THREE_LineSegments2.html +1 -1
  102. package/docs/classes/plugins.BasePlugin.Controller.html +16 -16
  103. package/docs/classes/plugins.RoundedBoxGeometry.html +1 -1
  104. package/docs/classes/react.Store.html +12 -11
  105. package/docs/classes/sticker.Sticker.html +11 -11
  106. package/docs/classes/vfx.Airflow.html +1 -1
  107. package/docs/classes/vfx.Flame.html +1 -1
  108. package/docs/classes/vfx.Particle.html +31 -31
  109. package/docs/classes/vfx.ParticleGPU.html +7 -7
  110. package/docs/classes/vfx.SpotLight.html +1 -1
  111. package/docs/documents/README.html +138 -0
  112. package/docs/documents/ai-doc-guidelines.html +117 -0
  113. package/docs/documents/api.html +337 -0
  114. package/docs/documents/features_3dtile.html +216 -0
  115. package/docs/documents/features_camera-animation.html +157 -0
  116. package/docs/documents/features_clipper.html +80 -0
  117. package/docs/documents/features_coordinate-system.html +127 -0
  118. package/docs/documents/features_event.html +104 -0
  119. package/docs/documents/features_five.html +147 -0
  120. package/docs/documents/features_flowing-light-2d-pass.html +356 -0
  121. package/docs/documents/features_flowing-light-3d-pass.html +351 -0
  122. package/docs/documents/features_gaussian-blur-pass.html +182 -0
  123. package/docs/documents/features_gesture.html +120 -0
  124. package/docs/documents/features_get-screen-pixels.html +88 -0
  125. package/docs/documents/features_image-options.html +108 -0
  126. package/docs/documents/features_load-external-model.html +600 -0
  127. package/docs/documents/features_load-progress.html +110 -0
  128. package/docs/documents/features_material.html +334 -0
  129. package/docs/documents/features_mode.html +114 -0
  130. package/docs/documents/features_model.html +141 -0
  131. package/docs/documents/features_move-pano-effect.html +110 -0
  132. package/docs/documents/features_multi-work.html +97 -0
  133. package/docs/documents/features_pano-tile.html +100 -0
  134. package/docs/documents/features_pano-uv.html +82 -0
  135. package/docs/documents/features_parameter.html +101 -0
  136. package/docs/documents/features_plugin.html +105 -0
  137. package/docs/documents/features_postprocessing.html +109 -0
  138. package/docs/documents/features_raycast.html +98 -0
  139. package/docs/documents/features_request-proxy.html +78 -0
  140. package/docs/documents/features_screen-project.html +112 -0
  141. package/docs/documents/features_state.html +71 -0
  142. package/docs/documents/features_view-layer.html +158 -0
  143. package/docs/documents/features_work.html +129 -0
  144. package/docs/documents/glossary.html +94 -0
  145. package/docs/documents/intro.html +24 -0
  146. package/docs/documents/quick-start.html +32 -0
  147. package/docs/documents/release_notes_6.6.html +79 -0
  148. package/docs/documents/release_notes_6.7.html +209 -0
  149. package/docs/documents/release_notes_6.8.html +103 -0
  150. package/docs/documents/support.html +49 -0
  151. package/docs/documents/template.html +80 -0
  152. package/docs/functions/five.coordinatesToVector.html +1 -1
  153. package/docs/functions/five.defaultImageURLTransform.html +3 -3
  154. package/docs/functions/five.headingToLongitude.html +1 -1
  155. package/docs/functions/five.loadAt3d.html +1 -1
  156. package/docs/functions/five.loadB3dm.html +1 -1
  157. package/docs/functions/five.loadDome.html +1 -1
  158. package/docs/functions/five.loadDomez.html +1 -1
  159. package/docs/functions/five.loadFbx.html +1 -1
  160. package/docs/functions/five.loadGltf.html +1 -1
  161. package/docs/functions/five.loadPbm.html +1 -1
  162. package/docs/functions/five.loadPly.html +1 -1
  163. package/docs/functions/five.loadPnts.html +1 -1
  164. package/docs/functions/five.loadSplat.html +1 -0
  165. package/docs/functions/five.loadSpz.html +1 -0
  166. package/docs/functions/five.loadX3p.html +1 -1
  167. package/docs/functions/five.longitudeToHeading.html +1 -1
  168. package/docs/functions/five.parseWork.html +3 -3
  169. package/docs/functions/five.vectorToCoordinates.html +1 -1
  170. package/docs/functions/react.createFiveProvider.html +2 -2
  171. package/docs/functions/react.createStore.html +8 -8
  172. package/docs/functions/react.useFiveAction.html +6 -6
  173. package/docs/functions/react.useFiveCameraDirection.html +1 -1
  174. package/docs/functions/react.useFiveCameraRaycaster.html +1 -1
  175. package/docs/functions/react.useFiveCurrentObserver.html +1 -1
  176. package/docs/functions/react.useFiveCurrentState.html +1 -1
  177. package/docs/functions/react.useFiveEventCallback.html +1 -1
  178. package/docs/functions/react.useFiveFloor.html +1 -1
  179. package/docs/functions/react.useFiveHelper.html +1 -1
  180. package/docs/functions/react.useFiveModelIntersectRaycaster.html +2 -2
  181. package/docs/functions/react.useFiveModelReadyState.html +1 -1
  182. package/docs/functions/react.useFiveProject2d.html +2 -2
  183. package/docs/functions/react.useFiveSceneEffect.html +1 -1
  184. package/docs/functions/react.useFiveWork.html +2 -2
  185. package/docs/functions/vue.useFiveAction.html +8 -8
  186. package/docs/functions/vue.useFiveCameraDirection.html +1 -1
  187. package/docs/functions/vue.useFiveCameraRaycaster.html +1 -1
  188. package/docs/functions/vue.useFiveCurrentObserver.html +1 -1
  189. package/docs/functions/vue.useFiveCurrentState.html +1 -1
  190. package/docs/functions/vue.useFiveEventCallback.html +1 -1
  191. package/docs/functions/vue.useFiveFloor.html +1 -1
  192. package/docs/functions/vue.useFiveHelper.html +1 -1
  193. package/docs/functions/vue.useFiveModel.html +1 -1
  194. package/docs/functions/vue.useFiveModelBounding.html +1 -1
  195. package/docs/functions/vue.useFiveModelIntersectRaycaster.html +2 -2
  196. package/docs/functions/vue.useFiveModelReadyState.html +1 -1
  197. package/docs/functions/vue.useFiveProject2d.html +2 -2
  198. package/docs/functions/vue.useFiveScene.html +1 -1
  199. package/docs/functions/vue.useFiveState.html +1 -1
  200. package/docs/functions/vue.useFiveWorks.html +4 -4
  201. package/docs/hierarchy.html +1 -1
  202. package/docs/index.html +115 -187
  203. package/docs/interfaces/five.AddableObject.html +5 -5
  204. package/docs/interfaces/five.AjaxOptions.html +5 -5
  205. package/docs/interfaces/five.BaseEvent.html +2 -2
  206. package/docs/interfaces/five.EventCallback.html +198 -194
  207. package/docs/interfaces/five.FiveInitArgs.html +18 -18
  208. package/docs/interfaces/five.FiveLoadOptions.html +3 -3
  209. package/docs/interfaces/five.FloorplanControllerCustomInitArgs.html +8 -8
  210. package/docs/interfaces/five.GestureEvent.html +2 -2
  211. package/docs/interfaces/five.ImageOptions.html +11 -11
  212. package/docs/interfaces/five.ImageURLOptions.html +8 -8
  213. package/docs/interfaces/five.IntersectEvent.html +2 -2
  214. package/docs/interfaces/five.IntersectMesh.html +1 -1
  215. package/docs/interfaces/five.IntersectMeshInterface.html +1 -1
  216. package/docs/interfaces/five.Intersection.html +4 -3
  217. package/docs/interfaces/five.LooseWorkWithExtrinsics.html +7 -7
  218. package/docs/interfaces/five.MapviewControllerCustomInitArgs.html +8 -8
  219. package/docs/interfaces/five.ModeChangeEvent.html +2 -2
  220. package/docs/interfaces/five.ModelControllerCustomInitArgs.html +9 -9
  221. package/docs/interfaces/five.ModelEvent.html +2 -2
  222. package/docs/interfaces/five.ModelOptions.html +3 -3
  223. package/docs/interfaces/five.ModelSceneEvent.html +2 -2
  224. package/docs/interfaces/five.ModelTileEvent.html +8 -0
  225. package/docs/interfaces/five.MovePanoOptions.html +10 -10
  226. package/docs/interfaces/five.NetworkAbortError.html +1 -1
  227. package/docs/interfaces/five.NetworkFirbiddenError.html +1 -1
  228. package/docs/interfaces/five.NetworkOptions.html +4 -4
  229. package/docs/interfaces/five.NetworkProxyError.html +1 -1
  230. package/docs/interfaces/five.NetworkResourceEvent.html +2 -2
  231. package/docs/interfaces/five.NetworkResponseError.html +1 -1
  232. package/docs/interfaces/five.NetworkTimeoutError.html +1 -1
  233. package/docs/interfaces/five.ObjectEvent.html +2 -2
  234. package/docs/interfaces/five.PBMMaterial.html +1 -1
  235. package/docs/interfaces/five.PBMMeshMaterialParameters.html +1 -1
  236. package/docs/interfaces/five.PBMPanoDepth.html +4 -4
  237. package/docs/interfaces/five.PBMPanoPicture.html +5 -5
  238. package/docs/interfaces/five.PBMPointCloudMaterialParameters.html +1 -1
  239. package/docs/interfaces/five.PanoCircleMeshInterface.html +4 -4
  240. package/docs/interfaces/five.PanoEvent.html +2 -2
  241. package/docs/interfaces/five.PanoTextureEvent.html +2 -2
  242. package/docs/interfaces/five.PanoramaControllerCustomInitArgs.html +15 -15
  243. package/docs/interfaces/five.PanoramaLikeControllerCustomInitArgs.html +9 -9
  244. package/docs/interfaces/five.ParameterMaterialValue.html +40 -36
  245. package/docs/interfaces/five.ParameterTilesetValue.html +15 -15
  246. package/docs/interfaces/five.ParameterValue.html +54 -50
  247. package/docs/interfaces/five.Pass.html +1 -1
  248. package/docs/interfaces/five.Pose.html +6 -7
  249. package/docs/interfaces/five.RenderEvent.html +2 -2
  250. package/docs/interfaces/five.ResolvedParameterValue.html +54 -50
  251. package/docs/interfaces/five.SplatData.html +10 -0
  252. package/docs/interfaces/five.State.html +9 -9
  253. package/docs/interfaces/five.StateEvent.html +2 -2
  254. package/docs/interfaces/five.TextureOptions.html +12 -12
  255. package/docs/interfaces/five.Tile3DOptions.html +2 -2
  256. package/docs/interfaces/five.TileCoordinateSystem.html +2 -2
  257. package/docs/interfaces/five.TilesetHeader.html +12 -12
  258. package/docs/interfaces/five.TopviewControllerCustomInitArgs.html +7 -7
  259. package/docs/interfaces/five.VRPanoramaControllerCustomInitArgs.html +13 -13
  260. package/docs/interfaces/five.ViewLayer.html +30 -26
  261. package/docs/interfaces/five.Viewport.html +4 -4
  262. package/docs/interfaces/five.WorkCubeImage.html +1 -1
  263. package/docs/interfaces/five.WorkImage.html +4 -4
  264. package/docs/interfaces/five.WorkInitial.html +8 -8
  265. package/docs/interfaces/five.WorkModel.html +8 -8
  266. package/docs/interfaces/five.WorkModelLayer.html +6 -6
  267. package/docs/interfaces/five.WorkObserver.html +41 -16
  268. package/docs/interfaces/five.WorkTile.html +4 -4
  269. package/docs/interfaces/five.WorkVideo.html +4 -4
  270. package/docs/interfaces/five.WorksEvent.html +2 -2
  271. package/docs/interfaces/five.XRControllerEvent.html +2 -2
  272. package/docs/interfaces/five.XRGestureEvent.html +2 -2
  273. package/docs/interfaces/five.XRPanoramaControllerCustomInitArgs.html +13 -13
  274. package/docs/interfaces/five.XRSessionEvent.html +2 -2
  275. package/docs/interfaces/plugins.BackgroundPluginController.html +11 -11
  276. package/docs/interfaces/plugins.BackgroundPluginType.EventMap.html +8 -8
  277. package/docs/interfaces/plugins.BasePlugin.BaseOptions.html +1 -1
  278. package/docs/interfaces/plugins.BasePlugin.Config.html +2 -2
  279. package/docs/interfaces/plugins.BasePlugin.State.html +4 -4
  280. package/docs/interfaces/plugins.BasePlugin.StateChangeParams.html +3 -3
  281. package/docs/interfaces/plugins.DynamicPathLinePluginController.html +45 -45
  282. package/docs/interfaces/plugins.DynamicPathLinePluginType.Config.html +18 -18
  283. package/docs/interfaces/plugins.DynamicPathLinePluginType.EventMap.html +13 -13
  284. package/docs/interfaces/plugins.DynamicPathLinePluginType.Params.html +2 -2
  285. package/docs/interfaces/plugins.DynamicPathLinePluginType.PathConfig.html +14 -14
  286. package/docs/interfaces/plugins.DynamicPathLinePluginType.State.html +5 -5
  287. package/docs/interfaces/plugins.ItemMaskController.html +12 -12
  288. package/docs/interfaces/plugins.ItemMaskPluginType.Config.html +1 -1
  289. package/docs/interfaces/plugins.ItemMaskPluginType.EventMap.html +5 -5
  290. package/docs/interfaces/plugins.ItemMaskPluginType.Params.html +1 -1
  291. package/docs/interfaces/plugins.ItemMaskPluginType.State.html +7 -7
  292. package/docs/interfaces/plugins.OrientationPluginController.html +12 -12
  293. package/docs/interfaces/plugins.OrientationPluginType.Config.html +1 -1
  294. package/docs/interfaces/plugins.OrientationPluginType.EventMap.html +5 -5
  295. package/docs/interfaces/plugins.OrientationPluginType.Params.html +1 -1
  296. package/docs/interfaces/plugins.OrientationPluginType.State.html +5 -5
  297. package/docs/interfaces/plugins.PanoAnimeController.html +14 -14
  298. package/docs/interfaces/plugins.PanoAnimePluginType.Config.html +1 -1
  299. package/docs/interfaces/plugins.PanoAnimePluginType.ConfigChangeEvent.html +3 -3
  300. package/docs/interfaces/plugins.PanoAnimePluginType.EventMap.html +6 -6
  301. package/docs/interfaces/plugins.PanoAnimePluginType.Params.html +1 -1
  302. package/docs/interfaces/plugins.PanoAnimePluginType.State.html +4 -4
  303. package/docs/interfaces/plugins.PluginTemplateType.Config.html +1 -1
  304. package/docs/interfaces/plugins.PluginTemplateType.EventMap.html +5 -5
  305. package/docs/interfaces/plugins.PluginTemplateType.Params.html +1 -1
  306. package/docs/interfaces/plugins.PluginTemplateType.State.html +4 -4
  307. package/docs/interfaces/plugins.TrajectoryController.html +30 -15
  308. package/docs/interfaces/react.FiveActionReactCallbacks.html +23 -23
  309. package/docs/interfaces/react.FiveCanvasProps.html +2 -2
  310. package/docs/interfaces/react.FiveInjectionTypes.html +76 -76
  311. package/docs/interfaces/sticker.IntersectionLike.html +2 -2
  312. package/docs/interfaces/vfx.ParticleArgs.html +26 -26
  313. package/docs/interfaces/vfx.ParticleGPUArgs.html +30 -30
  314. package/docs/interfaces/vue.FiveActionVueCallbacks.html +23 -23
  315. package/docs/modules/five.html +1 -1
  316. package/docs/modules.html +1 -1
  317. package/docs/types/five.ControllerEventTypes.html +32 -32
  318. package/docs/types/five.EventTypes.html +26 -24
  319. package/docs/types/five.FivePlugin.html +2 -2
  320. package/docs/types/five.FivePluginInit.html +1 -1
  321. package/docs/types/five.FivePluginInstance.html +1 -1
  322. package/docs/types/five.LegacyEventType.html +142 -142
  323. package/docs/types/five.LoadResultType.html +2 -2
  324. package/docs/types/five.Mode.html +1 -1
  325. package/docs/types/five.MotionCircle.html +1 -1
  326. package/docs/types/five.NetworkProgressCallback.html +1 -1
  327. package/docs/types/five.ParseOptions.html +6 -6
  328. package/docs/types/plugins.BasePlugin.EventMap.html +5 -5
  329. package/docs/types/plugins.DynamicPathLinePluginType.PluginData.html +1 -1
  330. package/docs/types/plugins.DynamicPathLinePluginType.ServerData.html +1 -1
  331. package/docs/variables/react.FiveCanvas.html +1 -1
  332. package/docs/variables/react.useFiveScene.html +1 -1
  333. package/docs/variables/vue.FiveCanvas.html +1 -1
  334. package/docs/variables/vue.FiveProvider.html +1 -1
  335. package/five/application/analysis.d.ts +40 -0
  336. package/five/application/controllers.d.ts +41 -0
  337. package/five/application/events-legacy.d.ts +454 -0
  338. package/five/application/events.d.ts +69 -0
  339. package/five/application/five.d.ts +518 -0
  340. package/five/application/fiveInitArgs.d.ts +176 -0
  341. package/five/application/fiveLoadOptions.d.ts +21 -0
  342. package/five/application/generateDefaultVideoElement.d.ts +2 -0
  343. package/five/application/getViewportScale.d.ts +2 -0
  344. package/five/application/initLights.d.ts +3 -0
  345. package/five/application/mode.d.ts +28 -0
  346. package/five/application/renderPoweredByRealsee.d.ts +3 -0
  347. package/five/assets/cardboard-png-data-url.d.ts +2 -0
  348. package/five/assets/gradient-png-data-url.d.ts +2 -0
  349. package/five/assets/loading-png-data-url.d.ts +2 -0
  350. package/five/assets/phone-png-data-url.d.ts +2 -0
  351. package/five/assets/realsee-pmg-data-url.d.ts +2 -0
  352. package/five/bvh/bvhMath.d.ts +33 -0
  353. package/five/bvh/bvhMesh.d.ts +7 -0
  354. package/five/bvh/bvhNode.d.ts +29 -0
  355. package/five/bvh/bvhObject.d.ts +18 -0
  356. package/five/bvh/bvhPoints.d.ts +6 -0
  357. package/five/bvh/index.d.ts +10 -0
  358. package/five/bvh/worker.d.ts +35 -0
  359. package/five/cardboard/helper.d.ts +2 -0
  360. package/five/cardboard/index.d.ts +13 -0
  361. package/five/cardboard/sensor.d.ts +158 -0
  362. package/five/certificates/hardware.d.ts +1 -0
  363. package/five/controllers/base.d.ts +166 -0
  364. package/five/controllers/events.d.ts +69 -0
  365. package/five/controllers/floorplan.d.ts +119 -0
  366. package/five/controllers/mapview.d.ts +138 -0
  367. package/five/controllers/model.d.ts +57 -0
  368. package/five/controllers/panorama.d.ts +143 -0
  369. package/five/controllers/panoramaLike.d.ts +87 -0
  370. package/five/controllers/topview.d.ts +42 -0
  371. package/five/controllers/vrPanorama.d.ts +56 -0
  372. package/five/controllers/xrPanorama.d.ts +81 -0
  373. package/five/core/camera.d.ts +65 -0
  374. package/five/core/internalWebGLRenderer.d.ts +14 -0
  375. package/five/core/panoVideo.d.ts +18 -0
  376. package/five/core/scene.d.ts +10 -0
  377. package/five/core/tiling.d.ts +43 -0
  378. package/five/declare.d.ts +2 -1
  379. package/five/gs/util/renderData.d.ts +32 -0
  380. package/five/gs/wasm/data.d.ts +20 -0
  381. package/five/gs/wasm/sort.d.ts +18 -0
  382. package/five/gs/worker/dataWorker.d.ts +1 -0
  383. package/five/gs/worker/sortWorker.d.ts +1 -0
  384. package/five/index.d.ts +57 -4582
  385. package/five/index.js +605 -92
  386. package/five/index.mjs +9661 -7537
  387. package/five/meshes/boundingMesh.d.ts +12 -0
  388. package/five/meshes/intersectMesh.d.ts +8 -0
  389. package/five/meshes/panoCircleMesh.d.ts +35 -0
  390. package/five/meshes/panoCircleMeshCustom.d.ts +40 -0
  391. package/five/meshes/panoCircleMeshSolid.d.ts +34 -0
  392. package/five/meshes/panoSphereMesh.d.ts +27 -0
  393. package/five/model/helpers/coordinate-transform.d.ts +3 -0
  394. package/five/model/helpers/ellipsoid-coordinates.d.ts +14 -0
  395. package/five/model/helpers/get-edges-by-sphere.d.ts +8 -0
  396. package/five/model/helpers/get-recommend-tile3d-parameters.d.ts +8 -0
  397. package/five/model/index.d.ts +70 -0
  398. package/five/model/intersection.d.ts +18 -0
  399. package/five/model/loaders/at3d.d.ts +12 -0
  400. package/five/model/loaders/b3dm.d.ts +9 -0
  401. package/five/model/loaders/dome.d.ts +22 -0
  402. package/five/model/loaders/domez.d.ts +11 -0
  403. package/five/model/loaders/fbx.d.ts +8 -0
  404. package/five/model/loaders/glTF-helpers/extensions/CESIUM_RTC.d.ts +9 -0
  405. package/five/model/loaders/glTF-helpers/extensions/EXT_meshopt_compression.d.ts +8 -0
  406. package/five/model/loaders/glTF-helpers/extensions/EXT_texture_webp.d.ts +11 -0
  407. package/five/model/loaders/glTF-helpers/extensions/KHR_animation_pointer.d.ts +6 -0
  408. package/five/model/loaders/glTF-helpers/extensions/KHR_binary_glTF.d.ts +25 -0
  409. package/five/model/loaders/glTF-helpers/extensions/KHR_draco_mesh_compression.d.ts +11 -0
  410. package/five/model/loaders/glTF-helpers/extensions/KHR_gaussian_splatting_compression_spz.d.ts +9 -0
  411. package/five/model/loaders/glTF-helpers/extensions/KHR_materials_clearcoat.d.ts +10 -0
  412. package/five/model/loaders/glTF-helpers/extensions/KHR_materials_emissive_strength.d.ts +10 -0
  413. package/five/model/loaders/glTF-helpers/extensions/KHR_materials_sheen.d.ts +10 -0
  414. package/five/model/loaders/glTF-helpers/extensions/KHR_materials_transmission.d.ts +10 -0
  415. package/five/model/loaders/glTF-helpers/extensions/KHR_materials_unlit.d.ts +10 -0
  416. package/five/model/loaders/glTF-helpers/extensions/KHR_mesh_quantization.d.ts +6 -0
  417. package/five/model/loaders/glTF-helpers/extensions/KHR_node_visibility.d.ts +10 -0
  418. package/five/model/loaders/glTF-helpers/extensions/KHR_texture_basisu.d.ts +9 -0
  419. package/five/model/loaders/glTF-helpers/extensions/KHR_texture_transform.d.ts +10 -0
  420. package/five/model/loaders/glTF-helpers/extensions/REALSEE_materials_lightmap.d.ts +7 -0
  421. package/five/model/loaders/glTF-helpers/extensions/base.d.ts +24 -0
  422. package/five/model/loaders/glTF-helpers/glTF.d.ts +713 -0
  423. package/five/model/loaders/glTF-helpers/index.d.ts +47 -0
  424. package/five/model/loaders/glTF-helpers/parser.d.ts +114 -0
  425. package/five/model/loaders/glTF-helpers/type.d.ts +14 -0
  426. package/five/model/loaders/gltf.d.ts +10 -0
  427. package/five/model/loaders/obj.d.ts +9 -0
  428. package/five/model/loaders/pbm.d.ts +26 -0
  429. package/five/model/loaders/ply.d.ts +24 -0
  430. package/five/model/loaders/pnts.d.ts +8 -0
  431. package/five/model/loaders/protobuf/dome.d.ts +540 -0
  432. package/five/model/loaders/protobuf/pbm.d.ts +203 -0
  433. package/five/model/loaders/shared.d.ts +16 -0
  434. package/five/model/loaders/splat.d.ts +8 -0
  435. package/five/model/loaders/spz.d.ts +14 -0
  436. package/five/model/loaders/tile3d-helpers/feature-table.d.ts +15 -0
  437. package/five/model/loaders/tile3d-helpers/gl-type.d.ts +20 -0
  438. package/five/model/loaders/tile3d-helpers/parse-gltf-array-buffer.d.ts +2 -0
  439. package/five/model/loaders/tile3d-helpers/parse-header.d.ts +2 -0
  440. package/five/model/loaders/tile3d-helpers/parse-point-cloud-attributes.d.ts +2 -0
  441. package/five/model/loaders/tile3d-helpers/parse-point-cloud-attributes.worker.d.ts +6 -0
  442. package/five/model/loaders/tile3d-helpers/parse-table.d.ts +3 -0
  443. package/five/model/loaders/tile3d-helpers/tile3d-type.d.ts +35 -0
  444. package/five/model/loaders/x3p.d.ts +22 -0
  445. package/five/model/materials/pbmMaterial.d.ts +87 -0
  446. package/five/model/materials/pbmMeshMaterial.d.ts +124 -0
  447. package/five/model/materials/pbmPointCloudMaterial.d.ts +72 -0
  448. package/five/model/model-scene.d.ts +172 -0
  449. package/five/model/model.d.ts +209 -0
  450. package/five/model/objects/pbmContainer.d.ts +28 -0
  451. package/five/model/objects/pbmGSObject.d.ts +40 -0
  452. package/five/model/objects/pbmGSRenderMesh.d.ts +32 -0
  453. package/five/model/objects/pbmGroup.d.ts +8 -0
  454. package/five/model/objects/pbmMesh.d.ts +10 -0
  455. package/five/model/objects/pbmPointCloud.d.ts +7 -0
  456. package/five/model/parameter.d.ts +136 -0
  457. package/five/model/shaders/pbm_gaussian_splatting/fragment.d.ts +2 -0
  458. package/five/model/shaders/pbm_gaussian_splatting/vertex.d.ts +2 -0
  459. package/five/model/shaders/pbm_mesh_basic/fragment.d.ts +2 -0
  460. package/five/model/shaders/pbm_mesh_basic/vertex.d.ts +2 -0
  461. package/five/model/shaders/pbm_mesh_none/fragment.d.ts +2 -0
  462. package/five/model/shaders/pbm_mesh_none/vertex.d.ts +2 -0
  463. package/five/model/shaders/pbm_mesh_phong/fragment.d.ts +2 -0
  464. package/five/model/shaders/pbm_mesh_phong/vertex.d.ts +2 -0
  465. package/five/model/shaders/pbm_mesh_standard/fragment.d.ts +2 -0
  466. package/five/model/shaders/pbm_mesh_standard/vertex.d.ts +2 -0
  467. package/five/model/shaders/pbm_pointcloud/fragment.d.ts +2 -0
  468. package/five/model/shaders/pbm_pointcloud/vertex.d.ts +2 -0
  469. package/five/model/tile3d/header.d.ts +88 -0
  470. package/five/model/tile3d/index.d.ts +214 -0
  471. package/five/model/tile3d/tile-cache.d.ts +18 -0
  472. package/five/model/tile3d/tile-content.d.ts +10 -0
  473. package/five/model/tile3d/tile-node.d.ts +24 -0
  474. package/five/model/tile3d/tile-request-scheduler.d.ts +17 -0
  475. package/five/model/tile3d/tile.d.ts +79 -0
  476. package/five/model/tile3d/tileset-base-traverser.d.ts +59 -0
  477. package/five/model/tile3d/tileset-most-detail-traverser.d.ts +14 -0
  478. package/five/model/tile3d/tileset-normal-traverser.d.ts +15 -0
  479. package/five/model/tile3d/tileset-skip-traverser.d.ts +60 -0
  480. package/five/model/tile3d/tileset.d.ts +69 -0
  481. package/five/model/tile3d/trajectory-content.d.ts +9 -0
  482. package/five/model/tile3d/trajectory-node.d.ts +15 -0
  483. package/five/model/tile3d/trajectory.d.ts +30 -0
  484. package/five/model/tile3d/types.d.ts +33 -0
  485. package/five/model/view-layer.d.ts +20 -0
  486. package/five/renderer/five-renderer.d.ts +17 -0
  487. package/five/renderer/index.d.ts +3 -0
  488. package/five/renderer/postprocessing/composer.d.ts +37 -0
  489. package/five/renderer/postprocessing/index.d.ts +7 -0
  490. package/five/renderer/postprocessing/passes/adaptive-luminance-pass.d.ts +15 -0
  491. package/five/renderer/postprocessing/passes/eye-dome-lighting-pass.d.ts +14 -0
  492. package/five/renderer/postprocessing/passes/flowing-light-2d-pass.d.ts +36 -0
  493. package/five/renderer/postprocessing/passes/flowing-light-3d-pass.d.ts +36 -0
  494. package/five/renderer/postprocessing/passes/gaussian-blur-pass.d.ts +12 -0
  495. package/five/renderer/postprocessing/passes/pass.d.ts +38 -0
  496. package/five/renderer/scene-renderers/point-cloud-high-quality-scene-renderer.d.ts +11 -0
  497. package/five/renderer/scene-renderers/scene-renderer.d.ts +9 -0
  498. package/five/renderer/scene-renderers/ssaa-scene-renderer.d.ts +15 -0
  499. package/five/renderer/tools/full-screen-quad.d.ts +15 -0
  500. package/five/renderer/tools/render-full-screen-depth.d.ts +2 -0
  501. package/five/renderer/tools/render-full-screen.d.ts +2 -0
  502. package/five/texture/imageBitmap.d.ts +13 -0
  503. package/five/texture/initTexture.d.ts +3 -0
  504. package/five/texture/loader.d.ts +39 -0
  505. package/five/thirdparty/fflate.d.ts +1407 -0
  506. package/five/thirdparty/hammer.d.ts +259 -0
  507. package/five/thirdparty/jsrsasign.d.ts +768 -0
  508. package/five/thirdparty/meshopt_decoder.d.ts +15 -0
  509. package/five/three-version-check.d.ts +1 -0
  510. package/five/types/addableObject.d.ts +12 -0
  511. package/five/types/cube.d.ts +1 -0
  512. package/five/types/gestureInput.d.ts +24 -0
  513. package/five/types/imageOptions.d.ts +20 -0
  514. package/five/types/intersectMeshInterface.d.ts +8 -0
  515. package/five/types/movePanoEffect.d.ts +13 -0
  516. package/five/types/movePanoOptions.d.ts +35 -0
  517. package/five/types/panoCircleMeshInterface.d.ts +34 -0
  518. package/five/types/plugin.d.ts +25 -0
  519. package/five/types/pose.d.ts +17 -0
  520. package/five/types/state.d.ts +20 -0
  521. package/five/types/viewport.d.ts +22 -0
  522. package/five/utils/ajax.d.ts +66 -0
  523. package/five/utils/animationFrameLoop.d.ts +45 -0
  524. package/five/utils/array.d.ts +31 -0
  525. package/five/utils/asyncTaskQueue.d.ts +8 -0
  526. package/five/utils/bufferGeometry.d.ts +33 -0
  527. package/five/utils/calculateProgress.d.ts +39 -0
  528. package/five/utils/calculateThreeMouse.d.ts +13 -0
  529. package/five/utils/canplayVideo.d.ts +2 -0
  530. package/five/utils/clamp.d.ts +2 -0
  531. package/five/utils/clock.d.ts +17 -0
  532. package/five/utils/createSymbol.d.ts +5 -0
  533. package/five/utils/decodeText.d.ts +2 -0
  534. package/five/utils/deepEqual.d.ts +2 -0
  535. package/five/utils/deepFreeze.d.ts +2 -0
  536. package/five/utils/defineProperty.d.ts +9 -0
  537. package/five/utils/detector.d.ts +14 -0
  538. package/five/utils/distance.d.ts +10 -0
  539. package/five/utils/draco.d.ts +26 -0
  540. package/five/utils/easing.d.ts +63 -0
  541. package/five/utils/event.d.ts +149 -0
  542. package/five/utils/formatRad.d.ts +7 -0
  543. package/five/utils/imageSupport.d.ts +6 -0
  544. package/five/utils/imageURL.d.ts +42 -0
  545. package/five/utils/isEmptyObject.d.ts +2 -0
  546. package/five/utils/isNil.d.ts +6 -0
  547. package/five/utils/isNumber.d.ts +2 -0
  548. package/five/utils/isPowerOfTwo.d.ts +2 -0
  549. package/five/utils/isPromise.d.ts +2 -0
  550. package/five/utils/isSimilar.d.ts +6 -0
  551. package/five/utils/json.d.ts +7 -0
  552. package/five/utils/ktx2.d.ts +30 -0
  553. package/five/utils/lzma/index.d.ts +2 -0
  554. package/five/utils/lzma/lzma.d.ts +3 -0
  555. package/five/utils/lzma/lzmaWASM.d.ts +2 -0
  556. package/five/utils/lzma/lzmaWorker.d.ts +14 -0
  557. package/five/utils/memoryUsage.d.ts +29 -0
  558. package/five/utils/motion.d.ts +38 -0
  559. package/five/utils/noop.d.ts +6 -0
  560. package/five/utils/now.d.ts +7 -0
  561. package/five/utils/pano.d.ts +9 -0
  562. package/five/utils/pick.d.ts +3 -0
  563. package/five/utils/poseUtils.d.ts +5 -0
  564. package/five/utils/renderCubeTextureToCubeRenderTarget.d.ts +3 -0
  565. package/five/utils/renderDepth.d.ts +2 -0
  566. package/five/utils/renderTexturesToCubeRenderTarget.d.ts +10 -0
  567. package/five/utils/requestPermission.d.ts +3 -0
  568. package/five/utils/shaderContentFix.d.ts +7 -0
  569. package/five/utils/shaderMaterial.d.ts +20 -0
  570. package/five/utils/stateUtils.d.ts +5 -0
  571. package/five/utils/string-pattern.d.ts +8 -0
  572. package/five/utils/subscribe.d.ts +67 -0
  573. package/five/utils/tileCube.d.ts +19 -0
  574. package/five/utils/toFastProperties.d.ts +1 -0
  575. package/five/utils/typedCache.d.ts +10 -0
  576. package/five/utils/uniform.d.ts +15 -0
  577. package/five/utils/url.d.ts +35 -0
  578. package/five/utils/uuid.d.ts +5 -0
  579. package/five/utils/values.d.ts +2 -0
  580. package/five/utils/vectorCoordinates.d.ts +29 -0
  581. package/five/utils/volume.d.ts +111 -0
  582. package/five/utils/webglError.d.ts +7 -0
  583. package/five/utils/worker.d.ts +26 -0
  584. package/five/webxr/XRControllerModelFactory.d.ts +28 -0
  585. package/five/webxr/motionHelper.d.ts +68 -0
  586. package/five/webxr/xrButton.d.ts +4 -0
  587. package/five/webxr/xrController.d.ts +24 -0
  588. package/five/webxr/xrManager.d.ts +84 -0
  589. package/five/work/_ALLOW_HOST.d.ts +2 -0
  590. package/five/work/index.d.ts +6 -0
  591. package/five/work/keychain.d.ts +5 -0
  592. package/five/work/looseWorkType.d.ts +121 -0
  593. package/five/work/verify.d.ts +7 -0
  594. package/five/work/work.d.ts +236 -0
  595. package/five/work/workFetcher.d.ts +4 -0
  596. package/five/work/workJson.d.ts +3 -0
  597. package/five/work/workJsonType.d.ts +73 -0
  598. package/five/work/workObserverUtils.d.ts +36 -0
  599. package/five/work/workParser.d.ts +6 -0
  600. package/five/work/workResolvedObserver.d.ts +12 -0
  601. package/five/work/workVerify.d.ts +2 -0
  602. package/five/work/works.d.ts +10 -0
  603. package/gltf-loader/gltf-object.d.ts +17 -0
  604. package/gltf-loader/index.d.ts +60 -160
  605. package/gltf-loader/index.js +3 -3
  606. package/gltf-loader/index.mjs +3 -3
  607. package/gltf-loader/thirdparty/DDSLoader.d.ts +23 -0
  608. package/gltf-loader/thirdparty/DRACOLoader.d.ts +18 -0
  609. package/gltf-loader/thirdparty/GLTFLoader.d.ts +59 -0
  610. package/line/circle_png.d.ts +1 -0
  611. package/line/index.d.ts +19 -69
  612. package/line/index.js +3 -3
  613. package/line/index.mjs +3 -3
  614. package/line/utils/Line2.d.ts +7 -0
  615. package/line/utils/LineGeometry.d.ts +10 -0
  616. package/line/utils/LineMaterial.d.ts +20 -0
  617. package/line/utils/LineSegments2.d.ts +11 -0
  618. package/line/utils/LineSegmentsGeometry.d.ts +15 -0
  619. package/llms.txt +65 -0
  620. package/package.json +10 -1
  621. package/plugins/BackgroundPlugin/Controller.d.ts +20 -0
  622. package/plugins/BackgroundPlugin/index.d.ts +5 -0
  623. package/plugins/BackgroundPlugin/typings.d.ts +44 -0
  624. package/plugins/BasePlugin/index.d.ts +119 -0
  625. package/plugins/DynamicPathLinePlugin/Controller.d.ts +167 -0
  626. package/plugins/DynamicPathLinePlugin/index.d.ts +5 -0
  627. package/plugins/DynamicPathLinePlugin/line2/Line2.d.ts +7 -0
  628. package/plugins/DynamicPathLinePlugin/line2/LineGeometry.d.ts +10 -0
  629. package/plugins/DynamicPathLinePlugin/line2/LineMaterial.d.ts +17 -0
  630. package/plugins/DynamicPathLinePlugin/line2/LineSegments2.d.ts +11 -0
  631. package/plugins/DynamicPathLinePlugin/line2/LineSegmentsGeometry.d.ts +15 -0
  632. package/plugins/DynamicPathLinePlugin/typing.d.ts +129 -0
  633. package/plugins/DynamicPathLinePlugin/typings.d.ts +72 -0
  634. package/plugins/ItemMaskPlugin/Controller.d.ts +48 -0
  635. package/plugins/ItemMaskPlugin/index.d.ts +5 -0
  636. package/plugins/ItemMaskPlugin/typing.d.ts +58 -0
  637. package/plugins/OrientationPlugin/Controller.d.ts +82 -0
  638. package/plugins/OrientationPlugin/RoundedBoxGeometry.d.ts +11 -0
  639. package/plugins/OrientationPlugin/index.d.ts +6 -0
  640. package/plugins/OrientationPlugin/typing.d.ts +25 -0
  641. package/plugins/PanoAnimePlugin/Controller.d.ts +46 -0
  642. package/plugins/PanoAnimePlugin/index.d.ts +5 -0
  643. package/plugins/PanoAnimePlugin/typing.d.ts +37 -0
  644. package/plugins/PluginTemplate/Controller.d.ts +27 -0
  645. package/plugins/PluginTemplate/index.d.ts +5 -0
  646. package/plugins/PluginTemplate/typing.d.ts +21 -0
  647. package/plugins/TrajectoryPlugin/Controller.d.ts +85 -0
  648. package/plugins/TrajectoryPlugin/index.d.ts +6 -0
  649. package/plugins/TrajectoryPlugin/typing.d.ts +25 -0
  650. package/plugins/index.d.ts +9 -1078
  651. package/plugins/index.js +17 -17
  652. package/plugins/index.mjs +1518 -1370
  653. package/plugins/thirdParty/CSS3DRenderer.d.ts +32 -0
  654. package/plugins/thirdParty/OrbitControls.d.ts +78 -0
  655. package/plugins/utils/absoluteUrl.d.ts +5 -0
  656. package/plugins/utils/clamp.d.ts +2 -0
  657. package/plugins/utils/loadImage.d.ts +1 -0
  658. package/plugins/utils/motion.d.ts +38 -0
  659. package/plugins/utils/now.d.ts +6 -0
  660. package/plugins/utils/uuid.d.ts +5 -0
  661. package/react/canvas.d.ts +19 -0
  662. package/react/context.d.ts +11 -0
  663. package/react/createProvider.d.ts +95 -0
  664. package/react/createStore.d.ts +144 -0
  665. package/react/hooks/unsafe__useFiveInstance.d.ts +9 -0
  666. package/react/hooks/useFiveAction.d.ts +147 -0
  667. package/react/hooks/useFiveCameraDirection.d.ts +7 -0
  668. package/react/hooks/useFiveCameraRaycaster.d.ts +7 -0
  669. package/react/hooks/useFiveCurrentObserver.d.ts +11 -0
  670. package/react/hooks/useFiveCurrentState.d.ts +15 -0
  671. package/react/hooks/useFiveEventCallback.d.ts +12 -0
  672. package/react/hooks/useFiveFloor.d.ts +15 -0
  673. package/react/hooks/useFiveHelper.d.ts +14 -0
  674. package/react/hooks/useFiveModelBounding.d.ts +5 -0
  675. package/react/hooks/useFiveModelEffect.d.ts +14 -0
  676. package/react/hooks/useFiveModelIntersectRaycaster.d.ts +22 -0
  677. package/react/hooks/useFiveModelReadyState.d.ts +8 -0
  678. package/react/hooks/useFiveProject2d.d.ts +20 -0
  679. package/react/hooks/useFiveSceneEffect.d.ts +21 -0
  680. package/react/hooks/useFiveState.d.ts +6 -0
  681. package/react/hooks/useFiveWork.d.ts +29 -0
  682. package/react/index.d.ts +24 -830
  683. package/react/index.js +2 -2
  684. package/react/index.mjs +2 -2
  685. package/react/rendererPool.d.ts +7 -0
  686. package/react/withFive.d.ts +213 -0
  687. package/shader-lib/EvenessPlane/index.d.ts +10 -0
  688. package/shader-lib/PointCloudExpand/index.d.ts +59 -0
  689. package/shader-lib/PolygonCuter/index.d.ts +52 -0
  690. package/shader-lib/PolygonCuter/worker.d.ts +14 -0
  691. package/shader-lib/ShineModel/index.d.ts +7 -0
  692. package/shader-lib/SweepModel/index.d.ts +7 -0
  693. package/shader-lib/index.d.ts +5 -86
  694. package/shader-lib/index.js +2 -2
  695. package/shader-lib/index.mjs +2 -2
  696. package/sticker/geometry.d.ts +3 -0
  697. package/sticker/index.d.ts +68 -71
  698. package/sticker/index.js +3 -3
  699. package/sticker/index.mjs +3 -3
  700. package/umd/five-gltf-loader.js +3 -3
  701. package/umd/five-line.js +3 -3
  702. package/umd/five-plugins.js +16 -16
  703. package/umd/five-react.js +2 -2
  704. package/umd/five-shader-lib.js +2 -2
  705. package/umd/five-sticker.js +3 -3
  706. package/umd/five-vfx.js +2 -2
  707. package/umd/five-vue.js +2 -2
  708. package/umd/five.js +605 -92
  709. package/vfx/airflow/airflow.d.ts +18 -0
  710. package/vfx/airflow/fragment-shader.d.ts +2 -0
  711. package/vfx/airflow/vertex-shader.d.ts +2 -0
  712. package/vfx/common/scale-shader.d.ts +2 -0
  713. package/vfx/common/simplex-noise-shader.d.ts +2 -0
  714. package/vfx/frame/fragment-shader.d.ts +2 -0
  715. package/vfx/frame/frame.d.ts +22 -0
  716. package/vfx/frame/vertex-shader.d.ts +2 -0
  717. package/vfx/index.d.ts +7 -363
  718. package/vfx/index.js +2 -2
  719. package/vfx/index.mjs +2 -2
  720. package/vfx/particle/fragment-shader.d.ts +2 -0
  721. package/vfx/particle/instance.d.ts +36 -0
  722. package/vfx/particle/particle.d.ts +205 -0
  723. package/vfx/particle/utils.d.ts +11 -0
  724. package/vfx/particle/vertex-shader.d.ts +2 -0
  725. package/vfx/particle-gpu/fragment-shader.d.ts +2 -0
  726. package/vfx/particle-gpu/instance.d.ts +36 -0
  727. package/vfx/particle-gpu/particle.d.ts +95 -0
  728. package/vfx/particle-gpu/utils.d.ts +11 -0
  729. package/vfx/particle-gpu/vertex-shader.d.ts +2 -0
  730. package/vfx/spotLight/fragment-shader.d.ts +2 -0
  731. package/vfx/spotLight/spotLight.d.ts +15 -0
  732. package/vfx/spotLight/vertex-shader.d.ts +2 -0
  733. package/vue/context.d.ts +7 -0
  734. package/vue/hooks/FiveCanvas.d.ts +36 -0
  735. package/vue/hooks/FiveProvider.d.ts +35 -0
  736. package/vue/hooks/unsafe__useFiveInject.d.ts +9 -0
  737. package/vue/hooks/useFiveAction.d.ts +178 -0
  738. package/vue/hooks/useFiveCameraDirection.d.ts +8 -0
  739. package/vue/hooks/useFiveCameraRaycaster.d.ts +8 -0
  740. package/vue/hooks/useFiveCurrentObserver.d.ts +12 -0
  741. package/vue/hooks/useFiveCurrentState.d.ts +16 -0
  742. package/vue/hooks/useFiveEventCallback.d.ts +11 -0
  743. package/vue/hooks/useFiveFloor.d.ts +16 -0
  744. package/vue/hooks/useFiveHelper.d.ts +15 -0
  745. package/vue/hooks/useFiveModel.d.ts +7 -0
  746. package/vue/hooks/useFiveModelBounding.d.ts +7 -0
  747. package/vue/hooks/useFiveModelIntersectRaycaster.d.ts +23 -0
  748. package/vue/hooks/useFiveModelReadyState.d.ts +9 -0
  749. package/vue/hooks/useFiveProject2d.d.ts +26 -0
  750. package/vue/hooks/useFiveScene.d.ts +6 -0
  751. package/vue/hooks/useFiveState.d.ts +16 -0
  752. package/vue/hooks/useFiveWork.d.ts +30 -0
  753. package/vue/index.d.ts +23 -467
  754. package/vue/index.js +2 -2
  755. package/vue/index.mjs +2 -2
  756. package/vue/rendererPool.d.ts +10 -0
  757. package/work-downloader/components/model-3d-tile.d.ts +2 -0
  758. package/work-downloader/components/model.d.ts +3 -0
  759. package/work-downloader/components/observer.d.ts +7 -0
  760. package/work-downloader/download.d.ts +16 -0
  761. package/work-downloader/index.d.ts +2 -33
  762. package/work-downloader/index.js +2 -2
  763. package/work-downloader/index.mjs +2 -2
  764. package/work-downloader/type.d.ts +28 -0
  765. package/work-downloader/utils/download-to-file.d.ts +1 -0
  766. package/work-downloader/utils/image-processing.d.ts +7 -0
  767. package/work-downloader/utils/join-url.d.ts +2 -0
  768. package/work-downloader/utils/log.d.ts +1 -0
  769. package/work-downloader/utils/relative-url.d.ts +1 -0
  770. package/docs/documents/coordinate.html +0 -9
  771. package/docs/documents/five.FivePlugin.plugins.html +0 -77
  772. package/docs/documents/five.Pose.coordinate.html +0 -9
  773. package/docs/documents/plugins.html +0 -77
  774. package/docs/documents/react-component.html +0 -32
  775. package/docs/media/coordinate.jpg +0 -0
@@ -0,0 +1,303 @@
1
+ # Work (VR 数据实体)
2
+
3
+ - **Summary**: Work 是 Five 中最核心的数据实体,代表一个完整的 VR 项目,包含渲染场景所需的所有资源与配置。
4
+ - **Schema**: 包含 Observer, Model, Initial 等核心数据的接口。
5
+ - **Concepts**: Work Entity, Observer, WorkCode, Parsing。
6
+ - **Examples**: 数据加载、访问与多 Work 管理。
7
+
8
+ ## Schema
9
+
10
+ > **Definition**: [Work](../../five/work/work.d.ts), [LooseWork](../../five/work/looseWorkType.d.ts), [WorkJson](../../five/work/workJsonType.d.ts)
11
+
12
+ `Work` 及其相关核心接口定义如下:
13
+
14
+ ```ts
15
+ import * as THREE from "three";
16
+ import type { Mode } from "@realsee/five";
17
+
18
+ type CubeFace = 'up' | 'down' | 'left' | 'right' | 'front' | 'back';
19
+
20
+ /** Work 实体:VR 项目的根对象 */
21
+ export interface Work {
22
+ /** 唯一标识 (Work ID) */
23
+ workCode: string;
24
+ /** 项目名称 */
25
+ name: string;
26
+ /** 资源加载的基础路径 (Base URL) */
27
+ baseURL: string;
28
+ /** 数据签发人 */
29
+ issuer: string;
30
+ /** 过期时间 */
31
+ expire: Date;
32
+ /** 允许访问的安全域名列表 */
33
+ allowHosts: readonly string[];
34
+
35
+ /** 初始化参数 (默认模态、视角等) */
36
+ initial: WorkInitial;
37
+ /** 相对位姿 (用于多 Work 拼接时的坐标变换) */
38
+ transform: THREE.Matrix4;
39
+
40
+ /** 模型参数 (3D 模型资源信息) */
41
+ model?: WorkModel;
42
+ /** 全景点位信息 (所有可观测点位的列表) */
43
+ observers: readonly WorkObserver[];
44
+ }
45
+
46
+ /** 观察点:空间中可驻足观看的点位 */
47
+ export interface WorkObserver {
48
+ /** 所属 Work 引用 */
49
+ work: Work;
50
+ /** 在 observers 数组中的索引 */
51
+ index: number;
52
+ /** 点位序号 (通常与 index 相同) */
53
+ panoIndex: number;
54
+ /** 点位唯一 ID (通常格式为 `${workCode}[${panoIndex}]`) */
55
+ panoId: string;
56
+
57
+ /** 点位是否激活可用 */
58
+ active: boolean;
59
+ /** 点位是否可加载 */
60
+ loadable: boolean;
61
+
62
+ /** 点位所在楼层索引 */
63
+ floorIndex: number;
64
+
65
+ /** 点位在模型坐标系下的观察位置 (用于渲染相机位置) */
66
+ position: THREE.Vector3;
67
+ /** 点位在模型坐标系下的地面位置 (用于导航和 UI 定位) */
68
+ standingPosition: THREE.Vector3;
69
+ /** 点位和模型的旋转对齐四元数 */
70
+ quaternion: THREE.Quaternion;
71
+ /** 点位和模型的旋转对齐矩阵 */
72
+ matrix: THREE.Matrix4;
73
+
74
+ /** 可连通的相关点位序号 (用于全景游走) */
75
+ accessibleNodes: readonly number[];
76
+
77
+ /** 点位全景图资源信息 */
78
+ images: WorkImage;
79
+
80
+ /** 获取点位的全局坐标 */
81
+ getWorldPosition(this: WorkObserver): THREE.Vector3;
82
+
83
+ /** 获取点位的全局地面坐标 */
84
+ getWorldStandingPosition(this: WorkObserver): THREE.Vector3;
85
+
86
+ /** 将方向向量转化为全景图 uv */
87
+ vectorToEquirectangularUv(vector: THREE.Vector3, uvOrigin?: 'top-left' | 'bottom-left'): THREE.Vector2;
88
+ /** 将全景图 uv 转化为方向向量 */
89
+ equirectangularUvToVector(uv: THREE.Vector2, uvOrigin?: 'top-left' | 'bottom-left'): THREE.Vector3;
90
+ /** 将方向向量转化为获六视图 uv */
91
+ vectorToCubemapUv(vector: THREE.Vector3, uvOrigin?: 'top-left' | 'bottom-left'): [cubeFace: CubeFace, cubemapUv: THREE.Vector2];
92
+ /** 将六视图 uv 转化为方向向量 */
93
+ cubemapUvToVector(cubeFace: CubeFace, uv: THREE.Vector2, uvOrigin?: 'top-left' | 'bottom-left'): THREE.Vector3;
94
+ }
95
+
96
+ /** 初始化位姿参数 */
97
+ export interface WorkInitial {
98
+ work: Work;
99
+ /** 模态 */
100
+ mode?: Mode;
101
+ /** 点位序号 */
102
+ panoIndex?: number;
103
+ /** 相机水平角 */
104
+ longitude?: number;
105
+ /** 相机俯仰角 */
106
+ latitude?: number;
107
+ /** 相机可视角度(垂直)*/
108
+ fov?: number;
109
+ /** 相机观察点位置 [x, y, z] */
110
+ offset?: THREE.Vector3;
111
+ /** 相机距离观察点距离 */
112
+ distance?: number;
113
+ }
114
+
115
+ /** 模型数据 */
116
+ export interface WorkModel {
117
+ /** work */
118
+ work: Work;
119
+ /** 模型文件地址 at3d / domez */
120
+ file?: string;
121
+ /** 模型贴图文件地址 */
122
+ textures?: readonly string[];
123
+ /** 模型贴图文件地址的父目录 */
124
+ textureBase?: string;
125
+ /** 指定上方向,对于 obj, ply 等定义不明确的需要指定上方向 */
126
+ upAxis?: string;
127
+ /** 3d tile */
128
+ layers: readonly WorkModelLayer[];
129
+ }
130
+
131
+ /** 模型图层信息 */
132
+ export interface WorkModelLayer {
133
+ /** work */
134
+ work: Work;
135
+ /** 模型类型 point_cloud mesh gaussian_splatting */
136
+ type: 'point_cloud' | 'mesh' | 'gaussian_splatting';
137
+ /** 模型名称 */
138
+ name: string;
139
+ /** 指定上方向 */
140
+ upAxis: string;
141
+ /** tileset.json 地址 */
142
+ tileset: string;
143
+ }
144
+
145
+ /** 全景图资源信息 */
146
+ export interface WorkImage {
147
+ work: Work;
148
+ /** 分辨率表 */
149
+ sizeList: readonly number[];
150
+ /** 瓦片信息 */
151
+ tiles: readonly WorkTile[];
152
+ /** 缩略图/预览图等 */
153
+ [key: string]: any;
154
+ }
155
+ ```
156
+
157
+ ## Concepts
158
+
159
+ ### Work Entity (项目实体)
160
+ Work 是 Five 渲染内容的基石。它不仅包含资源地址,还包含空间结构数据。由于数据通常带有数字签名(防止篡改),开发者**不应手动修改** Work 对象中的属性,尤其是资源路径和坐标数据。
161
+
162
+ ### Data Types (数据类型)
163
+ Five 中有三种与 Work 相关的类型,它们分别对应不同的使用场景:
164
+
165
+ * **LooseWork (宽泛数据)**:
166
+ * **来源**: 通常是服务端下发的原始 JSON 数据。
167
+ * **特点**: 结构宽松,允许缺省值(如使用默认模态)、简写(如 URL 模板)和非标准类型(如数组表示向量)。
168
+ * **用途**: 作为 `parseWork(json)` 的输入。
169
+ * **Work (运行时实体)**:
170
+ * **来源**: 由 `parseWork` 解析生成。
171
+ * **特点**: 结构严谨,数据已标准化(如 URL 已补全,向量转为 `THREE.Vector3`),且被冻结(不可变)。
172
+ * **用途**: Five 内部渲染使用的核心对象,传给 `five.load(work)`。
173
+ * **WorkJson (标准序列化)**:
174
+ * **来源**: 由 `workToJson(work)` 生成。
175
+ * **特点**: 纯 JSON 结构,去除了运行时对象(如 THREE.Vector3),但保留了标准化的数据结构。
176
+ * **用途**: 用于数据持久化存储或跨端传输。
177
+
178
+ ### Layers vs File (数据源关系)
179
+
180
+ `WorkModel` 提供了两种定义模型数据的方式,其中 `layers` 是现代标准,`file` 主要用于兼容旧数据或简单场景。
181
+
182
+ * **`layers`**: (推荐) 数组结构,用于定义多层级、多类型的模型资源。
183
+ * 支持 **3DTiles** 格式的分块加载。
184
+ * 支持多种类型混合:`mesh` (模型), `point_cloud` (点云), `gaussian_splatting` (高斯泼溅)。
185
+ * **默认行为**: 列表中的所有图层默认都会被加载并显示。
186
+ * **`file`**: (兼容) 字符串路径,用于定义单文件的 Mesh 模型。
187
+ * 仅支持部分格式(如 `.at3d`, `.obj`, `.glb`)。
188
+ * 不支持点云或高斯泼溅。
189
+
190
+ **加载优先级与兼容逻辑 (Fallback)**:
191
+
192
+ Five 在运行时会将 `file` 视为一个虚拟的 `mesh` 图层。加载逻辑如下:
193
+
194
+ 1. **优先加载 Layers**:
195
+ Five 会遍历 `work.model.layers` 并加载其中定义的所有图层(包括 Mesh, PointCloud, GaussianSplatting 等)。
196
+
197
+ 2. **File 的条件加载**:
198
+ 检查当前已加载的图层中是否存在 `type: 'mesh'` 的图层。
199
+ * **存在 Mesh 层**: 忽略 `work.model.file` 字段(认为 `layers` 已经提供了更高精度的模型)。
200
+ * **不存在 Mesh 层**: 如果 `work.model.file` 有值,Five 会自动创建一个临时的 Mesh ViewLayer 来加载该文件。
201
+
202
+
203
+
204
+ ### Observer (观察点)
205
+ Observer 是 VR 空间中预设的观察位置。在 **Panorama (全景)** 模式下,相机必须停留在某个 Observer 上。
206
+ * **position**: 相机镜头的物理位置。
207
+ * **standingPosition**: 对应的地面位置(脚底)。通常用于下绘制点位图标,或计算点位间的导航距离。
208
+ * **accessibleNodes**: 定义了该点位可以“走到”哪些相邻点位,构成了全景游走的图结构。
209
+
210
+ ### WorkCode (唯一标识)
211
+ `workCode` 是 Work 的全局唯一标识符。
212
+ * **单 Work 场景**: 通常不需要显式关注。
213
+ * **多 Work 场景**: 当 Five 同时加载多个 Work(如拼接的大型空间)时,必须通过 `workCode` 来区分不同 Work 下的同名属性(如 `panoIndex`)。
214
+
215
+ ### Parsing (数据解析)
216
+ 从服务端获取的原始 JSON 数据(LooseWork)可能包含相对路径或简写。`parseWork` 函数负责将其标准化为严格的 `Work` 对象,处理 URL 拼接、默认值填充和数据校验。
217
+
218
+ ## Examples
219
+
220
+ ### 1. 解析与加载 Work
221
+ 最基础的用法是从 API 获取数据并加载。
222
+
223
+ ```ts
224
+ import { Five, parseWork } from "@realsee/five";
225
+
226
+ const five = new Five();
227
+ five.appendTo(document.getElementById("app"));
228
+
229
+ // 1. 获取数据
230
+ fetch("https://vrlab-public.ljcdn.com/release/web/work.json")
231
+ .then(res => res.json())
232
+ .then(json => {
233
+ // 2. 解析数据
234
+ const work = parseWork(json);
235
+ // 3. 加载到 Five
236
+ five.load(work);
237
+ });
238
+ ```
239
+
240
+ ### 2. 访问 Work 数据
241
+ 加载完成后,可以通过 `five.work` 访问当前数据。
242
+
243
+ ```ts
244
+ // 获取所有观察点
245
+ const observers = five.work.observers;
246
+
247
+ // 获取当前所在的观察点
248
+ const currentPanoIndex = five.state.panoIndex;
249
+ const currentObserver = observers[currentPanoIndex];
250
+
251
+ console.log("当前点位坐标:", currentObserver.position);
252
+ console.log("可通往的点位:", currentObserver.accessibleNodes);
253
+ ```
254
+
255
+ ### 3. 多 Work 加载与管理
256
+ Five 支持同时加载多个 Work,常用于楼盘小区的多个样板间拼接,或大型商业空间的区域拼接。
257
+
258
+ ```ts
259
+ const work1 = parseWork(json1);
260
+ const work2 = parseWork(json2);
261
+
262
+ // 同时加载两个 Work
263
+ five.load([work1, work2]);
264
+
265
+ // 切换到指定 Work 的指定点位
266
+ five.setState({
267
+ mode: "Panorama",
268
+ workCode: work2.workCode, // 必须指定 workCode
269
+ panoIndex: 0
270
+ });
271
+ ```
272
+
273
+ ### 4. 追加与替换 Work
274
+ 可以使用 `load` 方法的参数来控制是替换当前场景还是追加到当前场景。
275
+
276
+ ```ts
277
+ const work3 = parseWork(json3);
278
+
279
+ // 追加 Work (保留原有场景)
280
+ // 第二个参数 "inherit" 表示保持当前相机视角和模态不变,不重置为新 Work 的初始视角
281
+ five.load(work3, "inherit", { mode: "add" });
282
+
283
+ // 替换 Work (清空原有场景) - 默认行为
284
+ five.load(work3, "inherit", { mode: "replace" });
285
+ ```
286
+
287
+ ## Common Pitfalls
288
+
289
+ * **数据不可变性**: Work 数据包含签名信息,直接修改 `work.observers[0].position.x = 100` 虽不会报错,但可能导致渲染异常或签名验证失败。请视 Work 为只读对象。
290
+ * **坐标系**: Five 使用 **Y-Up 右手坐标系**,单位为**米**。与 Three.js 默认坐标系一致。
291
+ * **跨域问题 (CORS)**: `baseURL` 指向的资源服务器必须配置正确的 CORS 头,否则 WebGL 无法加载纹理。
292
+ * **parseWork 必选**: 永远不要尝试手动构造 `Work` 对象,总是使用 `parseWork`。服务端数据结构可能会升级,`parseWork` 会处理兼容性。
293
+
294
+ ## Related
295
+
296
+ * [State](./state.md): 了解如何通过 State 切换点位。
297
+ * [Mode](./mode.md): 了解不同模态下 Work 数据的表现。
298
+
299
+ ---
300
+
301
+ ```yaml
302
+ tags: [work, core, entity, observer]
303
+ ```
@@ -0,0 +1,93 @@
1
+ # Glossary (术语表)
2
+
3
+ - **Summary**: Five SDK 中的核心术语定义与解释。
4
+ - **Audience**: 开发者、AI 助手。
5
+
6
+ ## Core Entities (核心实体)
7
+
8
+ ### Five
9
+ SDK 的核心入口类。一个 `Five` 实例对应一个 `<canvas>` 渲染上下文,负责管理场景生命周期、渲染循环、用户交互和状态更新。
10
+
11
+ ### Work
12
+ VR 看房的**运行时实体**。通常指经过 `parseWork` 解析后生成的标准化数据对象。
13
+ - **LooseWork**: 服务端下发的原始 JSON 数据,结构较宽松。
14
+ - **WorkJson**: `workToJson` 生成的标准序列化数据,用于存储。
15
+ - **包含内容**: Observers, Panorama, Model, Plan 等。
16
+
17
+ ### Vertex Marks (顶点标记)
18
+ 在模型顶点上通过 `_feature_id_rsmask` 属性进行的标记。
19
+ - 用于在特定视角(如俯视)下控制 Mesh 的显隐(例如隐藏天花板)。
20
+ - 属于材质配置的一部分。
21
+
22
+ ### Observer
23
+ **观察点**。对应现实空间中拍摄全景图的一个物理位置。
24
+ - 属性包含:位置 (position)、旋转 (quaternion)、关联的全景图信息。
25
+ - 用户在“全景模式”下,实际上是在不同的 Observer 之间跳转。
26
+
27
+ ## State & Coordinates (状态与坐标)
28
+
29
+ ### Mode (模式)
30
+ Five 定义的五种浏览状态:
31
+ 1. **Panorama (全景)**: 第一人称视角,固定在某个点位观察 360° 景象。
32
+ 2. **Floorplan (户型图)**: 2D 顶视视角,查看房屋平面结构。
33
+ 3. **Topview (顶视)**: 3D 俯视视角,可自由旋转查看房屋立体结构。
34
+ 4. **Model (模型)**: 自由漫游视角,可像游戏一样在模型中自由行走(脱离全景点位)。
35
+ 5. **Map (地图)**: 类似 Google Earth 的操作方式,用于大场景鸟瞰。
36
+
37
+ ### Pose (位姿)
38
+ 描述相机状态的数据结构。
39
+ - **Panorama 模式下**: 使用球面坐标 `(Longitude, Latitude)` + `Fov`。
40
+ - **其他模式下**: 使用 `(x, y, z)` 坐标或变换矩阵。
41
+
42
+ ### PanoIndex
43
+ **全景索引**。当前所在的 Observer 在 `work.observers` 数组中的下标 (从 0 开始)。
44
+
45
+ ### Fov (Field of View)
46
+ **视场角**。决定了视野的宽窄。
47
+ - 数值越大,视野越广(广角)。
48
+ - 数值越小,视野越窄(长焦/放大)。
49
+
50
+ ## Rendering (渲染)
51
+
52
+ ### Pano Tile (全景瓦片)
53
+ 为了在移动端快速加载高分辨率全景图(如 8K/16K),将全景图切分为多个小块(瓦片)。Five 会根据当前视角按需加载可见区域的瓦片。
54
+
55
+ ### Quasi / Mesh
56
+ **三维模型**。通过激光扫描或视觉算法重建的空间几何结构。在 Five 中,全景图贴在几何模型上,从而实现“从全景中看出立体感”的效果。
57
+
58
+ ### G-Buffer / Geometry Buffer
59
+ 用于后处理的几何缓冲区,包含深度 (Depth)、法线 (Normal)、ID 等信息,用于实现高级特效(如轮廓线、SSAO)。
60
+
61
+ ### ViewLayer
62
+ 管理 `Model` 内部特定 3D 资源(如 Mesh、PointCloud、Gaussian Splatting)的图层。
63
+ - 继承自 `Tile3D`。
64
+ - 拥有独立的 `Parameter` 配置(覆盖上层配置)。
65
+ - 支持可见性控制 (`visible`) 和优先级加载。
66
+
67
+ ### Gaussian Splatting (3DGS)
68
+ 一种基于点的 3D 渲染技术,通过各向异性高斯球(Splat)来表示场景。
69
+ - 相比传统 Mesh,能更真实地还原复杂光照和细节。
70
+ - Five 支持 `.spz` 和 `.splat` 格式的 3DGS 渲染。
71
+
72
+ ### 3D Tiles Refinement (细化)
73
+ 3D Tiles 加载过程中的状态概念:
74
+ - **Loaded (已加载)**: 瓦片的基本数据已下载并解析,满足最低显示要求 (`minLevelOfDetail`)。
75
+ - **Refined (已细化)**: 瓦片已加载最高质量数据,满足当前视角的屏幕空间误差要求 (`maxScreenSpaceError`)。
76
+ - `five.model.refineProgress` 可用于监控当前视角的细化进度。
77
+
78
+ ## Interaction (交互)
79
+
80
+ ### Raycast (射线检测)
81
+ 将屏幕上的 2D 点击坐标转换为 3D 空间中的射线,用于检测用户点击了哪个物体(如点击地面移动、点击标签)。
82
+
83
+ ### Tap / Press / Pan / Pinch
84
+ Five 封装的手势事件:
85
+ - **Tap**: 轻触。
86
+ - **Press**: 长按。
87
+ - **Pan**: 拖拽/平移。
88
+ - **Pinch**: 双指缩放。
89
+
90
+ ---
91
+ ```yaml
92
+ tags: [glossary, terminology, definitions]
93
+ ```
@@ -0,0 +1,23 @@
1
+ # Introduction (介绍)
2
+
3
+ - **Summary**: Five 是贝壳如视提供的三维空间渲染 SDK,基于 Three.js 开发,帮助开发者在浏览器中构建高质量的 VR 看房与空间交互应用。
4
+
5
+ ## Overview
6
+
7
+ **Five** 提供了丰富的三维空间展示与交互能力,核心功能模块如下:
8
+
9
+ * **全景浏览**: 支持高分辨率全景图的高效加载与平滑浏览。详见 [Pano Tile](./features/pano-tile.md)。
10
+ * **空间漫游**: 支持在三维模型中自由行走、跳转。详见 [Mode](./features/mode.md)。
11
+ * **模型渲染**: 内置高效的模型加载策略 (3DTile) 与灵活的材质配置。详见 [Model](./features/model.md) 与 [Material](./features/material.md)。
12
+ * **交互事件**: 完善的事件系统,支持手势、射线检测等。详见 [Event](./features/event.md) 与 [Raycast](./features/raycast.md)。
13
+ * **状态管理**: 统一的 State 设计,便于状态保存与还原。详见 [State](./features/state.md)。
14
+
15
+ ## Resources
16
+
17
+ * [官方网站](https://realsee.com)
18
+ * [开发者中心](https://open-platform.realsee.com/)
19
+
20
+ ## Related
21
+
22
+ * [Quick Start](./quick-start.md): 快速开始指南。
23
+ * [Browser Support](./support.md): 浏览器兼容性说明。
@@ -0,0 +1,69 @@
1
+ # Quick Start (快速开始)
2
+
3
+ - **Summary**: 本指南介绍如何安装 Five 并加载一个基础 VR 场景。
4
+
5
+ ## Installation
6
+
7
+ 通过 npm 或 yarn 安装:
8
+
9
+ ```bash
10
+ npm install three@^0.117.1 @realsee/five
11
+ # or
12
+ yarn add three@^0.117.1 @realsee/five
13
+ ```
14
+
15
+ > **注意**: Five 依赖 `three`,请确保安装了兼容的版本。
16
+
17
+ ## Basic Usage
18
+
19
+ 初始化 Five 实例并加载 Work 数据:
20
+
21
+ ```typescript
22
+ import { Five, parseWork } from "@realsee/five";
23
+
24
+ // 1. 创建 Five 实例
25
+ const five = new Five();
26
+
27
+ // 2. 挂载到 DOM
28
+ const app = document.getElementById('app');
29
+ if (app) {
30
+ // 设置容器全屏
31
+ app.style.width = '100vw';
32
+ app.style.height = '100vh';
33
+ five.appendTo(app);
34
+
35
+ // 监听窗口大小变化
36
+ window.addEventListener('resize', () => five.refresh());
37
+ }
38
+
39
+ // 3. 加载数据 (Work)
40
+ // 这是一个公开测试数据
41
+ const workURL = 'https://raw.githubusercontent.com/realsee-developer/dnalogel/main/open-works/real/80o024DE2xyva3j5BE/work.json';
42
+
43
+ fetch(workURL)
44
+ .then(res => res.json())
45
+ .then(json => {
46
+ // 解析并加载
47
+ const work = parseWork(json);
48
+ return five.load(work);
49
+ })
50
+ .then(() => {
51
+ console.log("模型加载完成");
52
+ })
53
+ .catch(err => console.error(err));
54
+ ```
55
+
56
+ ## Next Steps
57
+
58
+ 掌握基础用法后,您可以探索更多核心功能:
59
+
60
+ * **控制视角与移动**: 了解如何通过代码控制相机。 -> [Five.updateCamera](./features/five.md) / [State](./features/state.md)
61
+ * **切换模态**: 在全景、模型、平面图之间切换。 -> [Mode](./features/mode.md)
62
+ * **监听事件**: 响应用户的点击和交互。 -> [Event](./features/event.md)
63
+ * **视觉调整**: 修改材质参数或开启后处理效果。 -> [Material](./features/material.md) / [Postprocessing](./features/postprocessing.md)
64
+ * **自定义配置**: 修改图片加载参数或渲染效果。 -> [ImageOptions](./features/image-options.md)
65
+
66
+ ## Related
67
+
68
+ * [Five](./features/five.md): Five 类完整 API 说明。
69
+ * [Work](./features/work.md): 了解 Work 数据结构。
@@ -0,0 +1,86 @@
1
+ # Release Note 6.6.x
2
+ > 6.6.x 版本发布日志
3
+
4
+ ```shell
5
+ npm install @realsee/five@6.6
6
+ ```
7
+
8
+ ## 依赖升级
9
+ > 6.6.0 版本对开发环境依赖进行了较大幅度的升级,以支持更新的特性和更好的开发体验。
10
+
11
+ - **Node.js**: 升级至 v20。
12
+ - **TypeScript**: 升级至 v5.9.2 (tslib -> 2.8.1)。
13
+ - **Vite**: 升级至 v7.1.2。
14
+ - **Protobufjs**: 升级至 v7.5.3。
15
+
16
+ ## 核心性能优化
17
+
18
+ ### 内存泄漏修复
19
+ 针对大模型加载和销毁过程中的内存占用进行了多轮优化:
20
+ - **实例销毁**: 修复了 `five.dispose()` 时,部分 WebGL 资源(纹理、几何体)及事件监听器未被完全释放的问题。
21
+ - **加载过程**: 优化了模型下载和解析过程中临时对象的生命周期管理,解决了材质解析可能导致的内存驻留。
22
+ - **瓦片加载**: 修复了全景图瓦片在特定网络环境下取消请求时可能导致的内存泄漏。
23
+
24
+ ### 射线检测 (Raycaster) 性能提升
25
+ 优化了 BVH (Bounding Volume Hierarchy) 射线碰撞检测逻辑,引入了“首个命中即停止”的机制,显著提升了点击交互性能。
26
+
27
+ - **firstHitOnly**: 在 `THREE.Raycaster` 上扩展了 `firstHitOnly` 属性。当设置为 `true` 时,BVH 遍历算法会在找到第一个满足条件的交点后,利用该交点的距离对后续搜索进行剪枝(Pruning),避免遍历所有可能的交点。这对于点击拾取(Picking)操作有极大的性能提升。
28
+
29
+ ```typescript
30
+ const raycaster = new THREE.Raycaster();
31
+ // 开启首个命中优化
32
+ raycaster.firstHitOnly = true;
33
+ const intersects = five.model.intersectRaycaster(raycaster);
34
+ ```
35
+
36
+ - **floorIndex**: 支持在射线检测时通过 filter 机制快速筛选楼层(需配合上层逻辑)。
37
+
38
+ ### Work 数据结构优化
39
+ - **静态化存储**: 重构了 `Work` 数据解析逻辑 (`workParser`)。使用 `Object.defineProperty` 和 `Object.freeze` 将解析后的 Work 数据及其子对象(如 `Observer`, `Model`)定义为不可变对象。这有助于 V8 引擎进行 Hidden Class 优化,减少内存占用并提升属性访问速度。
40
+ - **解析优化**: 增强了 `work.parse` 的容错能力,优化了对异常数据的处理逻辑。
41
+ - **字段补充**: `work.observers` 中补充了 `panoId` 字段,修复了 `derivedIdStr` 的生成逻辑。
42
+
43
+ ## 新增特性
44
+
45
+ ### ImageBitmap 支持
46
+ 支持使用浏览器原生的 `ImageBitmap` API 替代传统的 `HTMLImageElement` 进行纹理加载。`ImageBitmap` 的解码过程可以在后台线程进行,避免了解码大图时阻塞主线程导致的掉帧现象。
47
+
48
+ ```typescript
49
+ import { Five } from "@realsee/five";
50
+
51
+ // 开启 Native ImageBitmap 支持 (全局配置)
52
+ Five.useNativeImageBitmap = true;
53
+
54
+ // 之后创建的 Five 实例将自动应用此配置
55
+ const five = new Five({ ... });
56
+ ```
57
+
58
+ ### 图片 Exif 旋转支持
59
+ `imageOptions` 新增 `forceUseExifOrientation` 参数。针对部分未在服务端处理旋转的图片,该参数可强制读取并应用图片 Exif 中的 Orientation 信息,确保渲染方向正确。
60
+
61
+ ```typescript
62
+ const five = new Five({
63
+ imageOptions: {
64
+ forceUseExifOrientation: true
65
+ }
66
+ });
67
+ ```
68
+
69
+ ### 航拍全景图优化
70
+ 优化了航拍全景图(Aerial Panorama)的交互体验,改进了视角限制和过渡效果,使其浏览更加自然顺畅。
71
+
72
+ ## 修复与改进
73
+
74
+ ### 兼容性修复
75
+ - **Safari**:
76
+ - 修复了 BVH 碰撞检测在 Safari 下可能出现的精度不一致问题。
77
+ - 禁用 Safari 下的 `image.decode` 调用,修复了由此导致的 WebGL `updateTexture` 失败问题。
78
+ - **微信**: 修复了点云(PointCloud)在微信查看器中因 Shader 兼容性问题导致的显示错误。
79
+ - **High-DPI**: 修复了当屏幕分辨率导致计算出的瓦片尺寸超过 WebGL 材质尺寸上限(`MAX_TEXTURE_SIZE`)时,瓦片渲染黑屏的问题。
80
+
81
+ ### 逻辑修复
82
+ - **moveToPano**: 修复了当目标点位即为当前点位时,`moveToPano` 命令可能被忽略的问题。
83
+ - **交互逻辑**:
84
+ - 修复了 `panorama` 模式下点击走点可能出现回退的问题。
85
+ - 修复了 `model` 模式下 `onTapGesture` 回调中获取的 raycaster 状态不正确的问题。
86
+ - **渲染显示**: 修复了全景图瓦片在正交相机(OrthographicCamera)下的显示错误。