@realsee/five-webgpu 1.0.0-alpha.1

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 (674) hide show
  1. package/AGENTS_READ_ME.md +9 -0
  2. package/AI_CONTEXT.md +9 -0
  3. package/README.md +80 -0
  4. package/TERMS.txt +54 -0
  5. package/ai_guides/README.md +118 -0
  6. package/ai_guides/ai-doc-guidelines.md +102 -0
  7. package/ai_guides/api.md +274 -0
  8. package/ai_guides/features/3dtile.md +172 -0
  9. package/ai_guides/features/camera-animation.md +205 -0
  10. package/ai_guides/features/clipper.md +135 -0
  11. package/ai_guides/features/coordinate-system.md +128 -0
  12. package/ai_guides/features/event.md +154 -0
  13. package/ai_guides/features/five.md +184 -0
  14. package/ai_guides/features/gesture.md +181 -0
  15. package/ai_guides/features/get-screen-pixels.md +182 -0
  16. package/ai_guides/features/image-options.md +164 -0
  17. package/ai_guides/features/load-external-model.md +350 -0
  18. package/ai_guides/features/load-progress.md +140 -0
  19. package/ai_guides/features/material.md +153 -0
  20. package/ai_guides/features/mode.md +269 -0
  21. package/ai_guides/features/model.md +186 -0
  22. package/ai_guides/features/move-pano-effect.md +145 -0
  23. package/ai_guides/features/multi-work.md +146 -0
  24. package/ai_guides/features/pano-filter.md +144 -0
  25. package/ai_guides/features/pano-tile.md +132 -0
  26. package/ai_guides/features/pano-uv.md +131 -0
  27. package/ai_guides/features/parameter.md +153 -0
  28. package/ai_guides/features/raycast.md +175 -0
  29. package/ai_guides/features/request-proxy.md +112 -0
  30. package/ai_guides/features/screen-project.md +165 -0
  31. package/ai_guides/features/state.md +101 -0
  32. package/ai_guides/features/ultra-hdr.md +204 -0
  33. package/ai_guides/features/view-layer.md +187 -0
  34. package/ai_guides/features/work.md +303 -0
  35. package/ai_guides/glossary.md +93 -0
  36. package/ai_guides/intro.md +23 -0
  37. package/ai_guides/quick-start.md +69 -0
  38. package/ai_guides/release_notes/6.6.md +86 -0
  39. package/ai_guides/release_notes/6.7.md +401 -0
  40. package/ai_guides/release_notes/6.8.md +208 -0
  41. package/ai_guides/support.md +23 -0
  42. package/ai_guides/template.md +70 -0
  43. package/docs/.nojekyll +1 -0
  44. package/docs/00_FOR_AI_AGENTS.md +12 -0
  45. package/docs/README.md +12 -0
  46. package/docs/assets/hierarchy.js +1 -0
  47. package/docs/assets/highlight.css +134 -0
  48. package/docs/assets/icons.js +18 -0
  49. package/docs/assets/icons.svg +1 -0
  50. package/docs/assets/main.js +60 -0
  51. package/docs/assets/navigation.js +1 -0
  52. package/docs/assets/search.js +1 -0
  53. package/docs/assets/style.css +1633 -0
  54. package/docs/classes/index.AdaptiveLuminancePass.html +23 -0
  55. package/docs/classes/index.AnimationFrameLoop.html +18 -0
  56. package/docs/classes/index.BoundingMesh.html +4 -0
  57. package/docs/classes/index.Camera.html +42 -0
  58. package/docs/classes/index.EffectComposer.html +25 -0
  59. package/docs/classes/index.EyeDomeLightingPass.html +20 -0
  60. package/docs/classes/index.Fetcher.html +5 -0
  61. package/docs/classes/index.Five.html +311 -0
  62. package/docs/classes/index.FivePass.html +17 -0
  63. package/docs/classes/index.FiveRenderer.html +8 -0
  64. package/docs/classes/index.FlowingFireworks3DPass.html +22 -0
  65. package/docs/classes/index.FlowingLight2DPass.html +21 -0
  66. package/docs/classes/index.FlowingLight3DPass.html +23 -0
  67. package/docs/classes/index.FullScreenQuad.html +7 -0
  68. package/docs/classes/index.GaussianBlurPass.html +19 -0
  69. package/docs/classes/index.Histogram.html +19 -0
  70. package/docs/classes/index.InternalWebGPURenderer.html +4 -0
  71. package/docs/classes/index.Model.html +93 -0
  72. package/docs/classes/index.ModelScene.html +40 -0
  73. package/docs/classes/index.Motion.html +17 -0
  74. package/docs/classes/index.NetworkSubscribe.html +41 -0
  75. package/docs/classes/index.PBMGaussianSplattingNodeMaterial.html +37 -0
  76. package/docs/classes/index.PBMGaussianSplattingObject.html +32 -0
  77. package/docs/classes/index.PBMGaussianSplattingRenderMesh.html +19 -0
  78. package/docs/classes/index.PBMGroup.html +5 -0
  79. package/docs/classes/index.PBMMesh.html +2 -0
  80. package/docs/classes/index.PBMMeshBasicMaterial.html +70 -0
  81. package/docs/classes/index.PBMMeshBasicNodeMaterial.html +74 -0
  82. package/docs/classes/index.PBMMeshPanoOnlyMaterial.html +70 -0
  83. package/docs/classes/index.PBMMeshPanoOnlyNodeMaterial.html +74 -0
  84. package/docs/classes/index.PBMMeshPhongMaterial.html +69 -0
  85. package/docs/classes/index.PBMMeshPhongNodeMaterial.html +73 -0
  86. package/docs/classes/index.PBMMeshPhysicalMaterial.html +69 -0
  87. package/docs/classes/index.PBMMeshPhysicalNodeMaterial.html +73 -0
  88. package/docs/classes/index.PBMPanoFilter.html +61 -0
  89. package/docs/classes/index.PBMPointCloud.html +50 -0
  90. package/docs/classes/index.PBMSkinnedMesh.html +8 -0
  91. package/docs/classes/index.PBMUpdateable.html +41 -0
  92. package/docs/classes/index.PanoCircleMesh.html +30 -0
  93. package/docs/classes/index.PanoCircleMeshCustom.html +30 -0
  94. package/docs/classes/index.PanoCircleMeshSolid.html +30 -0
  95. package/docs/classes/index.Parameter.html +114 -0
  96. package/docs/classes/index.Scene.html +18 -0
  97. package/docs/classes/index.Subscribe.html +43 -0
  98. package/docs/classes/index.TextureLoader.html +4 -0
  99. package/docs/classes/index.Tile.html +34 -0
  100. package/docs/classes/index.Tile3D.html +98 -0
  101. package/docs/classes/index.TileCache.html +8 -0
  102. package/docs/classes/index.TileNode.html +14 -0
  103. package/docs/classes/index.TileRequestScheduler.html +4 -0
  104. package/docs/classes/index.Tileset.html +38 -0
  105. package/docs/classes/index.Trajectory.html +8 -0
  106. package/docs/classes/index.TrajectoryNode.html +8 -0
  107. package/docs/classes/index.Work.html +52 -0
  108. package/docs/classes/index.WorkResolvedObserver.html +68 -0
  109. package/docs/documents/README.html +134 -0
  110. package/docs/documents/ai-doc-guidelines.html +117 -0
  111. package/docs/documents/api.html +337 -0
  112. package/docs/documents/features_3dtile.html +216 -0
  113. package/docs/documents/features_camera-animation.html +157 -0
  114. package/docs/documents/features_clipper.html +80 -0
  115. package/docs/documents/features_coordinate-system.html +127 -0
  116. package/docs/documents/features_event.html +104 -0
  117. package/docs/documents/features_five.html +147 -0
  118. package/docs/documents/features_gesture.html +121 -0
  119. package/docs/documents/features_get-screen-pixels.html +88 -0
  120. package/docs/documents/features_image-options.html +108 -0
  121. package/docs/documents/features_load-external-model.html +600 -0
  122. package/docs/documents/features_load-progress.html +110 -0
  123. package/docs/documents/features_material.html +341 -0
  124. package/docs/documents/features_mode.html +114 -0
  125. package/docs/documents/features_model.html +141 -0
  126. package/docs/documents/features_move-pano-effect.html +110 -0
  127. package/docs/documents/features_multi-work.html +97 -0
  128. package/docs/documents/features_pano-filter.html +119 -0
  129. package/docs/documents/features_pano-tile.html +100 -0
  130. package/docs/documents/features_pano-uv.html +82 -0
  131. package/docs/documents/features_parameter.html +101 -0
  132. package/docs/documents/features_raycast.html +98 -0
  133. package/docs/documents/features_request-proxy.html +78 -0
  134. package/docs/documents/features_screen-project.html +112 -0
  135. package/docs/documents/features_state.html +71 -0
  136. package/docs/documents/features_ultra-hdr.html +188 -0
  137. package/docs/documents/features_view-layer.html +158 -0
  138. package/docs/documents/features_work.html +129 -0
  139. package/docs/documents/glossary.html +94 -0
  140. package/docs/documents/intro.html +24 -0
  141. package/docs/documents/quick-start.html +32 -0
  142. package/docs/documents/release_notes_6.6.html +79 -0
  143. package/docs/documents/release_notes_6.7.html +209 -0
  144. package/docs/documents/release_notes_6.8.html +189 -0
  145. package/docs/documents/support.html +49 -0
  146. package/docs/documents/template.html +80 -0
  147. package/docs/enums/index.VolumePlaneIntersect.html +4 -0
  148. package/docs/functions/index.coordinatesToVector.html +2 -0
  149. package/docs/functions/index.createDebugBoundingMesh.html +1 -0
  150. package/docs/functions/index.createWorks.html +1 -0
  151. package/docs/functions/index.defaultImageURLTransform.html +5 -0
  152. package/docs/functions/index.getViewportScale.html +1 -0
  153. package/docs/functions/index.headingToLongitude.html +4 -0
  154. package/docs/functions/index.imageSupport.html +1 -0
  155. package/docs/functions/index.isBoundingVolume.html +1 -0
  156. package/docs/functions/index.isPanoId.html +1 -0
  157. package/docs/functions/index.loadAt3d.html +1 -0
  158. package/docs/functions/index.loadDome.html +1 -0
  159. package/docs/functions/index.loadDomez.html +1 -0
  160. package/docs/functions/index.loadGltf.html +1 -0
  161. package/docs/functions/index.loadPbm.html +1 -0
  162. package/docs/functions/index.loadPly.html +1 -0
  163. package/docs/functions/index.longitudeToHeading.html +4 -0
  164. package/docs/functions/index.makeBoundingVolume.html +1 -0
  165. package/docs/functions/index.panoEqual.html +1 -0
  166. package/docs/functions/index.panoParse.html +1 -0
  167. package/docs/functions/index.panoStringify.html +1 -0
  168. package/docs/functions/index.parseWork.html +7 -0
  169. package/docs/functions/index.registerPBMMaterials.html +3 -0
  170. package/docs/functions/index.vectorToCoordinates.html +2 -0
  171. package/docs/functions/index.workToJson.html +1 -0
  172. package/docs/hierarchy.html +1 -0
  173. package/docs/index.html +134 -0
  174. package/docs/interfaces/index.AddableObject.html +9 -0
  175. package/docs/interfaces/index.AjaxOptions.html +9 -0
  176. package/docs/interfaces/index.AnimationFrame.html +6 -0
  177. package/docs/interfaces/index.AnimationFrameContext.html +3 -0
  178. package/docs/interfaces/index.BaseEvent.html +5 -0
  179. package/docs/interfaces/index.BoundingVolume.html +15 -0
  180. package/docs/interfaces/index.BoxBoundingVolume.html +18 -0
  181. package/docs/interfaces/index.CameraPose.html +6 -0
  182. package/docs/interfaces/index.CullingVolume.html +9 -0
  183. package/docs/interfaces/index.Draco.html +12 -0
  184. package/docs/interfaces/index.EventCallback.html +394 -0
  185. package/docs/interfaces/index.FiveInitArgs.html +104 -0
  186. package/docs/interfaces/index.FiveLoadOptions.html +12 -0
  187. package/docs/interfaces/index.FloorplanControllerCustomInitArgs.html +17 -0
  188. package/docs/interfaces/index.GestureEvent.html +19 -0
  189. package/docs/interfaces/index.IPBMMaterial.html +64 -0
  190. package/docs/interfaces/index.ImageOptions.html +21 -0
  191. package/docs/interfaces/index.ImageURLMappings.html +1 -0
  192. package/docs/interfaces/index.ImageURLOptions.html +17 -0
  193. package/docs/interfaces/index.IntersectEvent.html +8 -0
  194. package/docs/interfaces/index.IntersectMesh.html +2 -0
  195. package/docs/interfaces/index.IntersectMeshInterface.html +3 -0
  196. package/docs/interfaces/index.Intersection.html +9 -0
  197. package/docs/interfaces/index.LoosePanoWork.html +10 -0
  198. package/docs/interfaces/index.LooseWork.html +15 -0
  199. package/docs/interfaces/index.LooseWorkInitial.html +11 -0
  200. package/docs/interfaces/index.LooseWorkModel.html +8 -0
  201. package/docs/interfaces/index.LooseWorkObserver.html +17 -0
  202. package/docs/interfaces/index.LooseWorkPanorama.html +22 -0
  203. package/docs/interfaces/index.LooseWorkVideo.html +4 -0
  204. package/docs/interfaces/index.LooseWorkWithExtrinsics.html +15 -0
  205. package/docs/interfaces/index.MapviewControllerCustomInitArgs.html +20 -0
  206. package/docs/interfaces/index.ModeChangeEvent.html +9 -0
  207. package/docs/interfaces/index.ModelControllerCustomInitArgs.html +20 -0
  208. package/docs/interfaces/index.ModelEvent.html +8 -0
  209. package/docs/interfaces/index.ModelOptions.html +11 -0
  210. package/docs/interfaces/index.ModelSceneEvent.html +6 -0
  211. package/docs/interfaces/index.ModelTileEvent.html +8 -0
  212. package/docs/interfaces/index.MotionKeyframe.html +4 -0
  213. package/docs/interfaces/index.MovePanoOptions.html +35 -0
  214. package/docs/interfaces/index.NetworkAbortError.html +1 -0
  215. package/docs/interfaces/index.NetworkFirbiddenError.html +1 -0
  216. package/docs/interfaces/index.NetworkOptions.html +7 -0
  217. package/docs/interfaces/index.NetworkProxyError.html +1 -0
  218. package/docs/interfaces/index.NetworkResourceEvent.html +9 -0
  219. package/docs/interfaces/index.NetworkResponseError.html +2 -0
  220. package/docs/interfaces/index.NetworkTimeoutError.html +1 -0
  221. package/docs/interfaces/index.ObjectEvent.html +6 -0
  222. package/docs/interfaces/index.PBMClipperParameter.html +3 -0
  223. package/docs/interfaces/index.PBMHDRConfig.html +12 -0
  224. package/docs/interfaces/index.PBMPanoDepth.html +9 -0
  225. package/docs/interfaces/index.PBMPanoFilterValue.html +6 -0
  226. package/docs/interfaces/index.PBMPanoPicture.html +14 -0
  227. package/docs/interfaces/index.PBMRefinedScreen.html +6 -0
  228. package/docs/interfaces/index.PanoCircleMeshCustomOptions.html +9 -0
  229. package/docs/interfaces/index.PanoCircleMeshInterface.html +30 -0
  230. package/docs/interfaces/index.PanoCircleMeshOptions.html +3 -0
  231. package/docs/interfaces/index.PanoCircleMeshSolidOptions.html +3 -0
  232. package/docs/interfaces/index.PanoEvent.html +11 -0
  233. package/docs/interfaces/index.PanoTextureEvent.html +9 -0
  234. package/docs/interfaces/index.PanoramaControllerCustomInitArgs.html +41 -0
  235. package/docs/interfaces/index.PanoramaLikeControllerCustomInitArgs.html +20 -0
  236. package/docs/interfaces/index.ParameterMaterialValue.html +74 -0
  237. package/docs/interfaces/index.ParameterTilesetValue.html +30 -0
  238. package/docs/interfaces/index.ParameterValue.html +103 -0
  239. package/docs/interfaces/index.Pass.html +9 -0
  240. package/docs/interfaces/index.PointCloudData.html +6 -0
  241. package/docs/interfaces/index.Pose.html +12 -0
  242. package/docs/interfaces/index.RegionBoundingVolume.html +21 -0
  243. package/docs/interfaces/index.RenderEvent.html +6 -0
  244. package/docs/interfaces/index.ResolvedParameterValue.html +104 -0
  245. package/docs/interfaces/index.RgbaData.html +7 -0
  246. package/docs/interfaces/index.SphereBoundingVolume.html +17 -0
  247. package/docs/interfaces/index.SplatData.html +10 -0
  248. package/docs/interfaces/index.State.html +23 -0
  249. package/docs/interfaces/index.StateEvent.html +7 -0
  250. package/docs/interfaces/index.TextureOptions.html +23 -0
  251. package/docs/interfaces/index.Tile3DOptions.html +11 -0
  252. package/docs/interfaces/index.TileCoordinateSystem.html +3 -0
  253. package/docs/interfaces/index.TileHeader.html +9 -0
  254. package/docs/interfaces/index.TilesetHeader.html +20 -0
  255. package/docs/interfaces/index.TilesetOptions.html +7 -0
  256. package/docs/interfaces/index.TopviewControllerCustomInitArgs.html +13 -0
  257. package/docs/interfaces/index.TrajectoryHeader.html +5 -0
  258. package/docs/interfaces/index.ViewLayer.html +97 -0
  259. package/docs/interfaces/index.Viewport.html +13 -0
  260. package/docs/interfaces/index.WebXRAxesParams.html +4 -0
  261. package/docs/interfaces/index.WebXRControllerParams.html +2 -0
  262. package/docs/interfaces/index.WorkCubeImage.html +15 -0
  263. package/docs/interfaces/index.WorkImage.html +22 -0
  264. package/docs/interfaces/index.WorkInitial.html +17 -0
  265. package/docs/interfaces/index.WorkInitialJson.html +8 -0
  266. package/docs/interfaces/index.WorkJson.html +11 -0
  267. package/docs/interfaces/index.WorkModel.html +16 -0
  268. package/docs/interfaces/index.WorkModelJson.html +6 -0
  269. package/docs/interfaces/index.WorkModelLayer.html +11 -0
  270. package/docs/interfaces/index.WorkModelLayerJson.html +5 -0
  271. package/docs/interfaces/index.WorkObserver.html +63 -0
  272. package/docs/interfaces/index.WorkObserverJson.html +10 -0
  273. package/docs/interfaces/index.WorkPanoramaJson.html +14 -0
  274. package/docs/interfaces/index.WorkPanoramasJson.html +3 -0
  275. package/docs/interfaces/index.WorkTile.html +21 -0
  276. package/docs/interfaces/index.WorkVideo.html +9 -0
  277. package/docs/interfaces/index.WorksEvent.html +8 -0
  278. package/docs/interfaces/index.XRControllerEvent.html +8 -0
  279. package/docs/interfaces/index.XRGestureEvent.html +11 -0
  280. package/docs/interfaces/index.XRSessionEvent.html +7 -0
  281. package/docs/modules/index.html +1 -0
  282. package/docs/modules.html +1 -0
  283. package/docs/types/index.AjaxResponseType.html +1 -0
  284. package/docs/types/index.AjaxResponseTypeMapping.html +1 -0
  285. package/docs/types/index.AnimationFrameLoopType.html +1 -0
  286. package/docs/types/index.BoundingVolumeJson.html +1 -0
  287. package/docs/types/index.BoxBoundingVolumeJson.html +2 -0
  288. package/docs/types/index.ControllerCustomInitTypes.html +6 -0
  289. package/docs/types/index.ControllerEventTypes.html +68 -0
  290. package/docs/types/index.CubeFace.html +1 -0
  291. package/docs/types/index.EasingFunction.html +1 -0
  292. package/docs/types/index.EventTypes.html +28 -0
  293. package/docs/types/index.FivePlugin.html +4 -0
  294. package/docs/types/index.FivePluginInit.html +3 -0
  295. package/docs/types/index.FivePluginInstance.html +3 -0
  296. package/docs/types/index.FlowingFireworks3DPassLine.html +16 -0
  297. package/docs/types/index.FlowingLight2DPassLine.html +10 -0
  298. package/docs/types/index.FlowingLight3DPassLine.html +10 -0
  299. package/docs/types/index.GestureTypes.html +1 -0
  300. package/docs/types/index.LegacyEventType.html +282 -0
  301. package/docs/types/index.LoadResultType.html +12 -0
  302. package/docs/types/index.Mode.html +15 -0
  303. package/docs/types/index.Models.html +11 -0
  304. package/docs/types/index.MotionCircle.html +2 -0
  305. package/docs/types/index.MotionConfig.html +1 -0
  306. package/docs/types/index.MotionInitalValue.html +1 -0
  307. package/docs/types/index.MotionValue.html +1 -0
  308. package/docs/types/index.MovePanoEffect.html +12 -0
  309. package/docs/types/index.NetWorkMeta.html +8 -0
  310. package/docs/types/index.NetworkError.html +1 -0
  311. package/docs/types/index.NetworkErrorCallback.html +1 -0
  312. package/docs/types/index.NetworkProgressCallback.html +1 -0
  313. package/docs/types/index.NetworkResponse.html +3 -0
  314. package/docs/types/index.NetworkState.html +1 -0
  315. package/docs/types/index.NetworkSuccessCallback.html +1 -0
  316. package/docs/types/index.NetworkType.html +1 -0
  317. package/docs/types/index.OutputTextureDataType.html +1 -0
  318. package/docs/types/index.PBMAlphaMode.html +1 -0
  319. package/docs/types/index.PBMColorStyle.html +1 -0
  320. package/docs/types/index.PBMFloorStyle.html +1 -0
  321. package/docs/types/index.PBMMeshMaterial.html +1 -0
  322. package/docs/types/index.PBMPointBack.html +1 -0
  323. package/docs/types/index.PBMPointCloudShaderType.html +1 -0
  324. package/docs/types/index.PBMPointShape.html +1 -0
  325. package/docs/types/index.PBMPointSize.html +1 -0
  326. package/docs/types/index.PBMTransition.html +1 -0
  327. package/docs/types/index.Pano.html +3 -0
  328. package/docs/types/index.PanoId.html +1 -0
  329. package/docs/types/index.ParseOptions.html +13 -0
  330. package/docs/types/index.PostProcessingType.html +1 -0
  331. package/docs/types/index.RegionBoundingVolumeJson.html +2 -0
  332. package/docs/types/index.RequestAnimationFrameArgs.html +1 -0
  333. package/docs/types/index.Scissor.html +2 -0
  334. package/docs/types/index.SphereBoundingVolumeJson.html +2 -0
  335. package/docs/types/index.SubscribeEventMap.html +1 -0
  336. package/docs/types/index.TileCacheOptions.html +3 -0
  337. package/docs/types/index.TileContentData.html +6 -0
  338. package/docs/types/index.TileRequestOrder.html +1 -0
  339. package/docs/types/index.TileRequestSchedulerOptions.html +4 -0
  340. package/docs/types/index.TilesetFrameState.html +21 -0
  341. package/docs/types/index.TrajectoryContentData.html +7 -0
  342. package/docs/types/index.WebXRControllerKey.html +1 -0
  343. package/docs/types/index.WebXRControllerType.html +1 -0
  344. package/docs/types/index.Works.html +1 -0
  345. package/docs/variables/index.PROXY_CONTROLLER_EVENT_NAMES.html +1 -0
  346. package/docs/variables/index.controllersDefaultInitArgs.html +1 -0
  347. package/docs/variables/index.draco.html +1 -0
  348. package/five/application/analysis.d.ts +40 -0
  349. package/five/application/controllers.d.ts +33 -0
  350. package/five/application/events-legacy.d.ts +454 -0
  351. package/five/application/events.d.ts +69 -0
  352. package/five/application/five.d.ts +498 -0
  353. package/five/application/fiveInitArgs.d.ts +173 -0
  354. package/five/application/fiveLoadOptions.d.ts +21 -0
  355. package/five/application/generateDefaultVideoElement.d.ts +2 -0
  356. package/five/application/getViewportScale.d.ts +2 -0
  357. package/five/application/initLights.d.ts +3 -0
  358. package/five/application/mode.d.ts +24 -0
  359. package/five/application/renderPoweredByRealsee.d.ts +3 -0
  360. package/five/assets/cardboard-png-data-url.d.ts +2 -0
  361. package/five/assets/gradient-png-data-url.d.ts +2 -0
  362. package/five/assets/loading-png-data-url.d.ts +2 -0
  363. package/five/assets/phone-png-data-url.d.ts +2 -0
  364. package/five/assets/realsee-pmg-data-url.d.ts +2 -0
  365. package/five/bvh/bvhMath.d.ts +33 -0
  366. package/five/bvh/bvhMesh.d.ts +7 -0
  367. package/five/bvh/bvhNode.d.ts +29 -0
  368. package/five/bvh/bvhObject.d.ts +19 -0
  369. package/five/bvh/bvhPoints.d.ts +6 -0
  370. package/five/bvh/index.d.ts +14 -0
  371. package/five/bvh/type.d.ts +1 -0
  372. package/five/bvh/worker.d.ts +36 -0
  373. package/five/certificates/hardware.d.ts +1 -0
  374. package/five/controllers/base.d.ts +166 -0
  375. package/five/controllers/events.d.ts +71 -0
  376. package/five/controllers/floorplan.d.ts +119 -0
  377. package/five/controllers/mapview.d.ts +138 -0
  378. package/five/controllers/model.d.ts +57 -0
  379. package/five/controllers/panorama.d.ts +143 -0
  380. package/five/controllers/panoramaLike.d.ts +87 -0
  381. package/five/controllers/topview.d.ts +42 -0
  382. package/five/core/camera.d.ts +65 -0
  383. package/five/core/internalWebGPURenderer.d.ts +13 -0
  384. package/five/core/panoVideo.d.ts +18 -0
  385. package/five/core/scene.d.ts +10 -0
  386. package/five/core/tiling.d.ts +56 -0
  387. package/five/declare.d.ts +35 -0
  388. package/five/gaussian-splatting/util/renderData.d.ts +66 -0
  389. package/five/gaussian-splatting/wasm/data.d.ts +20 -0
  390. package/five/gaussian-splatting/wasm/sort.d.ts +18 -0
  391. package/five/gaussian-splatting/worker/dataWorker.d.ts +1 -0
  392. package/five/gaussian-splatting/worker/sortWorker.d.ts +1 -0
  393. package/five/index.d.ts +58 -0
  394. package/five/index.js +1179 -0
  395. package/five/index.mjs +25111 -0
  396. package/five/meshes/boundingMesh.d.ts +12 -0
  397. package/five/meshes/intersectMesh.d.ts +8 -0
  398. package/five/meshes/panoCircleMesh.d.ts +36 -0
  399. package/five/meshes/panoCircleMeshCustom.d.ts +40 -0
  400. package/five/meshes/panoCircleMeshSolid.d.ts +35 -0
  401. package/five/meshes/panoSphereMesh.d.ts +29 -0
  402. package/five/model/helpers/coordinate-transform.d.ts +3 -0
  403. package/five/model/helpers/ellipsoid-coordinates.d.ts +14 -0
  404. package/five/model/helpers/get-edges-by-sphere.d.ts +8 -0
  405. package/five/model/helpers/get-recommend-tile3d-parameters.d.ts +8 -0
  406. package/five/model/index.d.ts +55 -0
  407. package/five/model/intersection.d.ts +18 -0
  408. package/five/model/loaders/at3d.d.ts +12 -0
  409. package/five/model/loaders/b3dm.d.ts +10 -0
  410. package/five/model/loaders/dome.d.ts +22 -0
  411. package/five/model/loaders/domez.d.ts +11 -0
  412. package/five/model/loaders/fbx.d.ts +8 -0
  413. package/five/model/loaders/glTF-helpers/extensions/CESIUM_RTC.d.ts +9 -0
  414. package/five/model/loaders/glTF-helpers/extensions/EXT_meshopt_compression.d.ts +8 -0
  415. package/five/model/loaders/glTF-helpers/extensions/EXT_texture_webp.d.ts +11 -0
  416. package/five/model/loaders/glTF-helpers/extensions/KHR_animation_pointer.d.ts +6 -0
  417. package/five/model/loaders/glTF-helpers/extensions/KHR_binary_glTF.d.ts +25 -0
  418. package/five/model/loaders/glTF-helpers/extensions/KHR_draco_mesh_compression.d.ts +11 -0
  419. package/five/model/loaders/glTF-helpers/extensions/KHR_gaussian_splatting.d.ts +26 -0
  420. package/five/model/loaders/glTF-helpers/extensions/KHR_gaussian_splatting_compression_spz.d.ts +11 -0
  421. package/five/model/loaders/glTF-helpers/extensions/KHR_gaussian_splatting_compression_spz_2.d.ts +13 -0
  422. package/five/model/loaders/glTF-helpers/extensions/KHR_materials_clearcoat.d.ts +10 -0
  423. package/five/model/loaders/glTF-helpers/extensions/KHR_materials_emissive_strength.d.ts +10 -0
  424. package/five/model/loaders/glTF-helpers/extensions/KHR_materials_sheen.d.ts +10 -0
  425. package/five/model/loaders/glTF-helpers/extensions/KHR_materials_transmission.d.ts +10 -0
  426. package/five/model/loaders/glTF-helpers/extensions/KHR_materials_unlit.d.ts +12 -0
  427. package/five/model/loaders/glTF-helpers/extensions/KHR_mesh_quantization.d.ts +6 -0
  428. package/five/model/loaders/glTF-helpers/extensions/KHR_node_visibility.d.ts +10 -0
  429. package/five/model/loaders/glTF-helpers/extensions/KHR_texture_basisu.d.ts +9 -0
  430. package/five/model/loaders/glTF-helpers/extensions/KHR_texture_transform.d.ts +10 -0
  431. package/five/model/loaders/glTF-helpers/extensions/REALSEE_materials_lightmap.d.ts +7 -0
  432. package/five/model/loaders/glTF-helpers/extensions/base.d.ts +25 -0
  433. package/five/model/loaders/glTF-helpers/glTF.d.ts +713 -0
  434. package/five/model/loaders/glTF-helpers/index.d.ts +51 -0
  435. package/five/model/loaders/glTF-helpers/parser.d.ts +115 -0
  436. package/five/model/loaders/glTF-helpers/type.d.ts +14 -0
  437. package/five/model/loaders/gltf.d.ts +10 -0
  438. package/five/model/loaders/obj.d.ts +9 -0
  439. package/five/model/loaders/pbm.d.ts +26 -0
  440. package/five/model/loaders/ply.d.ts +24 -0
  441. package/five/model/loaders/pnts.d.ts +8 -0
  442. package/five/model/loaders/protobuf/dome.d.ts +540 -0
  443. package/five/model/loaders/protobuf/pbm.d.ts +203 -0
  444. package/five/model/loaders/shared.d.ts +16 -0
  445. package/five/model/loaders/splat.d.ts +8 -0
  446. package/five/model/loaders/spz.d.ts +14 -0
  447. package/five/model/loaders/tile3d-helpers/feature-table.d.ts +15 -0
  448. package/five/model/loaders/tile3d-helpers/gl-type.d.ts +20 -0
  449. package/five/model/loaders/tile3d-helpers/parse-gltf-array-buffer.d.ts +2 -0
  450. package/five/model/loaders/tile3d-helpers/parse-header.d.ts +2 -0
  451. package/five/model/loaders/tile3d-helpers/parse-point-cloud-attributes.d.ts +2 -0
  452. package/five/model/loaders/tile3d-helpers/parse-point-cloud-attributes.worker.d.ts +6 -0
  453. package/five/model/loaders/tile3d-helpers/parse-table.d.ts +3 -0
  454. package/five/model/loaders/tile3d-helpers/tile3d-type.d.ts +36 -0
  455. package/five/model/loaders/x3p.d.ts +22 -0
  456. package/five/model/materials/nodes/pbmMeshBasicNodeMaterial.d.ts +14 -0
  457. package/five/model/materials/nodes/pbmMeshPanoOnlyNodeMaterial.d.ts +14 -0
  458. package/five/model/materials/nodes/pbmMeshPhongNodeMaterial.d.ts +14 -0
  459. package/five/model/materials/nodes/pbmMeshPhysicalNodeMaterial.d.ts +14 -0
  460. package/five/model/materials/nodes/pbmPointCloudNodeMaterial.d.ts +22 -0
  461. package/five/model/materials/pbmGaussianSplattingNodeMaterial.d.ts +78 -0
  462. package/five/model/materials/pbmMaterial.d.ts +171 -0
  463. package/five/model/materials/pbmMaterialRegister.d.ts +6 -0
  464. package/five/model/materials/pbmMeshMaterial.d.ts +57 -0
  465. package/five/model/materials/pbmPointCloudMaterial.d.ts +20 -0
  466. package/five/model/materials/pbmPointCloudNodeMaterial.d.ts +46 -0
  467. package/five/model/materials/tsl/colorFilter.d.ts +9 -0
  468. package/five/model/materials/tsl/defines.d.ts +68 -0
  469. package/five/model/materials/tsl/nodeTypes.d.ts +12 -0
  470. package/five/model/materials/tsl/outputBuilder.d.ts +26 -0
  471. package/five/model/materials/tsl/panoColor.d.ts +17 -0
  472. package/five/model/materials/tsl/panoTransition.d.ts +8 -0
  473. package/five/model/materials/tsl/utils.d.ts +11 -0
  474. package/five/model/model-scene.d.ts +172 -0
  475. package/five/model/model.d.ts +203 -0
  476. package/five/model/objects/pbmGaussianSplattingObject.d.ts +47 -0
  477. package/five/model/objects/pbmGaussianSplattingRenderMesh.d.ts +73 -0
  478. package/five/model/objects/pbmGroup.d.ts +8 -0
  479. package/five/model/objects/pbmMesh.d.ts +10 -0
  480. package/five/model/objects/pbmPointCloud.d.ts +89 -0
  481. package/five/model/objects/pbmPointCloudObject.d.ts +81 -0
  482. package/five/model/parameter.d.ts +138 -0
  483. package/five/model/tile3d/header.d.ts +88 -0
  484. package/five/model/tile3d/index.d.ts +213 -0
  485. package/five/model/tile3d/tile-cache.d.ts +18 -0
  486. package/five/model/tile3d/tile-content.d.ts +10 -0
  487. package/five/model/tile3d/tile-node.d.ts +26 -0
  488. package/five/model/tile3d/tile-request-scheduler.d.ts +17 -0
  489. package/five/model/tile3d/tile.d.ts +79 -0
  490. package/five/model/tile3d/tileset-base-traverser.d.ts +59 -0
  491. package/five/model/tile3d/tileset-most-detail-traverser.d.ts +14 -0
  492. package/five/model/tile3d/tileset-normal-traverser.d.ts +15 -0
  493. package/five/model/tile3d/tileset-skip-traverser.d.ts +60 -0
  494. package/five/model/tile3d/tileset.d.ts +65 -0
  495. package/five/model/tile3d/trajectory-content.d.ts +0 -0
  496. package/five/model/tile3d/trajectory-node.d.ts +15 -0
  497. package/five/model/tile3d/trajectory.d.ts +30 -0
  498. package/five/model/tile3d/types.d.ts +33 -0
  499. package/five/model/view-layer.d.ts +20 -0
  500. package/five/renderer/compute-renderers/pointcloud-compute-renderer.d.ts +154 -0
  501. package/five/renderer/compute-renderers/rgb565.d.ts +45 -0
  502. package/five/renderer/compute-renderers/shaders/clear.d.ts +2 -0
  503. package/five/renderer/compute-renderers/shaders/fullscreenQuad.d.ts +2 -0
  504. package/five/renderer/compute-renderers/shaders/rasterize.d.ts +2 -0
  505. package/five/renderer/five-renderer.d.ts +33 -0
  506. package/five/renderer/index.d.ts +3 -0
  507. package/five/renderer/postprocessing/composer.d.ts +45 -0
  508. package/five/renderer/postprocessing/index.d.ts +8 -0
  509. package/five/renderer/postprocessing/passes/adaptive-luminance-pass.d.ts +27 -0
  510. package/five/renderer/postprocessing/passes/eye-dome-lighting-pass.d.ts +31 -0
  511. package/five/renderer/postprocessing/passes/flowing-fireworks-3d-pass.d.ts +71 -0
  512. package/five/renderer/postprocessing/passes/flowing-light-2d-pass.d.ts +26 -0
  513. package/five/renderer/postprocessing/passes/flowing-light-3d-pass.d.ts +75 -0
  514. package/five/renderer/postprocessing/passes/gaussian-blur-pass.d.ts +22 -0
  515. package/five/renderer/postprocessing/passes/pass.d.ts +38 -0
  516. package/five/renderer/scene-renderers/scene-renderer.d.ts +9 -0
  517. package/five/renderer/tools/full-screen-quad.d.ts +17 -0
  518. package/five/renderer/tools/postprocess-uv.d.ts +11 -0
  519. package/five/renderer/tools/render-cube-to-equirectangular.d.ts +7 -0
  520. package/five/renderer/tools/render-full-screen-depth.d.ts +2 -0
  521. package/five/renderer/tools/render-full-screen.d.ts +2 -0
  522. package/five/texture/histogram.d.ts +54 -0
  523. package/five/texture/imageBitmap.d.ts +13 -0
  524. package/five/texture/initTexture.d.ts +3 -0
  525. package/five/texture/loader.d.ts +39 -0
  526. package/five/texture/textureData.d.ts +11 -0
  527. package/five/thirdparty/fflate.d.ts +1407 -0
  528. package/five/thirdparty/hammer.d.ts +375 -0
  529. package/five/thirdparty/jsrsasign.d.ts +753 -0
  530. package/five/thirdparty/meshopt_decoder.d.ts +15 -0
  531. package/five/three-version-check.d.ts +1 -0
  532. package/five/types/addableObject.d.ts +12 -0
  533. package/five/types/cube.d.ts +2 -0
  534. package/five/types/gestureInput.d.ts +24 -0
  535. package/five/types/imageOptions.d.ts +20 -0
  536. package/five/types/intersectMeshInterface.d.ts +8 -0
  537. package/five/types/movePanoEffect.d.ts +13 -0
  538. package/five/types/movePanoOptions.d.ts +36 -0
  539. package/five/types/panoCircleMeshInterface.d.ts +34 -0
  540. package/five/types/plugin.d.ts +25 -0
  541. package/five/types/pose.d.ts +17 -0
  542. package/five/types/state.d.ts +20 -0
  543. package/five/types/viewport.d.ts +22 -0
  544. package/five/utils/ajax.d.ts +66 -0
  545. package/five/utils/animationFrameLoop.d.ts +45 -0
  546. package/five/utils/array.d.ts +31 -0
  547. package/five/utils/asyncTaskQueue.d.ts +8 -0
  548. package/five/utils/bufferGeometry.d.ts +33 -0
  549. package/five/utils/calculateProgress.d.ts +39 -0
  550. package/five/utils/calculateThreeMouse.d.ts +13 -0
  551. package/five/utils/canplayVideo.d.ts +2 -0
  552. package/five/utils/clamp.d.ts +2 -0
  553. package/five/utils/clock.d.ts +30 -0
  554. package/five/utils/createSymbol.d.ts +5 -0
  555. package/five/utils/decodeText.d.ts +2 -0
  556. package/five/utils/deepEqual.d.ts +2 -0
  557. package/five/utils/deepFreeze.d.ts +2 -0
  558. package/five/utils/defineProperty.d.ts +9 -0
  559. package/five/utils/detector.d.ts +14 -0
  560. package/five/utils/distance.d.ts +10 -0
  561. package/five/utils/draco.d.ts +26 -0
  562. package/five/utils/easing.d.ts +63 -0
  563. package/five/utils/event.d.ts +159 -0
  564. package/five/utils/face3.d.ts +12 -0
  565. package/five/utils/formatRad.d.ts +7 -0
  566. package/five/utils/hdr-data.d.ts +13 -0
  567. package/five/utils/imageSupport.d.ts +6 -0
  568. package/five/utils/imageURL.d.ts +42 -0
  569. package/five/utils/isEmptyObject.d.ts +2 -0
  570. package/five/utils/isNil.d.ts +6 -0
  571. package/five/utils/isNumber.d.ts +2 -0
  572. package/five/utils/isPowerOfTwo.d.ts +2 -0
  573. package/five/utils/isPromise.d.ts +2 -0
  574. package/five/utils/isSimilar.d.ts +6 -0
  575. package/five/utils/json.d.ts +7 -0
  576. package/five/utils/ktx2.d.ts +30 -0
  577. package/five/utils/lzma/index.d.ts +2 -0
  578. package/five/utils/lzma/lzma.d.ts +3 -0
  579. package/five/utils/lzma/lzmaWASM.d.ts +2 -0
  580. package/five/utils/lzma/lzmaWorker.d.ts +14 -0
  581. package/five/utils/memoryUsage.d.ts +37 -0
  582. package/five/utils/motion.d.ts +38 -0
  583. package/five/utils/noop.d.ts +6 -0
  584. package/five/utils/now.d.ts +7 -0
  585. package/five/utils/pano.d.ts +9 -0
  586. package/five/utils/pick.d.ts +3 -0
  587. package/five/utils/poseUtils.d.ts +5 -0
  588. package/five/utils/renderCubeTextureToCubeRenderTarget.d.ts +3 -0
  589. package/five/utils/renderDepth.d.ts +2 -0
  590. package/five/utils/renderTexturesToCubeRenderTarget.d.ts +10 -0
  591. package/five/utils/requestPermission.d.ts +3 -0
  592. package/five/utils/shaderContentFix.d.ts +7 -0
  593. package/five/utils/shaderMaterial.d.ts +20 -0
  594. package/five/utils/stateUtils.d.ts +5 -0
  595. package/five/utils/string-pattern.d.ts +8 -0
  596. package/five/utils/subscribe.d.ts +67 -0
  597. package/five/utils/tileCube.d.ts +19 -0
  598. package/five/utils/toFastProperties.d.ts +1 -0
  599. package/five/utils/typedCache.d.ts +10 -0
  600. package/five/utils/uniform.d.ts +15 -0
  601. package/five/utils/url.d.ts +35 -0
  602. package/five/utils/uuid.d.ts +5 -0
  603. package/five/utils/values.d.ts +2 -0
  604. package/five/utils/vectorCoordinates.d.ts +29 -0
  605. package/five/utils/volume.d.ts +111 -0
  606. package/five/utils/worker.d.ts +26 -0
  607. package/five/work/_ALLOW_HOST.d.ts +2 -0
  608. package/five/work/index.d.ts +6 -0
  609. package/five/work/keychain.d.ts +5 -0
  610. package/five/work/looseWorkType.d.ts +128 -0
  611. package/five/work/verify.d.ts +7 -0
  612. package/five/work/work.d.ts +246 -0
  613. package/five/work/workFetcher.d.ts +4 -0
  614. package/five/work/workJson.d.ts +3 -0
  615. package/five/work/workJsonType.d.ts +73 -0
  616. package/five/work/workObserverUtils.d.ts +36 -0
  617. package/five/work/workParser.d.ts +6 -0
  618. package/five/work/workResolvedObserver.d.ts +12 -0
  619. package/five/work/workVerify.d.ts +2 -0
  620. package/five/work/works.d.ts +10 -0
  621. package/llms.txt +66 -0
  622. package/package.json +56 -0
  623. package/plugins/BasePlugin/index.d.ts +96 -0
  624. package/plugins/GaussianSplattingEntranceAnimationPlugin/Controller.d.ts +66 -0
  625. package/plugins/GaussianSplattingEntranceAnimationPlugin/index.d.ts +5 -0
  626. package/plugins/GaussianSplattingEntranceAnimationPlugin/typing.d.ts +32 -0
  627. package/plugins/index.d.ts +2 -0
  628. package/plugins/index.js +255 -0
  629. package/plugins/index.mjs +539 -0
  630. package/plugins/utils/absoluteUrl.d.ts +5 -0
  631. package/react/autoCanvas.d.ts +9 -0
  632. package/react/canvas.d.ts +19 -0
  633. package/react/context.d.ts +12 -0
  634. package/react/createProvider.d.ts +98 -0
  635. package/react/createStore.d.ts +144 -0
  636. package/react/fiveApp.d.ts +22 -0
  637. package/react/hooks/unsafe__useFiveInstance.d.ts +9 -0
  638. package/react/hooks/useFiveAction.d.ts +147 -0
  639. package/react/hooks/useFiveCameraDirection.d.ts +7 -0
  640. package/react/hooks/useFiveCameraRaycaster.d.ts +7 -0
  641. package/react/hooks/useFiveCurrentObserver.d.ts +11 -0
  642. package/react/hooks/useFiveCurrentState.d.ts +15 -0
  643. package/react/hooks/useFiveEventCallback.d.ts +12 -0
  644. package/react/hooks/useFiveFloor.d.ts +15 -0
  645. package/react/hooks/useFiveHelper.d.ts +14 -0
  646. package/react/hooks/useFiveModelBounding.d.ts +5 -0
  647. package/react/hooks/useFiveModelEffect.d.ts +14 -0
  648. package/react/hooks/useFiveModelIntersectRaycaster.d.ts +22 -0
  649. package/react/hooks/useFiveModelReadyState.d.ts +8 -0
  650. package/react/hooks/useFivePlugin.d.ts +22 -0
  651. package/react/hooks/useFiveProject2d.d.ts +21 -0
  652. package/react/hooks/useFiveSceneEffect.d.ts +21 -0
  653. package/react/hooks/useFiveState.d.ts +6 -0
  654. package/react/hooks/useFiveWork.d.ts +29 -0
  655. package/react/index.d.ts +28 -0
  656. package/react/index.js +255 -0
  657. package/react/index.mjs +896 -0
  658. package/react/withFive.d.ts +213 -0
  659. package/resource/basis/1.16/basis_transcoder.js +22 -0
  660. package/resource/basis/1.16/basis_transcoder.wasm +0 -0
  661. package/resource/basis/README.md +5 -0
  662. package/resource/draco/1.5.6/draco_decoder.js +34 -0
  663. package/resource/draco/1.5.6/draco_decoder.wasm +0 -0
  664. package/resource/draco/1.5.6/draco_decoder_gltf.js +33 -0
  665. package/resource/draco/1.5.6/draco_decoder_gltf.wasm +0 -0
  666. package/resource/draco/1.5.6/draco_encoder.js +35 -0
  667. package/resource/draco/1.5.6/draco_encoder.wasm +0 -0
  668. package/resource/draco/1.5.6/draco_encoder_wrapper.js +97 -0
  669. package/resource/draco/1.5.6/draco_wasm_wrapper.js +117 -0
  670. package/resource/draco/1.5.6/draco_wasm_wrapper_gltf.js +116 -0
  671. package/resource/draco/README.md +5 -0
  672. package/umd/five-plugins.js +255 -0
  673. package/umd/five-react.js +255 -0
  674. package/umd/five.js +1579 -0
