index.d.ts 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408
  1. declare module 'babylonjs/actions' {
  2. class Condition {
  3. _actionManager: ActionManager;
  4. _evaluationId: number;
  5. _currentResult: boolean;
  6. constructor(actionManager: ActionManager);
  7. isValid(): boolean;
  8. _getProperty(propertyPath: string): string;
  9. _getEffectiveTarget(target: any, propertyPath: string): any;
  10. serialize(): any;
  11. protected _serialize(serializedCondition: any): any;
  12. }
  13. class ValueCondition extends Condition {
  14. propertyPath: string;
  15. value: any;
  16. operator: number;
  17. private static _IsEqual;
  18. private static _IsDifferent;
  19. private static _IsGreater;
  20. private static _IsLesser;
  21. static readonly IsEqual: number;
  22. static readonly IsDifferent: number;
  23. static readonly IsGreater: number;
  24. static readonly IsLesser: number;
  25. _actionManager: ActionManager;
  26. private _target;
  27. private _effectiveTarget;
  28. private _property;
  29. constructor(actionManager: ActionManager, target: any, propertyPath: string, value: any, operator?: number);
  30. isValid(): boolean;
  31. serialize(): any;
  32. static GetOperatorName(operator: number): string;
  33. }
  34. class PredicateCondition extends Condition {
  35. predicate: () => boolean;
  36. _actionManager: ActionManager;
  37. constructor(actionManager: ActionManager, predicate: () => boolean);
  38. isValid(): boolean;
  39. }
  40. class StateCondition extends Condition {
  41. value: string;
  42. _actionManager: ActionManager;
  43. private _target;
  44. constructor(actionManager: ActionManager, target: any, value: string);
  45. isValid(): boolean;
  46. serialize(): any;
  47. }
  48. }
  49. declare module 'babylonjs/actions' {
  50. class Action {
  51. triggerOptions: any;
  52. trigger: number;
  53. _actionManager: ActionManager;
  54. private _nextActiveAction;
  55. private _child;
  56. private _condition?;
  57. private _triggerParameter;
  58. onBeforeExecuteObservable: Observable<Action>;
  59. constructor(triggerOptions: any, condition?: Condition);
  60. _prepare(): void;
  61. getTriggerParameter(): any;
  62. _executeCurrent(evt?: ActionEvent): void;
  63. execute(evt?: ActionEvent): void;
  64. skipToNextActiveAction(): void;
  65. then(action: Action): Action;
  66. _getProperty(propertyPath: string): string;
  67. _getEffectiveTarget(target: any, propertyPath: string): any;
  68. serialize(parent: any): any;
  69. protected _serialize(serializedAction: any, parent?: any): any;
  70. static _SerializeValueAsString: (value: any) => string;
  71. static _GetTargetProperty: (target: Node | Scene) => {
  72. name: string;
  73. targetType: string;
  74. value: string;
  75. };
  76. }
  77. }
  78. declare module 'babylonjs/actions' {
  79. /**
  80. * ActionEvent is the event beint sent when an action is triggered.
  81. */
  82. class ActionEvent {
  83. source: any;
  84. pointerX: number;
  85. pointerY: number;
  86. meshUnderPointer: Nullable<AbstractMesh>;
  87. sourceEvent: any;
  88. additionalData: any;
  89. /**
  90. * @param source The mesh or sprite that triggered the action.
  91. * @param pointerX The X mouse cursor position at the time of the event
  92. * @param pointerY The Y mouse cursor position at the time of the event
  93. * @param meshUnderPointer The mesh that is currently pointed at (can be null)
  94. * @param sourceEvent the original (browser) event that triggered the ActionEvent
  95. */
  96. constructor(source: any, pointerX: number, pointerY: number, meshUnderPointer: Nullable<AbstractMesh>, sourceEvent?: any, additionalData?: any);
  97. /**
  98. * Helper function to auto-create an ActionEvent from a source mesh.
  99. * @param source The source mesh that triggered the event
  100. * @param evt {Event} The original (browser) event
  101. */
  102. static CreateNew(source: AbstractMesh, evt?: Event, additionalData?: any): ActionEvent;
  103. /**
  104. * Helper function to auto-create an ActionEvent from a source mesh.
  105. * @param source The source sprite that triggered the event
  106. * @param scene Scene associated with the sprite
  107. * @param evt {Event} The original (browser) event
  108. */
  109. static CreateNewFromSprite(source: Sprite, scene: Scene, evt?: Event, additionalData?: any): ActionEvent;
  110. /**
  111. * Helper function to auto-create an ActionEvent from a scene. If triggered by a mesh use ActionEvent.CreateNew
  112. * @param scene the scene where the event occurred
  113. * @param evt {Event} The original (browser) event
  114. */
  115. static CreateNewFromScene(scene: Scene, evt: Event): ActionEvent;
  116. static CreateNewFromPrimitive(prim: any, pointerPos: Vector2, evt?: Event, additionalData?: any): ActionEvent;
  117. }
  118. /**
  119. * Action Manager manages all events to be triggered on a given mesh or the global scene.
  120. * A single scene can have many Action Managers to handle predefined actions on specific meshes.
  121. */
  122. class ActionManager {
  123. private static _NothingTrigger;
  124. private static _OnPickTrigger;
  125. private static _OnLeftPickTrigger;
  126. private static _OnRightPickTrigger;
  127. private static _OnCenterPickTrigger;
  128. private static _OnPickDownTrigger;
  129. private static _OnDoublePickTrigger;
  130. private static _OnPickUpTrigger;
  131. private static _OnLongPressTrigger;
  132. private static _OnPointerOverTrigger;
  133. private static _OnPointerOutTrigger;
  134. private static _OnEveryFrameTrigger;
  135. private static _OnIntersectionEnterTrigger;
  136. private static _OnIntersectionExitTrigger;
  137. private static _OnKeyDownTrigger;
  138. private static _OnKeyUpTrigger;
  139. private static _OnPickOutTrigger;
  140. static readonly NothingTrigger: number;
  141. static readonly OnPickTrigger: number;
  142. static readonly OnLeftPickTrigger: number;
  143. static readonly OnRightPickTrigger: number;
  144. static readonly OnCenterPickTrigger: number;
  145. static readonly OnPickDownTrigger: number;
  146. static readonly OnDoublePickTrigger: number;
  147. static readonly OnPickUpTrigger: number;
  148. static readonly OnPickOutTrigger: number;
  149. static readonly OnLongPressTrigger: number;
  150. static readonly OnPointerOverTrigger: number;
  151. static readonly OnPointerOutTrigger: number;
  152. static readonly OnEveryFrameTrigger: number;
  153. static readonly OnIntersectionEnterTrigger: number;
  154. static readonly OnIntersectionExitTrigger: number;
  155. static readonly OnKeyDownTrigger: number;
  156. static readonly OnKeyUpTrigger: number;
  157. static Triggers: {
  158. [key: string]: number;
  159. };
  160. actions: Action[];
  161. hoverCursor: string;
  162. private _scene;
  163. constructor(scene: Scene);
  164. dispose(): void;
  165. getScene(): Scene;
  166. /**
  167. * Does this action manager handles actions of any of the given triggers
  168. * @param {number[]} triggers - the triggers to be tested
  169. * @return {boolean} whether one (or more) of the triggers is handeled
  170. */
  171. hasSpecificTriggers(triggers: number[]): boolean;
  172. /**
  173. * Does this action manager handles actions of a given trigger
  174. * @param {number} trigger - the trigger to be tested
  175. * @return {boolean} whether the trigger is handeled
  176. */
  177. hasSpecificTrigger(trigger: number): boolean;
  178. /**
  179. * Does this action manager has pointer triggers
  180. * @return {boolean} whether or not it has pointer triggers
  181. */
  182. readonly hasPointerTriggers: boolean;
  183. /**
  184. * Does this action manager has pick triggers
  185. * @return {boolean} whether or not it has pick triggers
  186. */
  187. readonly hasPickTriggers: boolean;
  188. /**
  189. * Does exist one action manager with at least one trigger
  190. * @return {boolean} whether or not it exists one action manager with one trigger
  191. **/
  192. static readonly HasTriggers: boolean;
  193. /**
  194. * Does exist one action manager with at least one pick trigger
  195. * @return {boolean} whether or not it exists one action manager with one pick trigger
  196. **/
  197. static readonly HasPickTriggers: boolean;
  198. /**
  199. * Does exist one action manager that handles actions of a given trigger
  200. * @param {number} trigger - the trigger to be tested
  201. * @return {boolean} whether the trigger is handeled by at least one action manager
  202. **/
  203. static HasSpecificTrigger(trigger: number): boolean;
  204. /**
  205. * Registers an action to this action manager
  206. * @param {BABYLON.Action} action - the action to be registered
  207. * @return {BABYLON.Action} the action amended (prepared) after registration
  208. */
  209. registerAction(action: Action): Nullable<Action>;
  210. /**
  211. * Process a specific trigger
  212. * @param {number} trigger - the trigger to process
  213. * @param evt {BABYLON.ActionEvent} the event details to be processed
  214. */
  215. processTrigger(trigger: number, evt?: ActionEvent): void;
  216. _getEffectiveTarget(target: any, propertyPath: string): any;
  217. _getProperty(propertyPath: string): string;
  218. serialize(name: string): any;
  219. static Parse(parsedActions: any, object: Nullable<AbstractMesh>, scene: Scene): void;
  220. static GetTriggerName(trigger: number): string;
  221. }
  222. }
  223. declare module 'babylonjs/actions' {
  224. class InterpolateValueAction extends Action {
  225. propertyPath: string;
  226. value: any;
  227. duration: number;
  228. stopOtherAnimations: boolean | undefined;
  229. onInterpolationDone: (() => void) | undefined;
  230. private _target;
  231. private _effectiveTarget;
  232. private _property;
  233. onInterpolationDoneObservable: Observable<InterpolateValueAction>;
  234. constructor(triggerOptions: any, target: any, propertyPath: string, value: any, duration?: number, condition?: Condition, stopOtherAnimations?: boolean | undefined, onInterpolationDone?: (() => void) | undefined);
  235. _prepare(): void;
  236. execute(): void;
  237. serialize(parent: any): any;
  238. }
  239. }
  240. declare module 'babylonjs/actions' {
  241. class SwitchBooleanAction extends Action {
  242. propertyPath: string;
  243. private _target;
  244. private _effectiveTarget;
  245. private _property;
  246. constructor(triggerOptions: any, target: any, propertyPath: string, condition?: Condition);
  247. _prepare(): void;
  248. execute(): void;
  249. serialize(parent: any): any;
  250. }
  251. class SetStateAction extends Action {
  252. value: string;
  253. private _target;
  254. constructor(triggerOptions: any, target: any, value: string, condition?: Condition);
  255. execute(): void;
  256. serialize(parent: any): any;
  257. }
  258. class SetValueAction extends Action {
  259. propertyPath: string;
  260. value: any;
  261. private _target;
  262. private _effectiveTarget;
  263. private _property;
  264. constructor(triggerOptions: any, target: any, propertyPath: string, value: any, condition?: Condition);
  265. _prepare(): void;
  266. execute(): void;
  267. serialize(parent: any): any;
  268. }
  269. class IncrementValueAction extends Action {
  270. propertyPath: string;
  271. value: any;
  272. private _target;
  273. private _effectiveTarget;
  274. private _property;
  275. constructor(triggerOptions: any, target: any, propertyPath: string, value: any, condition?: Condition);
  276. _prepare(): void;
  277. execute(): void;
  278. serialize(parent: any): any;
  279. }
  280. class PlayAnimationAction extends Action {
  281. from: number;
  282. to: number;
  283. loop: boolean | undefined;
  284. private _target;
  285. constructor(triggerOptions: any, target: any, from: number, to: number, loop?: boolean | undefined, condition?: Condition);
  286. _prepare(): void;
  287. execute(): void;
  288. serialize(parent: any): any;
  289. }
  290. class StopAnimationAction extends Action {
  291. private _target;
  292. constructor(triggerOptions: any, target: any, condition?: Condition);
  293. _prepare(): void;
  294. execute(): void;
  295. serialize(parent: any): any;
  296. }
  297. class DoNothingAction extends Action {
  298. constructor(triggerOptions?: any, condition?: Condition);
  299. execute(): void;
  300. serialize(parent: any): any;
  301. }
  302. class CombineAction extends Action {
  303. children: Action[];
  304. constructor(triggerOptions: any, children: Action[], condition?: Condition);
  305. _prepare(): void;
  306. execute(evt: ActionEvent): void;
  307. serialize(parent: any): any;
  308. }
  309. class ExecuteCodeAction extends Action {
  310. func: (evt: ActionEvent) => void;
  311. constructor(triggerOptions: any, func: (evt: ActionEvent) => void, condition?: Condition);
  312. execute(evt: ActionEvent): void;
  313. }
  314. class SetParentAction extends Action {
  315. private _parent;
  316. private _target;
  317. constructor(triggerOptions: any, target: any, parent: any, condition?: Condition);
  318. _prepare(): void;
  319. execute(): void;
  320. serialize(parent: any): any;
  321. }
  322. class PlaySoundAction extends Action {
  323. private _sound;
  324. constructor(triggerOptions: any, sound: Sound, condition?: Condition);
  325. _prepare(): void;
  326. execute(): void;
  327. serialize(parent: any): any;
  328. }
  329. class StopSoundAction extends Action {
  330. private _sound;
  331. constructor(triggerOptions: any, sound: Sound, condition?: Condition);
  332. _prepare(): void;
  333. execute(): void;
  334. serialize(parent: any): any;
  335. }
  336. }
  337. import {EffectFallbacks,EffectCreationOptions,Effect,Nullable,float,double,int,FloatArray,IndicesArray,KeyboardEventTypes,KeyboardInfo,KeyboardInfoPre,PointerEventTypes,PointerInfoBase,PointerInfoPre,PointerInfo,ToGammaSpace,ToLinearSpace,Epsilon,Color3,Color4,Vector2,Vector3,Vector4,ISize,Size,Quaternion,Matrix,Plane,Viewport,Frustum,Space,Axis,BezierCurve,Orientation,Angle,Arc2,Path2,Path3D,Curve3,PositionNormalVertex,PositionNormalTextureVertex,Tmp,Scalar,expandToProperty,serialize,serializeAsTexture,serializeAsColor3,serializeAsFresnelParameters,serializeAsVector2,serializeAsVector3,serializeAsMeshReference,serializeAsColorCurves,serializeAsColor4,serializeAsImageProcessingConfiguration,serializeAsQuaternion,SerializationHelper,EventState,Observer,MultiObserver,Observable,SmartArray,SmartArrayNoDuplicate,IAnimatable,LoadFileError,RetryStrategy,IFileRequest,Tools,PerfCounter,className,AsyncLoop,_AlphaState,_DepthCullingState,_StencilState,InstancingAttributeInfo,RenderTargetCreationOptions,EngineCapabilities,EngineOptions,IDisplayChangedEventArgs,Engine,Node,BoundingSphere,BoundingBox,ICullable,BoundingInfo,TransformNode,AbstractMesh,Light,Camera,RenderingManager,RenderingGroup,IDisposable,IActiveMeshCandidateProvider,RenderingGroupInfo,Scene,Buffer,VertexBuffer,InternalTexture,BaseTexture,Texture,_InstancesBatch,Mesh,BaseSubMesh,SubMesh,MaterialDefines,Material,UniformBuffer,IGetSetVerticesData,VertexData,Geometry,_PrimitiveGeometry,RibbonGeometry,BoxGeometry,SphereGeometry,DiscGeometry,CylinderGeometry,TorusGeometry,GroundGeometry,TiledGroundGeometry,PlaneGeometry,TorusKnotGeometry,PostProcessManager,PerformanceMonitor,RollingAverage,IImageProcessingConfigurationDefines,ImageProcessingConfiguration,ColorGradingTexture,ColorCurves,Behavior,MaterialHelper,PushMaterial,StandardMaterialDefines,StandardMaterial} from 'babylonjs/core';
  338. import {EngineInstrumentation,SceneInstrumentation,_TimeToken} from 'babylonjs/instrumentation';
  339. import {Particle,IParticleSystem,ParticleSystem,BoxParticleEmitter,ConeParticleEmitter,SphereParticleEmitter,SphereDirectedParticleEmitter,IParticleEmitterType} from 'babylonjs/particles';
  340. import {GPUParticleSystem} from 'babylonjs/gpuParticles';
  341. import {FramingBehavior,BouncingBehavior,AutoRotationBehavior} from 'babylonjs/cameraBehaviors';
  342. import {NullEngineOptions,NullEngine} from 'babylonjs/nullEngine';
  343. import {TextureTools} from 'babylonjs/textureTools';
  344. import {SolidParticle,ModelShape,DepthSortedParticle,SolidParticleSystem} from 'babylonjs/solidParticles';
  345. import {Collider,CollisionWorker,ICollisionCoordinator,SerializedMesh,SerializedSubMesh,SerializedGeometry,BabylonMessage,SerializedColliderToWorker,WorkerTaskType,WorkerReply,CollisionReplyPayload,InitPayload,CollidePayload,UpdatePayload,WorkerReplyType,CollisionCoordinatorWorker,CollisionCoordinatorLegacy} from 'babylonjs/collisions';
  346. import {IntersectionInfo,PickingInfo,Ray} from 'babylonjs/picking';
  347. import {SpriteManager,Sprite} from 'babylonjs/sprites';
  348. import {AnimationRange,AnimationEvent,PathCursor,Animation,TargetedAnimation,AnimationGroup,RuntimeAnimation,Animatable,IEasingFunction,EasingFunction,CircleEase,BackEase,BounceEase,CubicEase,ElasticEase,ExponentialEase,PowerEase,QuadraticEase,QuarticEase,QuinticEase,SineEase,BezierCurveEase} from 'babylonjs/animations';
  349. import {GroundMesh,InstancedMesh,LinesMesh} from 'babylonjs/additionalMeshes';
  350. import {ShaderMaterial} from 'babylonjs/shaderMaterial';
  351. import {MeshBuilder} from 'babylonjs/meshBuilder';
  352. import {PBRBaseMaterial,PBRBaseSimpleMaterial,PBRMaterial,PBRMetallicRoughnessMaterial,PBRSpecularGlossinessMaterial} from 'babylonjs/pbrMaterial';
  353. import {CameraInputTypes,ICameraInput,CameraInputsMap,CameraInputsManager,TargetCamera} from 'babylonjs/targetCamera';
  354. import {ArcRotateCameraKeyboardMoveInput,ArcRotateCameraMouseWheelInput,ArcRotateCameraPointersInput,ArcRotateCameraInputsManager,ArcRotateCamera} from 'babylonjs/arcRotateCamera';
  355. import {FreeCameraMouseInput,FreeCameraKeyboardMoveInput,FreeCameraInputsManager,FreeCamera} from 'babylonjs/freeCamera';
  356. import {HemisphericLight} from 'babylonjs/hemisphericLight';
  357. import {IShadowLight,ShadowLight,PointLight} from 'babylonjs/pointLight';
  358. import {DirectionalLight} from 'babylonjs/directionalLight';
  359. import {SpotLight} from 'babylonjs/spotLight';
  360. import {CubeTexture,RenderTargetTexture,IMultiRenderTargetOptions,MultiRenderTarget,MirrorTexture,RefractionTexture,DynamicTexture,VideoTexture,RawTexture} from 'babylonjs/additionalTextures';
  361. import {AudioEngine,Sound,SoundTrack,Analyser} from 'babylonjs/audio';
  362. import {ILoadingScreen,DefaultLoadingScreen,SceneLoaderProgressEvent,ISceneLoaderPluginExtensions,ISceneLoaderPluginFactory,ISceneLoaderPlugin,ISceneLoaderPluginAsync,SceneLoader,FilesInput} from 'babylonjs/loader';
  363. import {IShadowGenerator,ShadowGenerator} from 'babylonjs/shadows';
  364. import {StringDictionary} from 'babylonjs/stringDictionary';
  365. import {Tags,AndOrNotEvaluator} from 'babylonjs/userData';
  366. import {FresnelParameters} from 'babylonjs/fresnel';
  367. import {MultiMaterial} from 'babylonjs/multiMaterial';
  368. import {Database} from 'babylonjs/offline';
  369. import {FreeCameraTouchInput,TouchCamera} from 'babylonjs/touchCamera';
  370. import {ProceduralTexture,CustomProceduralTexture} from 'babylonjs/procedural';
  371. import {FreeCameraGamepadInput,ArcRotateCameraGamepadInput,GamepadManager,StickValues,GamepadButtonChanges,Gamepad,GenericPad,Xbox360Button,Xbox360Dpad,Xbox360Pad,PoseEnabledControllerType,MutableGamepadButton,ExtendedGamepadButton,PoseEnabledControllerHelper,PoseEnabledController,WebVRController,OculusTouchController,ViveController,GenericController,WindowsMotionController} from 'babylonjs/gamepad';
  372. import {FollowCamera,ArcFollowCamera,UniversalCamera,GamepadCamera} from 'babylonjs/additionalCameras';
  373. import {DepthRenderer} from 'babylonjs/depthRenderer';
  374. import {GeometryBufferRenderer} from 'babylonjs/geometryBufferRenderer';
  375. import {PostProcessOptions,PostProcess,PassPostProcess} from 'babylonjs/postProcesses';
  376. import {BlurPostProcess} from 'babylonjs/additionalPostProcess_blur';
  377. import {FxaaPostProcess} from 'babylonjs/additionalPostProcess_fxaa';
  378. import {HighlightsPostProcess} from 'babylonjs/additionalPostProcess_highlights';
  379. import {RefractionPostProcess,BlackAndWhitePostProcess,ConvolutionPostProcess,FilterPostProcess,VolumetricLightScatteringPostProcess,ColorCorrectionPostProcess,TonemappingOperator,TonemapPostProcess,DisplayPassPostProcess,ImageProcessingPostProcess} from 'babylonjs/additionalPostProcesses';
  380. import {PostProcessRenderPipelineManager,PostProcessRenderPass,PostProcessRenderEffect,PostProcessRenderPipeline} from 'babylonjs/renderingPipeline';
  381. import {SSAORenderingPipeline,SSAO2RenderingPipeline,LensRenderingPipeline,StandardRenderingPipeline} from 'babylonjs/additionalRenderingPipeline';
  382. import {DefaultRenderingPipeline} from 'babylonjs/defaultRenderingPipeline';
  383. import {Bone,BoneIKController,BoneLookController,Skeleton} from 'babylonjs/bones';
  384. import {SphericalPolynomial,SphericalHarmonics,CubeMapToSphericalPolynomialTools,CubeMapInfo,PanoramaToCubeMapTools,HDRInfo,HDRTools,HDRCubeTexture} from 'babylonjs/hdr';
  385. import {CSG} from 'babylonjs/csg';
  386. import {Polygon,PolygonMeshBuilder} from 'babylonjs/polygonMesh';
  387. import {LensFlare,LensFlareSystem} from 'babylonjs/lensFlares';
  388. import {PhysicsJointData,PhysicsJoint,DistanceJoint,MotorEnabledJoint,HingeJoint,Hinge2Joint,IMotorEnabledJoint,DistanceJointData,SpringJointData,PhysicsImpostorParameters,IPhysicsEnabledObject,PhysicsImpostor,PhysicsImpostorJoint,PhysicsEngine,IPhysicsEnginePlugin,PhysicsHelper,PhysicsRadialExplosionEvent,PhysicsGravitationalFieldEvent,PhysicsUpdraftEvent,PhysicsVortexEvent,PhysicsRadialImpulseFalloff,PhysicsUpdraftMode,PhysicsForceAndContactPoint,PhysicsRadialExplosionEventData,PhysicsGravitationalFieldEventData,PhysicsUpdraftEventData,PhysicsVortexEventData,CannonJSPlugin,OimoJSPlugin} from 'babylonjs/physics';
  389. import {TGATools,DDSInfo,DDSTools,KhronosTextureContainer} from 'babylonjs/textureFormats';
  390. import {Debug,RayHelper,DebugLayer,BoundingBoxRenderer} from 'babylonjs/debug';
  391. import {MorphTarget,MorphTargetManager} from 'babylonjs/morphTargets';
  392. import {IOctreeContainer,Octree,OctreeBlock} from 'babylonjs/octrees';
  393. import {SIMDHelper} from 'babylonjs/simd';
  394. import {VRDistortionCorrectionPostProcess,AnaglyphPostProcess,StereoscopicInterlacePostProcess,FreeCameraDeviceOrientationInput,ArcRotateCameraVRDeviceOrientationInput,VRCameraMetrics,DevicePose,PoseControlled,WebVROptions,WebVRFreeCamera,DeviceOrientationCamera,VRDeviceOrientationFreeCamera,VRDeviceOrientationGamepadCamera,VRDeviceOrientationArcRotateCamera,AnaglyphFreeCamera,AnaglyphArcRotateCamera,AnaglyphGamepadCamera,AnaglyphUniversalCamera,StereoscopicFreeCamera,StereoscopicArcRotateCamera,StereoscopicGamepadCamera,StereoscopicUniversalCamera,VRTeleportationOptions,VRExperienceHelperOptions,VRExperienceHelper} from 'babylonjs/vr';
  395. import {JoystickAxis,VirtualJoystick,VirtualJoysticksCamera,FreeCameraVirtualJoystickInput} from 'babylonjs/virtualJoystick';
  396. import {ISimplifier,ISimplificationSettings,SimplificationSettings,ISimplificationTask,SimplificationQueue,SimplificationType,DecimationTriangle,DecimationVertex,QuadraticMatrix,Reference,QuadraticErrorSimplification,MeshLODLevel,SceneOptimization,TextureOptimization,HardwareScalingOptimization,ShadowsOptimization,PostProcessesOptimization,LensFlaresOptimization,ParticlesOptimization,RenderTargetsOptimization,MergeMeshesOptimization,SceneOptimizerOptions,SceneOptimizer} from 'babylonjs/optimizations';
  397. import {OutlineRenderer,EdgesRenderer,IHighlightLayerOptions,HighlightLayer} from 'babylonjs/highlights';
  398. import {SceneSerializer} from 'babylonjs/serialization';
  399. import {AssetTaskState,AbstractAssetTask,IAssetsProgressEvent,AssetsProgressEvent,MeshAssetTask,TextFileAssetTask,BinaryFileAssetTask,ImageAssetTask,ITextureAssetTask,TextureAssetTask,CubeTextureAssetTask,HDRCubeTextureAssetTask,AssetsManager} from 'babylonjs/assetsManager';
  400. import {ReflectionProbe} from 'babylonjs/probes';
  401. import {BackgroundMaterial} from 'babylonjs/backgroundMaterial';
  402. import {Layer} from 'babylonjs/layer';
  403. import {IEnvironmentHelperOptions,EnvironmentHelper} from 'babylonjs/environmentHelper';