MSFT_audio_emitter.d.ts 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. import type { Nullable } from "@babylonjs/core/types.js";
  2. import type { AnimationGroup } from "@babylonjs/core/Animations/animationGroup.js";
  3. import type { TransformNode } from "@babylonjs/core/Meshes/transformNode.js";
  4. import type { IScene, INode, IAnimation } from "../glTFLoaderInterfaces";
  5. import type { IGLTFLoaderExtension } from "../glTFLoaderExtension";
  6. import { GLTFLoader } from "../glTFLoader";
  7. /**
  8. * [Specification](https://github.com/najadojo/glTF/blob/MSFT_audio_emitter/extensions/2.0/Vendor/MSFT_audio_emitter/README.md)
  9. * !!! Experimental Extension Subject to Changes !!!
  10. */
  11. export declare class MSFT_audio_emitter implements IGLTFLoaderExtension {
  12. /**
  13. * The name of this extension.
  14. */
  15. readonly name = "MSFT_audio_emitter";
  16. /**
  17. * Defines whether this extension is enabled.
  18. */
  19. enabled: boolean;
  20. private _loader;
  21. private _clips;
  22. private _emitters;
  23. /**
  24. * @internal
  25. */
  26. constructor(loader: GLTFLoader);
  27. /** @internal */
  28. dispose(): void;
  29. /** @internal */
  30. onLoading(): void;
  31. /**
  32. * @internal
  33. */
  34. loadSceneAsync(context: string, scene: IScene): Nullable<Promise<void>>;
  35. /**
  36. * @internal
  37. */
  38. loadNodeAsync(context: string, node: INode, assign: (babylonTransformNode: TransformNode) => void): Nullable<Promise<TransformNode>>;
  39. /**
  40. * @internal
  41. */
  42. loadAnimationAsync(context: string, animation: IAnimation): Nullable<Promise<AnimationGroup>>;
  43. private _loadClipAsync;
  44. private _loadEmitterAsync;
  45. private _getEventAction;
  46. private _loadAnimationEventAsync;
  47. }