ExtrasAsMetadata.d.ts 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. import type { Nullable } from "@babylonjs/core/types.js";
  2. import type { TransformNode } from "@babylonjs/core/Meshes/transformNode.js";
  3. import type { Camera } from "@babylonjs/core/Cameras/camera.js";
  4. import type { INode, ICamera, IMaterial } from "../glTFLoaderInterfaces";
  5. import type { IGLTFLoaderExtension } from "../glTFLoaderExtension";
  6. import { GLTFLoader } from "../glTFLoader";
  7. import type { Material } from "@babylonjs/core/Materials/material.js";
  8. /**
  9. * Store glTF extras (if present) in BJS objects' metadata
  10. */
  11. export declare class ExtrasAsMetadata implements IGLTFLoaderExtension {
  12. /**
  13. * The name of this extension.
  14. */
  15. readonly name = "ExtrasAsMetadata";
  16. /**
  17. * Defines whether this extension is enabled.
  18. */
  19. enabled: boolean;
  20. private _loader;
  21. private _assignExtras;
  22. /**
  23. * @internal
  24. */
  25. constructor(loader: GLTFLoader);
  26. /** @internal */
  27. dispose(): void;
  28. /**
  29. * @internal
  30. */
  31. loadNodeAsync(context: string, node: INode, assign: (babylonTransformNode: TransformNode) => void): Nullable<Promise<TransformNode>>;
  32. /**
  33. * @internal
  34. */
  35. loadCameraAsync(context: string, camera: ICamera, assign: (babylonCamera: Camera) => void): Nullable<Promise<Camera>>;
  36. /**
  37. * @internal
  38. */
  39. createMaterial(context: string, material: IMaterial, babylonDrawMode: number): Nullable<Material>;
  40. }