@@ -0,0 +1,171 @@
1
+ import * as THREE from "three/webgpu";
2
+ import { Subscribe } from '../../utils/subscribe';
3
+ import type { PanoId } from '../../utils/pano';
4
+ import type { HDRCfgData } from '../../utils/hdr-data';
5
+ import type { ParameterValue } from '../parameter';
6
+ export type PBMPointCloudShaderType = 'pointcloud';
7
+ export type PBMAlphaMode = 'OPAQUE' | 'MASK' | 'BLEND';
8
+ export type PBMTransition = 'BLACK' | 'SPREAD' | 'FADE';
9
+ export type PBMFloorStyle = 'VISIBILITY' | 'OPACITY';
10
+ export type PBMColorStyle = 'RGB' | 'ALTITUDE' | 'CONSTANT';
11
+ export type PBMPointShape = 'SQUARE' | 'CIRCLE';
12
+ export type PBMPointSize = 'FIXED' | 'ATTENUATION';
13
+ export type PBMPointBack = 'VISIBLE' | 'HIDDEN' | 'DARK';
14
+ export declare class PBMUpdateable extends Subscribe<{
15
+ "update": () => void;
16
+ }> {
17
+ }
18
+ export interface PBMPanoFilterValue {
19
+ saturationSaturationBias: number;
20
+ contrastContrastBias: number;
21
+ highlightShadowLutMap: THREE.Texture;
22
+ colorTemperatureBias: number;
23
+ colorTintBias: number;
24
+ }
25
+ export declare class PBMPanoFilter extends PBMUpdateable {
26
+ readonly id: string;
27
+ /** 对比度 */
28
+ readonly contrast: {
29
+ /** 对比偏移 [-1, 1] */
30
+ contrastBias: number;
31
+ };
32
+ /** 饱和度 */
33
+ readonly saturation: {
34
+ /** 饱和偏移 [-1, 1] */
35
+ saturationBias: number;
36
+ };
37
+ /** 颜色 */
38
+ readonly color: {
39
+ /** 色温偏移 [-100, 100] */
40
+ temperatureBias: number;
41
+ /** 色調偏移 [-100, 100] */
42
+ tintBias: number;
43
+ };
44
+ /** 高光阴影 */
45
+ readonly highlightShadow: {
46
+ /** 高光偏移 [-255, 255] */
47
+ highlightBias: number;
48
+ /** 阴影偏移 [-255, 255] */
49
+ shadowBias: number;
50
+ /** 全局亮度偏移 [-255, 255] */
51
+ globalBias: number;
52
+ /** 高光阴影的颜色对照表 */
53
+ readonly lutMap: THREE.Texture;
54
+ };
55
+ /** 计算调色 LUT */
56
+ static computeLut(highlightBias: number, shadowBias: number, globalBias: number, width?: number, itemSize?: number, target?: Float32Array, offset?: number): Float32Array;
57
+ constructor();
58
+ toValue(): PBMPanoFilterValue;
59
+ }
60
+ export interface PBMClipperParameter {
61
+ clippingBoxMatrix: THREE.Matrix4;
62
+ floorIndex?: number;
63
+ }
64
+ export interface PBMPanoPicture {
65
+ /** 点位 Id */
66
+ panoId: PanoId;
67
+ /** 全景图 */
68
+ map: THREE.CubeTexture;
69
+ /** 图片直方图 peak mean min max */
70
+ mapHistogram: THREE.Vector4;
71
+ /** 图片尺寸 */
72
+ mapSize: number;
73
+ /** 全景图变换矩阵 4x4 */
74
+ matrix: THREE.Matrix4;
75
+ /** 缩放 */
76
+ zoom: number;
77
+ hdrConfig?: PBMHDRConfig;
78
+ }
79
+ export interface PBMHDRConfig extends HDRCfgData {
80
+ map: THREE.CubeTexture;
81
+ }
82
+ export interface PBMPanoDepth {
83
+ /** 点位 Id */
84
+ panoId: PanoId;
85
+ /** 深度图 */
86
+ map: THREE.CubeTexture;
87
+ /** 图片尺寸 */
88
+ mapSize: number;
89
+ /** 图片最大深度 */
90
+ maxDepth: number;
91
+ }
92
+ export interface PBMRefinedScreen {
93
+ projectionMatrix: THREE.Matrix4;
94
+ matrixInverse: THREE.Matrix4;
95
+ map: THREE.Texture | null;
96
+ pano: number;
97
+ opacity: number;
98
+ }
99
+ export interface IPBMMaterial {
100
+ readonly isPBMMaterial: true;
101
+ flatShading: boolean;
102
+ pano0Map: THREE.CubeTexture | null;
103
+ pano0MapSize: number;
104
+ pano0Histogram: THREE.Vector4;
105
+ pano0Matrix: THREE.Matrix4;
106
+ pano0Zoom: number;
107
+ pano0GainMap: THREE.CubeTexture | null;
108
+ pano0HdrMaxContentBoost: number;
109
+ pano0HdrMinContentBoost: number;
110
+ pano0HdrCapacityMin: number;
111
+ pano0HdrCapacityMax: number;
112
+ pano0HdrGamma: number;
113
+ pano0DepthMap: THREE.CubeTexture | null;
114
+ pano0DepthMaxDepth: number;
115
+ pano1Map: THREE.CubeTexture | null;
116
+ pano1MapSize: number;
117
+ pano1Histogram: THREE.Vector4;
118
+ pano1Matrix: THREE.Matrix4;
119
+ pano1Zoom: number;
120
+ pano1GainMap: THREE.CubeTexture | null;
121
+ pano1HdrMaxContentBoost: number;
122
+ pano1HdrMinContentBoost: number;
123
+ pano1HdrCapacityMin: number;
124
+ pano1HdrCapacityMax: number;
125
+ pano1HdrGamma: number;
126
+ pano1DepthMap: THREE.CubeTexture | null;
127
+ pano1DepthMaxDepth: number;
128
+ panoFilterSaturationBias: number;
129
+ panoFilterContrastBias: number;
130
+ panoFilterLutMap: THREE.Texture | null;
131
+ panoFilterTemperatureBias: number;
132
+ panoFilterTintBias: number;
133
+ refinedScreenMap: THREE.Texture | null;
134
+ refinedScreenProjectionMatrix: THREE.Matrix4;
135
+ refinedScreenMatrixInverse: THREE.Matrix4;
136
+ refinedScreenOpacity: number;
137
+ refinedScreenPano: number;
138
+ pointSize: PBMPointSize;
139
+ pointShape: PBMPointShape;
140
+ pointBack: PBMPointBack;
141
+ pointScale: number;
142
+ pointMinPixel: number;
143
+ pointMaxPixel: number;
144
+ vertexMarks: boolean;
145
+ colorAlpha: number;
146
+ alphaMode: string;
147
+ modelAlpha: number;
148
+ progress: number;
149
+ transition: PBMTransition;
150
+ colorStyle: PBMColorStyle;
151
+ constantColor: THREE.Vector3;
152
+ floorIndex: number;
153
+ shownFloorIndex: number;
154
+ floorStyle: string;
155
+ brightness: number;
156
+ colorSaturation: number;
157
+ colorBrightness: number;
158
+ gradientTexture: THREE.Texture | null;
159
+ useHDR: boolean;
160
+ maxDisplayBoost: number;
161
+ modelBoundingMin: THREE.Vector3;
162
+ modelBoundingMax: THREE.Vector3;
163
+ }
164
+ export type PBMPropertyKey = keyof Omit<IPBMMaterial, 'isPBMMaterial'>;
165
+ export declare const pbmProperties: PBMPropertyKey[];
166
+ export declare function createDefaultPBMProperties(): Omit<IPBMMaterial, 'isPBMMaterial' | 'flatShading'>;
167
+ /** 复制 PBM 扩展属性 */
168
+ export declare function copyPBMProperties(target: IPBMMaterial, source: IPBMMaterial): void;
169
+ /** 类型守卫 */
170
+ export declare function isPBMMaterial(obj: any): obj is IPBMMaterial;
171
+ export declare function assignPBMMaterialFromParameterValue(material: IPBMMaterial & THREE.Material, parameterValue: ParameterValue): void;
@@ -0,0 +1,6 @@
1
+ import * as THREE from 'three/webgpu';
2
+ /**
3
+ * 注册 PBM 材质到渲染器的 NodeLibrary。
4
+ * 应在渲染前调用一次。
5
+ */
6
+ export declare function registerPBMMaterials(renderer: THREE.WebGPURenderer): void;
@@ -0,0 +1,57 @@
1
+ /**
2
+ * pbmMeshMaterial.ts — PBM 材质统一入口
3
+ *
4
+ * 导出传统材质类(业务层使用)和注册函数。
5
+ * 使用方式:
6
+ * import { PBMMeshBasicMaterial, registerPBMMaterials } from './pbmMeshMaterial';
7
+ * registerPBMMaterials(renderer);
8
+ * const material = new PBMMeshBasicMaterial();
9
+ */
10
+ import * as THREE from 'three/webgpu';
11
+ import { type IPBMMaterial } from './pbmMaterial';
12
+ export type PBMMeshShaderType = 'panoOnly' | 'basic' | 'phong' | 'standard';
13
+ export interface PBMMeshBasicMaterial extends THREE.MeshBasicMaterial, IPBMMaterial {
14
+ }
15
+ export declare class PBMMeshBasicMaterial extends THREE.MeshBasicMaterial implements IPBMMaterial {
16
+ readonly isPBMMaterial = true;
17
+ readonly shaderType = "baisc";
18
+ constructor(parameters?: THREE.MeshBasicMaterialParameters);
19
+ copy(source: PBMMeshBasicMaterial): this;
20
+ }
21
+ export interface PBMMeshPanoOnlyMaterial extends THREE.MeshBasicMaterial, IPBMMaterial {
22
+ }
23
+ export declare class PBMMeshPanoOnlyMaterial extends THREE.MeshBasicMaterial implements IPBMMaterial {
24
+ readonly isPBMMaterial = true;
25
+ readonly shaderType = "panoOnly";
26
+ constructor(parameters?: THREE.MeshBasicMaterialParameters);
27
+ copy(source: PBMMeshPanoOnlyMaterial): this;
28
+ }
29
+ export interface PBMMeshPhongMaterial extends THREE.MeshPhongMaterial, IPBMMaterial {
30
+ }
31
+ export declare class PBMMeshPhongMaterial extends THREE.MeshPhongMaterial implements IPBMMaterial {
32
+ readonly isPBMMaterial = true;
33
+ readonly shaderType = "phong";
34
+ constructor(parameters?: THREE.MeshPhongMaterialParameters);
35
+ copy(source: PBMMeshPhongMaterial): this;
36
+ }
37
+ export interface PBMMeshPhysicalMaterial extends THREE.MeshPhysicalMaterial, IPBMMaterial {
38
+ }
39
+ export declare class PBMMeshPhysicalMaterial extends THREE.MeshPhysicalMaterial implements IPBMMaterial {
40
+ readonly isPBMMaterial: true;
41
+ readonly shaderType = "standard";
42
+ constructor(parameters?: THREE.MeshPhysicalMaterialParameters);
43
+ copy(source: PBMMeshPhysicalMaterial): this;
44
+ }
45
+ export type PBMMeshMaterial = PBMMeshBasicMaterial | PBMMeshPhongMaterial | PBMMeshPhysicalMaterial | PBMMeshPanoOnlyMaterial;
46
+ export declare function createPBMMeshMaterial(shaderType?: PBMMeshShaderType | {
47
+ shaderType?: PBMMeshShaderType;
48
+ }): PBMMeshMaterial;
49
+ export interface PBMPointCloudMaterial extends THREE.Material, IPBMMaterial {
50
+ }
51
+ export declare class PBMPointCloudMaterial extends THREE.Material implements IPBMMaterial {
52
+ readonly isPBMMaterial: true;
53
+ readonly shaderType = "standard";
54
+ constructor();
55
+ copy(source: PBMPointCloudMaterial): this;
56
+ }
57
+ export declare function createPBMPointCloudMaterial(): PBMPointCloudMaterial;
@@ -0,0 +1,20 @@
1
+ /**
2
+ * pbmMeshMaterial.ts — PBM 材质统一入口
3
+ *
4
+ * 导出传统材质类(业务层使用)和注册函数。
5
+ * 使用方式:
6
+ * import { PBMMeshBasicMaterial, registerPBMMaterials } from './pbmMeshMaterial';
7
+ * registerPBMMaterials(renderer);
8
+ * const material = new PBMMeshBasicMaterial();
9
+ */
10
+ import * as THREE from 'three/webgpu';
11
+ import { type IPBMMaterial } from './pbmMaterial';
12
+ export interface PBMPointCloudMaterial extends THREE.Material, IPBMMaterial {
13
+ }
14
+ export declare class PBMPointCloudMaterial extends THREE.Material implements IPBMMaterial {
15
+ readonly isPBMMaterial: true;
16
+ readonly shaderType = "standard";
17
+ constructor();
18
+ copy(source: PBMPointCloudMaterial): this;
19
+ }
20
+ export declare function createPBMPointCloudMaterial(): PBMPointCloudMaterial;
@@ -0,0 +1,46 @@
1
+ /**
2
+ * PBMPointCloudNodeMaterial — 点云 NodeMaterial (TSL billboard quad)
3
+ *
4
+ * WebGPU 不支持可变大小点图元,因此采用实例化四边形方案:
5
+ * 每个点渲染为一个面向相机的 billboard quad,在顶点阶段完成展开。
6
+ *
7
+ * 配合 PBMPointCloud (THREE.Mesh + InstancedBufferGeometry) 使用。
8
+ * 几何体中 instancePosition/instanceColor/instanceNormal 由 PBMPointCloud 自动生成。
9
+ */
10
+ import * as THREE from 'three/webgpu';
11
+ import type { PBMColorStyle, PBMFloorStyle, PBMPointShape, PBMPointSize, PBMPointBack } from './pbmMaterial';
12
+ export declare class PBMPointCloudNodeMaterial extends THREE.NodeMaterial {
13
+ readonly isPBMPointCloudMaterial: true;
14
+ pointSizeMode: PBMPointSize;
15
+ pointShape: PBMPointShape;
16
+ pointBack: PBMPointBack;
17
+ colorStyle: PBMColorStyle;
18
+ floorStyle: PBMFloorStyle;
19
+ vertexMarks: boolean;
20
+ pointScale: number;
21
+ pointMinPixel: number;
22
+ pointMaxPixel: number;
23
+ modelAlpha: number;
24
+ opacity: number;
25
+ constantColor: THREE.Vector3;
26
+ floorIndex: number;
27
+ shownFloorIndex: number;
28
+ brightness: number;
29
+ colorSaturation: number;
30
+ colorBrightness: number;
31
+ outlineGain: number;
32
+ distanceGain: number;
33
+ modelBoundingMin: THREE.Vector3;
34
+ modelBoundingMax: THREE.Vector3;
35
+ flatShading: boolean;
36
+ private _gradientTexture;
37
+ get gradientTexture(): THREE.Texture | null;
38
+ set gradientTexture(v: THREE.Texture | null);
39
+ constructor();
40
+ customProgramCacheKey(): string;
41
+ setupVertex(_builder: THREE.NodeBuilder): THREE.Node<"vec4">;
42
+ setup(builder: THREE.NodeBuilder): void;
43
+ private _buildColorNode;
44
+ private _buildOutputNode;
45
+ copy(source: PBMPointCloudNodeMaterial): this;
46
+ }
@@ -0,0 +1,9 @@
1
+ /**
2
+ * colorFilter.ts — 全景图滤镜管线(HSL、色温、对比度、LUT)
3
+ */
4
+ import * as THREE from 'three/webgpu';
5
+ export declare const filterColorTemperature: THREE.TSL.FnNode<[number | THREE.Node, number | THREE.Node], THREE.Node<"vec3">>;
6
+ export declare const filterColorTint: THREE.TSL.FnNode<[number | THREE.Node, number | THREE.Node], THREE.Node<"vec3">>;
7
+ export declare const filterContrast: THREE.TSL.FnNode<[number | THREE.Node, number | THREE.Node, number | THREE.Node], THREE.Node<"vec3">>;
8
+ export declare const filterSaturation: THREE.TSL.FnNode<[number | THREE.Node, number | THREE.Node], THREE.Node<"vec3">>;
9
+ export declare function colorFilter(saturationBias: THREE.Node<'float'>, contrastBias: THREE.Node<'float'>, temperatureBias: THREE.Node<'float'>, tintBias: THREE.Node<'float'>, lutSampler: (uv: THREE.Node<'vec2'>) => THREE.Node<'vec4'>): THREE.TSL.FnNode<[number | THREE.Node, number | THREE.Node], THREE.VarNode<"vec3">>;
@@ -0,0 +1,68 @@
1
+ import * as THREE from 'three/webgpu';
2
+ export declare const TRANSPARENT: THREE.ConstNode<"vec4", THREE.Vector4>;
3
+ export declare const resolution: THREE.UniformNode<"vec2", THREE.Vector2>;
4
+ export declare const pixelRatio: THREE.UniformNode<"float", number>;
5
+ export declare const vCameraDirection: THREE.VaryingNode<"vec3">;
6
+ export declare const vRoofMark: THREE.VaryingNode<"float">;
7
+ export declare const progress: THREE.Node<"float">;
8
+ export declare const maxDisplayBoost: THREE.Node<"float">;
9
+ export declare const modelAlpha: THREE.Node<"float">;
10
+ export declare const pano0Matrix: THREE.Node<"mat4">;
11
+ export declare const pano0Zoom: THREE.Node<"float">;
12
+ export declare const pano0Histogram: THREE.Node<"vec4">;
13
+ export declare const pano0HdrMaxContentBoost: THREE.Node<"float">;
14
+ export declare const pano0HdrMinContentBoost: THREE.Node<"float">;
15
+ export declare const pano0HdrCapacityMin: THREE.Node<"float">;
16
+ export declare const pano0HdrCapacityMax: THREE.Node<"float">;
17
+ export declare const pano0HdrGamma: THREE.Node<"float">;
18
+ export declare const pano0DepthMaxDepth: THREE.Node<"float">;
19
+ export declare const pano1Matrix: THREE.Node<"mat4">;
20
+ export declare const pano1Zoom: THREE.Node<"float">;
21
+ export declare const pano1Histogram: THREE.Node<"vec4">;
22
+ export declare const pano1HdrMaxContentBoost: THREE.Node<"float">;
23
+ export declare const pano1HdrMinContentBoost: THREE.Node<"float">;
24
+ export declare const pano1HdrCapacityMin: THREE.Node<"float">;
25
+ export declare const pano1HdrCapacityMax: THREE.Node<"float">;
26
+ export declare const pano1HdrGamma: THREE.Node<"float">;
27
+ export declare const pano1DepthMaxDepth: THREE.Node<"float">;
28
+ export declare const panoFilterSaturationBias: THREE.Node<"float">;
29
+ export declare const panoFilterContrastBias: THREE.Node<"float">;
30
+ export declare const panoFilterTemperatureBias: THREE.Node<"float">;
31
+ export declare const panoFilterTintBias: THREE.Node<"float">;
32
+ export declare const refinedScreenProjectionMatrix: THREE.Node<"mat4">;
33
+ export declare const refinedScreenMatrixInverse: THREE.Node<"mat4">;
34
+ export declare const refinedScreenOpacity: THREE.Node<"float">;
35
+ export declare const refinedScreenPano: THREE.Node<"float">;
36
+ export declare const colorAlpha: THREE.Node<"float">;
37
+ export declare const brightness: THREE.Node<"float">;
38
+ export declare const floorIndex: THREE.Node<"float">;
39
+ export declare const shownFloorIndex: THREE.Node<"float">;
40
+ export declare const modelBoundingMin: THREE.Node<"vec3">;
41
+ export declare const modelBoundingMax: THREE.Node<"vec3">;
42
+ export declare const constantColor: THREE.Node<"vec3">;
43
+ export declare const pointScale: THREE.Node<"float">;
44
+ export declare const pointMinPixel: THREE.Node<"float">;
45
+ export declare const pointMaxPixel: THREE.Node<"float">;
46
+ export declare const colorSaturation: THREE.Node<"float">;
47
+ export declare const colorBrightness: THREE.Node<"float">;
48
+ export declare const isCurrentFloor: THREE.VarNode<"bool">;
49
+ export declare const isRoof: THREE.VarNode<"bool">;
50
+ export declare const isRoofCut: THREE.VarNode<"bool">;
51
+ export declare const pano0Origin: THREE.VarNode<"vec3">;
52
+ export declare const pano0SampleDirection: THREE.VarNode<"vec3">;
53
+ export declare const pano1Origin: THREE.VarNode<"vec3">;
54
+ export declare const pano1SampleDirection: THREE.VarNode<"vec3">;
55
+ export declare const pano0SdrColor: THREE.VarNode<"vec3">;
56
+ export declare const pano1SdrColor: THREE.VarNode<"vec3">;
57
+ export declare const pano0GainColor: THREE.VarNode<"vec3">;
58
+ export declare const pano1GainColor: THREE.VarNode<"vec3">;
59
+ export declare const pano0HdrColor: THREE.VarNode<"vec3">;
60
+ export declare const pano1HdrColor: THREE.VarNode<"vec3">;
61
+ export declare const refinedScreenPano0Color: THREE.VarNode<"vec4">;
62
+ export declare const refinedScreenPano1Color: THREE.VarNode<"vec4">;
63
+ export declare const pano0DepthTrust: THREE.VarNode<"float">;
64
+ export declare const pano1DepthTrust: THREE.VarNode<"float">;
65
+ export declare const gradientColor: THREE.VarNode<"vec3">;
66
+ export declare const floorOpacity: THREE.VarNode<"float">;
67
+ export declare const pano0Color: THREE.VarNode<"vec3">;
68
+ export declare const pano1Color: THREE.VarNode<"vec3">;
@@ -0,0 +1,12 @@
1
+ /**
2
+ * nodeTypes.ts — TSL node 类型别名 + 类型化辅助函数
3
+ */
4
+ import * as THREE from 'three/webgpu';
5
+ export declare function safeFloatAttribute(name: string, defaultValue?: number): THREE.Node<'float'>;
6
+ export declare function mrFloat(name: string): THREE.Node<'float'>;
7
+ export declare function mrVec3(name: string): THREE.Node<'vec3'>;
8
+ export declare function mrVec4(name: string): THREE.Node<'vec4'>;
9
+ export declare function mrMat4(name: string): THREE.Node<'mat4'>;
10
+ export declare function mrCubeTexture(name: string, uvNode: THREE.Node<"vec3">): THREE.Node<"vec4">;
11
+ /** 创建一个带自定义 uvNode 的 texture materialReference */
12
+ export declare function mrTexture(name: string, uvNode: THREE.Node<"vec2">): THREE.Node<"vec4">;
@@ -0,0 +1,26 @@
1
+ /**
2
+ * panoOutputBuilder.ts — 全景渲染输出组装
3
+ *
4
+ * 核心功能:全景采样 + HDR + RS + filter + depth + transition 输出组装,
5
+ * 以及 pano 特有的渲染函数(zoomVector, cameraDirection, roofMark,
6
+ * discardNode, colorNode, opacityNode 等)。
7
+ * 通用工具函数(rgb2hsv, hsv2rgb, resolutionUniform, pixelRatioUniform)在 utils.ts 中。
8
+ */
9
+ import * as THREE from 'three/webgpu';
10
+ import type { PBMTransition, PBMColorStyle } from '../pbmMaterial';
11
+ import { IPBMMaterial } from '../pbmMaterial';
12
+ export interface SetupPanoOutputOptions {
13
+ useVertexMark: boolean;
14
+ useFloorStyleVisibility: boolean;
15
+ useGradientTexture: boolean;
16
+ useRefinedScreen: boolean;
17
+ usePanoFilter: boolean;
18
+ usePanoDepth: boolean;
19
+ useHDR: boolean;
20
+ colorMode: PBMColorStyle;
21
+ transition: PBMTransition;
22
+ }
23
+ export declare function setupMeshOutput(material: THREE.NodeMaterial & IPBMMaterial, builder: THREE.NodeBuilder): void;
24
+ export declare function setupMeshPanoOnlyOutput(material: THREE.NodeMaterial & IPBMMaterial, builder: THREE.NodeBuilder): void;
25
+ export declare function setupPointCloudVertex(material: THREE.NodeMaterial & THREE.Material & IPBMMaterial, builder: THREE.NodeBuilder): THREE.Node;
26
+ export declare function setupPointCloudOutput(material: THREE.NodeMaterial & IPBMMaterial, builder: THREE.NodeBuilder): void;
@@ -0,0 +1,17 @@
1
+ /**
2
+ * panoOutputBuilder.ts — 全景渲染输出组装
3
+ *
4
+ * 核心功能:全景采样 + HDR + RS + filter + depth + transition 输出组装,
5
+ * 以及 pano 特有的渲染函数(zoomVector, cameraDirection, roofMark,
6
+ * discardNode, colorNode, opacityNode 等)。
7
+ * 通用工具函数(rgb2hsv, hsv2rgb, resolutionUniform, pixelRatioUniform)在 utils.ts 中。
8
+ */
9
+ import * as THREE from 'three/webgpu';
10
+ import type { PBMTransition } from '../pbmMaterial';
11
+ export declare function panoColor(options: {
12
+ transition: PBMTransition;
13
+ usePanoFilter: boolean;
14
+ useRefinedScreen: boolean;
15
+ useHDR: boolean;
16
+ usePanoDepth: boolean;
17
+ }): THREE.TSL.FnNode<[number | THREE.Node], THREE.VarNode<"vec3">>;
@@ -0,0 +1,8 @@
1
+ /**
2
+ * colorFilter.ts — 全景图滤镜管线(HSL、色温、对比度、LUT)
3
+ */
4
+ import * as THREE from 'three/webgpu';
5
+ import type { PBMTransition } from '../pbmMaterial';
6
+ export declare function panoTransition(options: {
7
+ transition: PBMTransition;
8
+ }): THREE.TSL.FnNode<[number | THREE.Node, number | THREE.Node, number | THREE.Node], THREE.VarNode<"vec3">>;
@@ -0,0 +1,11 @@
1
+ /**
2
+ * utils.ts — 通用 TSL 工具函数
3
+ */
4
+ import * as THREE from 'three/webgpu';
5
+ export declare const rgb2hsv: THREE.TSL.FnNode<[number | THREE.Node], THREE.Node<"vec3">>;
6
+ export declare const hsv2rgb: THREE.TSL.FnNode<[number | THREE.Node], THREE.Node<"vec3">>;
7
+ export declare const unpackRGBAToDepth: THREE.TSL.FnNode<[number | THREE.Node], THREE.Node<"float">>;
8
+ export declare const hdrBoost: THREE.TSL.FnNode<[number | THREE.Node, number | THREE.Node, number | THREE.Node, number | THREE.Node, number | THREE.Node, number | THREE.Node, number | THREE.Node], THREE.Node<"vec3">>;
9
+ export declare const zoomVector: THREE.TSL.FnNode<[number | THREE.Node, number | THREE.Node, number | THREE.Node], THREE.Node<"vec3">>;
10
+ /** 计算全景采样方向:用 mat4 矩阵右乘方向向量 (w=0) 得到旋转后的方向 */
11
+ export declare const sampleDirection: THREE.TSL.FnNode<[number | THREE.Node, number | THREE.Node, number | THREE.Node, number | THREE.Node], THREE.Node<"vec3">>;
@@ -0,0 +1,172 @@
1
+ import * as THREE from 'three/webgpu';
2
+ import { Parameter, ParameterValue } from './parameter';
3
+ import { Model } from './model';
4
+ import { type ViewLayer } from './view-layer';
5
+ import { type ParameterTilesetValue } from './parameter';
6
+ import { type TextureOptions } from "../types/imageOptions";
7
+ import { type Works } from '../work';
8
+ import { type Camera } from '../core/camera';
9
+ import { type Intersection } from './intersection';
10
+ import { type BoundingVolume, type BoundingVolumeJson } from '../utils/volume';
11
+ import { BoundingMesh } from "../meshes/boundingMesh";
12
+ export interface ModelOptions {
13
+ /** 模型是否感光 */
14
+ light?: boolean;
15
+ /** 模型 3d-tile 参数 */
16
+ "3d-tiles"?: (Partial<ParameterTilesetValue> & {
17
+ viewerRequestVolume?: BoundingVolume | BoundingVolumeJson;
18
+ showLayers?: boolean | string[];
19
+ }) | ((viewLayer: ViewLayer, model: Model) => void | (Partial<ParameterTilesetValue> & {
20
+ viewerRequestVolume?: BoundingVolume | BoundingVolumeJson;
21
+ showLayers?: boolean | string[];
22
+ }));
23
+ /**
24
+ * 模型贴图的配置参数
25
+ * @description
26
+ * 可以动态对配置在 `work` 数据中的模型贴图在 runtime 做 url 调整。
27
+ * 平衡加载时间和图片质量
28
+ */
29
+ textureOptions?: TextureOptions;
30
+ /** 强制显示模型,不等待加载完 */
31
+ forceReplaceImmediately?: boolean;
32
+ }
33
+ export type Models = Model[] & {
34
+ /**
35
+ * @deprecated
36
+ * use `modelScene.autoRefine` instead
37
+ */
38
+ autoUpdate: boolean;
39
+ /**
40
+ * @deprecated
41
+ * use `modelScene.boundingBox` instead
42
+ */
43
+ bounding: THREE.Box3;
44
+ /**
45
+ * @deprecated
46
+ * use `modelScene.loaded` instead
47
+ */
48
+ loaded: boolean;
49
+ /**
50
+ * @deprecated
51
+ * use `modelScene.refined` instead
52
+ */
53
+ refined: boolean;
54
+ /**
55
+ * @deprecated
56
+ * use `modelScene.refineProgress` instead
57
+ */
58
+ refineProgress: [number, number];
59
+ /**
60
+ * @deprecated
61
+ * use `modelScene.parameter.cacheCameras` `modelScene.parameter.set('cacheCameras', cacheCameras)` instead
62
+ */
63
+ cacheCameras: readonly (THREE.PerspectiveCamera | Camera)[];
64
+ /**
65
+ * @deprecated
66
+ * use `modelScene.intersectRaycaster` instead
67
+ */
68
+ intersectRaycaster(raycaster: THREE.Raycaster): Intersection[];
69
+ /**
70
+ * @deprecated
71
+ * Use `.parameter.set` instead
72
+ */
73
+ setMaterial(values: Partial<ParameterValue>): void;
74
+ /**
75
+ * @deprecated
76
+ * Use `.parameter.get` instead
77
+ */
78
+ getMaterial(): ParameterValue;
79
+ /**
80
+ * @deprecated
81
+ * Use `.parameter.reset('brightness')` instead
82
+ */
83
+ resetBrightness(): void;
84
+ };
85
+ export interface ModelScene {
86
+ dispatchEvent(event: {
87
+ type: 'model.create';
88
+ model: Model;
89
+ }): void;
90
+ dispatchEvent(event: {
91
+ type: 'model.dispose';
92
+ model: Model;
93
+ }): void;
94
+ dispatchEvent(event: {
95
+ type: string;
96
+ [attachment: string]: any;
97
+ }): void;
98
+ addEventListener(type: 'model.create', listener: (event: THREE.Event & {
99
+ type: 'model.create';
100
+ model: Model;
101
+ }) => void): void;
102
+ addEventListener(type: 'model.dispose', listener: (event: THREE.Event & {
103
+ type: 'model.dispose';
104
+ model: Model;
105
+ }) => void): void;
106
+ addEventListener(type: string, listener: (event: THREE.Event) => void): void;
107
+ removeEventListener(type: 'model.create', listener: (event: THREE.Event & {
108
+ type: 'model.create';
109
+ model: Model;
110
+ }) => void): void;
111
+ removeEventListener(type: 'model.dispose', listener: (event: THREE.Event & {
112
+ type: 'model.dispose';
113
+ model: Model;
114
+ }) => void): void;
115
+ removeEventListener(type: string, listener: (event: THREE.Event) => void): void;
116
+ }
117
+ export declare class ModelScene extends THREE.Scene {
118
+ fiveId: string;
119
+ needsRender: boolean;
120
+ /** 自动细化 */
121
+ autoRefine: boolean;
122
+ /** 包围盒 */
123
+ boundingBox: THREE.Box3;
124
+ /** 包围盒 Mesh */
125
+ boundingMesh: BoundingMesh;
126
+ /** 加载完成 */
127
+ loaded: boolean;
128
+ /** 细化完成 */
129
+ refined: boolean;
130
+ /** 细化进度 */
131
+ refineProgress: [number, number];
132
+ /** 参数 */
133
+ parameter: Parameter;
134
+ /** 模型列表 */
135
+ readonly models: Models;
136
+ private readonly shownModels;
137
+ private updateModelMap;
138
+ constructor(options: {
139
+ fiveId: string;
140
+ });
141
+ setModels(works: Works, options: ModelOptions): Model[];
142
+ get empty(): boolean;
143
+ /**
144
+ * 计算模型射线碰撞检测
145
+ * @param raycaster - THREE 射线对象
146
+ * @param target - 返回碰撞点
147
+ * @returns 返回碰撞点
148
+ */
149
+ intersectRaycaster(raycaster: THREE.Raycaster, target?: Intersection[]): Intersection[];
150
+ update(renderer: THREE.WebGPURenderer, camera: Camera): boolean;
151
+ /**
152
+ * @deprecated
153
+ * Use `.boundingBox` instead
154
+ */
155
+ get bounding(): THREE.Box3;
156
+ /**
157
+ * @deprecated
158
+ * Use `.parameter.set` instead
159
+ */
160
+ setMaterial(parameter: Partial<ParameterValue>): void;
161
+ /**
162
+ * @deprecated
163
+ * Use `.parameter.get` instead
164
+ */
165
+ getMaterial(): ParameterValue;
166
+ /**
167
+ * @deprecated
168
+ * Use `.parameter.reset('brightness')` instead
169
+ */
170
+ resetBrightness(): void;
171
+ dispose(): void;
172
+ }