babylon.mesh.d.ts 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. declare module BABYLON {
  2. class _InstancesBatch {
  3. public mustReturn: boolean;
  4. public visibleInstances: InstancedMesh[][];
  5. public renderSelf: boolean[];
  6. }
  7. class Mesh extends AbstractMesh implements IGetSetVerticesData {
  8. public delayLoadState: number;
  9. public instances: InstancedMesh[];
  10. public delayLoadingFile: string;
  11. public _binaryInfo: any;
  12. private _LODLevels;
  13. public _geometry: Geometry;
  14. private _onBeforeRenderCallbacks;
  15. private _onAfterRenderCallbacks;
  16. public _delayInfo: any;
  17. public _delayLoadingFunction: (any: any, Mesh: any) => void;
  18. public _visibleInstances: any;
  19. private _renderIdForInstances;
  20. private _batchCache;
  21. private _worldMatricesInstancesBuffer;
  22. private _worldMatricesInstancesArray;
  23. private _instancesBufferSize;
  24. public _shouldGenerateFlatShading: boolean;
  25. private _preActivateId;
  26. constructor(name: string, scene: Scene);
  27. public hasLODLevels : boolean;
  28. private _sortLODLevels();
  29. public addLODLevel(distance: number, mesh: Mesh): Mesh;
  30. public removeLODLevel(mesh: Mesh): Mesh;
  31. public getLOD(camera: Camera, boundingSphere?: BoundingSphere): AbstractMesh;
  32. public geometry : Geometry;
  33. public getTotalVertices(): number;
  34. public getVerticesData(kind: string): number[];
  35. public getVertexBuffer(kind: any): VertexBuffer;
  36. public isVerticesDataPresent(kind: string): boolean;
  37. public getVerticesDataKinds(): string[];
  38. public getTotalIndices(): number;
  39. public getIndices(): number[];
  40. public isBlocked : boolean;
  41. public isReady(): boolean;
  42. public isDisposed(): boolean;
  43. public _preActivate(): void;
  44. public _registerInstanceForRenderId(instance: InstancedMesh, renderId: number): void;
  45. public refreshBoundingInfo(): void;
  46. public _createGlobalSubMesh(): SubMesh;
  47. public subdivide(count: number): void;
  48. public setVerticesData(kind: any, data: any, updatable?: boolean, stride?: number): void;
  49. public updateVerticesData(kind: string, data: number[], updateExtends?: boolean, makeItUnique?: boolean): void;
  50. public updateVerticesDataDirectly(kind: string, data: Float32Array, offset?: number, makeItUnique?: boolean): void;
  51. public makeGeometryUnique(): void;
  52. public setIndices(indices: number[], totalVertices?: number): void;
  53. public _bind(subMesh: SubMesh, effect: Effect, fillMode: number): void;
  54. public _draw(subMesh: SubMesh, fillMode: number, instancesCount?: number): void;
  55. public registerBeforeRender(func: () => void): void;
  56. public unregisterBeforeRender(func: () => void): void;
  57. public registerAfterRender(func: () => void): void;
  58. public unregisterAfterRender(func: () => void): void;
  59. public _getInstancesRenderList(subMeshId: number): _InstancesBatch;
  60. public _renderWithInstances(subMesh: SubMesh, fillMode: number, batch: _InstancesBatch, effect: Effect, engine: Engine): void;
  61. public render(subMesh: SubMesh): void;
  62. public getEmittedParticleSystems(): ParticleSystem[];
  63. public getHierarchyEmittedParticleSystems(): ParticleSystem[];
  64. public getChildren(): Node[];
  65. public _checkDelayState(): void;
  66. public isInFrustum(frustumPlanes: Plane[]): boolean;
  67. public setMaterialByID(id: string): void;
  68. public getAnimatables(): IAnimatable[];
  69. public bakeTransformIntoVertices(transform: Matrix): void;
  70. public _resetPointsArrayCache(): void;
  71. public _generatePointsArray(): boolean;
  72. public clone(name: string, newParent: Node, doNotCloneChildren?: boolean): Mesh;
  73. public dispose(doNotRecurse?: boolean): void;
  74. public applyDisplacementMap(url: string, minHeight: number, maxHeight: number): void;
  75. public applyDisplacementMapFromBuffer(buffer: Uint8Array, heightMapWidth: number, heightMapHeight: number, minHeight: number, maxHeight: number): void;
  76. public convertToFlatShadedMesh(): void;
  77. public createInstance(name: string): InstancedMesh;
  78. public synchronizeInstances(): void;
  79. static CreateBox(name: string, size: number, scene: Scene, updatable?: boolean): Mesh;
  80. static CreateSphere(name: string, segments: number, diameter: number, scene: Scene, updatable?: boolean): Mesh;
  81. static CreateCylinder(name: string, height: number, diameterTop: number, diameterBottom: number, tessellation: number, subdivisions: any, scene: Scene, updatable?: any): Mesh;
  82. static CreateTorus(name: string, diameter: number, thickness: number, tessellation: number, scene: Scene, updatable?: boolean): Mesh;
  83. static CreateTorusKnot(name: string, radius: number, tube: number, radialSegments: number, tubularSegments: number, p: number, q: number, scene: Scene, updatable?: boolean): Mesh;
  84. static CreateLines(name: string, points: Vector3[], scene: Scene, updatable?: boolean): LinesMesh;
  85. static CreatePlane(name: string, size: number, scene: Scene, updatable?: boolean): Mesh;
  86. static CreateGround(name: string, width: number, height: number, subdivisions: number, scene: Scene, updatable?: boolean): Mesh;
  87. static CreateTiledGround(name: string, xmin: number, zmin: number, xmax: number, zmax: number, subdivisions: {
  88. w: number;
  89. h: number;
  90. }, precision: {
  91. w: number;
  92. h: number;
  93. }, scene: Scene, updatable?: boolean): Mesh;
  94. static CreateGroundFromHeightMap(name: string, url: string, width: number, height: number, subdivisions: number, minHeight: number, maxHeight: number, scene: Scene, updatable?: boolean): GroundMesh;
  95. static MinMax(meshes: AbstractMesh[]): {
  96. min: Vector3;
  97. max: Vector3;
  98. };
  99. static Center(meshesOrMinMaxVector: any): Vector3;
  100. static MergeMeshes(meshes: Mesh[], disposeSource?: boolean, allow32BitsIndices?: boolean): Mesh;
  101. }
  102. }