|
@@ -3337,6 +3337,249 @@ declare module BABYLON {
|
|
}
|
|
}
|
|
|
|
|
|
declare module BABYLON {
|
|
declare module BABYLON {
|
|
|
|
+ class Collider {
|
|
|
|
+ radius: Vector3;
|
|
|
|
+ retry: number;
|
|
|
|
+ velocity: Vector3;
|
|
|
|
+ basePoint: Vector3;
|
|
|
|
+ epsilon: number;
|
|
|
|
+ collisionFound: boolean;
|
|
|
|
+ velocityWorldLength: number;
|
|
|
|
+ basePointWorld: Vector3;
|
|
|
|
+ velocityWorld: Vector3;
|
|
|
|
+ normalizedVelocity: Vector3;
|
|
|
|
+ initialVelocity: Vector3;
|
|
|
|
+ initialPosition: Vector3;
|
|
|
|
+ nearestDistance: number;
|
|
|
|
+ intersectionPoint: Vector3;
|
|
|
|
+ collidedMesh: AbstractMesh;
|
|
|
|
+ private _collisionPoint;
|
|
|
|
+ private _planeIntersectionPoint;
|
|
|
|
+ private _tempVector;
|
|
|
|
+ private _tempVector2;
|
|
|
|
+ private _tempVector3;
|
|
|
|
+ private _tempVector4;
|
|
|
|
+ private _edge;
|
|
|
|
+ private _baseToVertex;
|
|
|
|
+ private _destinationPoint;
|
|
|
|
+ private _slidePlaneNormal;
|
|
|
|
+ private _displacementVector;
|
|
|
|
+ private _collisionMask;
|
|
|
|
+ collisionMask: number;
|
|
|
|
+ _initialize(source: Vector3, dir: Vector3, e: number): void;
|
|
|
|
+ _checkPointInTriangle(point: Vector3, pa: Vector3, pb: Vector3, pc: Vector3, n: Vector3): boolean;
|
|
|
|
+ _canDoCollision(sphereCenter: Vector3, sphereRadius: number, vecMin: Vector3, vecMax: Vector3): boolean;
|
|
|
|
+ _testTriangle(faceIndex: number, trianglePlaneArray: Array<Plane>, p1: Vector3, p2: Vector3, p3: Vector3, hasMaterial: boolean): void;
|
|
|
|
+ _collide(trianglePlaneArray: Array<Plane>, pts: Vector3[], indices: IndicesArray, indexStart: number, indexEnd: number, decal: number, hasMaterial: boolean): void;
|
|
|
|
+ _getResponse(pos: Vector3, vel: Vector3): void;
|
|
|
|
+ }
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+declare module BABYLON {
|
|
|
|
+ var CollisionWorker: string;
|
|
|
|
+ interface ICollisionCoordinator {
|
|
|
|
+ getNewPosition(position: Vector3, velocity: Vector3, collider: Collider, maximumRetry: number, excludedMesh: AbstractMesh, onNewPosition: (collisionIndex: number, newPosition: Vector3, collidedMesh?: AbstractMesh) => void, collisionIndex: number): void;
|
|
|
|
+ init(scene: Scene): void;
|
|
|
|
+ destroy(): void;
|
|
|
|
+ onMeshAdded(mesh: AbstractMesh): any;
|
|
|
|
+ onMeshUpdated(mesh: AbstractMesh): any;
|
|
|
|
+ onMeshRemoved(mesh: AbstractMesh): any;
|
|
|
|
+ onGeometryAdded(geometry: Geometry): any;
|
|
|
|
+ onGeometryUpdated(geometry: Geometry): any;
|
|
|
|
+ onGeometryDeleted(geometry: Geometry): any;
|
|
|
|
+ }
|
|
|
|
+ interface SerializedMesh {
|
|
|
|
+ id: string;
|
|
|
|
+ name: string;
|
|
|
|
+ uniqueId: number;
|
|
|
|
+ geometryId: string;
|
|
|
|
+ sphereCenter: Array<number>;
|
|
|
|
+ sphereRadius: number;
|
|
|
|
+ boxMinimum: Array<number>;
|
|
|
|
+ boxMaximum: Array<number>;
|
|
|
|
+ worldMatrixFromCache: any;
|
|
|
|
+ subMeshes: Array<SerializedSubMesh>;
|
|
|
|
+ checkCollisions: boolean;
|
|
|
|
+ }
|
|
|
|
+ interface SerializedSubMesh {
|
|
|
|
+ position: number;
|
|
|
|
+ verticesStart: number;
|
|
|
|
+ verticesCount: number;
|
|
|
|
+ indexStart: number;
|
|
|
|
+ indexCount: number;
|
|
|
|
+ hasMaterial: boolean;
|
|
|
|
+ sphereCenter: Array<number>;
|
|
|
|
+ sphereRadius: number;
|
|
|
|
+ boxMinimum: Array<number>;
|
|
|
|
+ boxMaximum: Array<number>;
|
|
|
|
+ }
|
|
|
|
+ interface SerializedGeometry {
|
|
|
|
+ id: string;
|
|
|
|
+ positions: Float32Array;
|
|
|
|
+ indices: Uint32Array;
|
|
|
|
+ normals: Float32Array;
|
|
|
|
+ }
|
|
|
|
+ interface BabylonMessage {
|
|
|
|
+ taskType: WorkerTaskType;
|
|
|
|
+ payload: InitPayload | CollidePayload | UpdatePayload;
|
|
|
|
+ }
|
|
|
|
+ interface SerializedColliderToWorker {
|
|
|
|
+ position: Array<number>;
|
|
|
|
+ velocity: Array<number>;
|
|
|
|
+ radius: Array<number>;
|
|
|
|
+ }
|
|
|
|
+ enum WorkerTaskType {
|
|
|
|
+ INIT = 0,
|
|
|
|
+ UPDATE = 1,
|
|
|
|
+ COLLIDE = 2,
|
|
|
|
+ }
|
|
|
|
+ interface WorkerReply {
|
|
|
|
+ error: WorkerReplyType;
|
|
|
|
+ taskType: WorkerTaskType;
|
|
|
|
+ payload?: any;
|
|
|
|
+ }
|
|
|
|
+ interface CollisionReplyPayload {
|
|
|
|
+ newPosition: Array<number>;
|
|
|
|
+ collisionId: number;
|
|
|
|
+ collidedMeshUniqueId: number;
|
|
|
|
+ }
|
|
|
|
+ interface InitPayload {
|
|
|
|
+ }
|
|
|
|
+ interface CollidePayload {
|
|
|
|
+ collisionId: number;
|
|
|
|
+ collider: SerializedColliderToWorker;
|
|
|
|
+ maximumRetry: number;
|
|
|
|
+ excludedMeshUniqueId?: number;
|
|
|
|
+ }
|
|
|
|
+ interface UpdatePayload {
|
|
|
|
+ updatedMeshes: {
|
|
|
|
+ [n: number]: SerializedMesh;
|
|
|
|
+ };
|
|
|
|
+ updatedGeometries: {
|
|
|
|
+ [s: string]: SerializedGeometry;
|
|
|
|
+ };
|
|
|
|
+ removedMeshes: Array<number>;
|
|
|
|
+ removedGeometries: Array<string>;
|
|
|
|
+ }
|
|
|
|
+ enum WorkerReplyType {
|
|
|
|
+ SUCCESS = 0,
|
|
|
|
+ UNKNOWN_ERROR = 1,
|
|
|
|
+ }
|
|
|
|
+ class CollisionCoordinatorWorker implements ICollisionCoordinator {
|
|
|
|
+ private _scene;
|
|
|
|
+ private _scaledPosition;
|
|
|
|
+ private _scaledVelocity;
|
|
|
|
+ private _collisionsCallbackArray;
|
|
|
|
+ private _init;
|
|
|
|
+ private _runningUpdated;
|
|
|
|
+ private _runningCollisionTask;
|
|
|
|
+ private _worker;
|
|
|
|
+ private _addUpdateMeshesList;
|
|
|
|
+ private _addUpdateGeometriesList;
|
|
|
|
+ private _toRemoveMeshesArray;
|
|
|
|
+ private _toRemoveGeometryArray;
|
|
|
|
+ constructor();
|
|
|
|
+ static SerializeMesh: (mesh: AbstractMesh) => SerializedMesh;
|
|
|
|
+ static SerializeGeometry: (geometry: Geometry) => SerializedGeometry;
|
|
|
|
+ getNewPosition(position: Vector3, velocity: Vector3, collider: Collider, maximumRetry: number, excludedMesh: AbstractMesh, onNewPosition: (collisionIndex: number, newPosition: Vector3, collidedMesh?: AbstractMesh) => void, collisionIndex: number): void;
|
|
|
|
+ init(scene: Scene): void;
|
|
|
|
+ destroy(): void;
|
|
|
|
+ onMeshAdded(mesh: AbstractMesh): void;
|
|
|
|
+ onMeshUpdated: (mesh: AbstractMesh) => void;
|
|
|
|
+ onMeshRemoved(mesh: AbstractMesh): void;
|
|
|
|
+ onGeometryAdded(geometry: Geometry): void;
|
|
|
|
+ onGeometryUpdated: (geometry: Geometry) => void;
|
|
|
|
+ onGeometryDeleted(geometry: Geometry): void;
|
|
|
|
+ private _afterRender;
|
|
|
|
+ private _onMessageFromWorker;
|
|
|
|
+ }
|
|
|
|
+ class CollisionCoordinatorLegacy implements ICollisionCoordinator {
|
|
|
|
+ private _scene;
|
|
|
|
+ private _scaledPosition;
|
|
|
|
+ private _scaledVelocity;
|
|
|
|
+ private _finalPosition;
|
|
|
|
+ getNewPosition(position: Vector3, velocity: Vector3, collider: Collider, maximumRetry: number, excludedMesh: AbstractMesh, onNewPosition: (collisionIndex: number, newPosition: Vector3, collidedMesh?: AbstractMesh) => void, collisionIndex: number): void;
|
|
|
|
+ init(scene: Scene): void;
|
|
|
|
+ destroy(): void;
|
|
|
|
+ onMeshAdded(mesh: AbstractMesh): void;
|
|
|
|
+ onMeshUpdated(mesh: AbstractMesh): void;
|
|
|
|
+ onMeshRemoved(mesh: AbstractMesh): void;
|
|
|
|
+ onGeometryAdded(geometry: Geometry): void;
|
|
|
|
+ onGeometryUpdated(geometry: Geometry): void;
|
|
|
|
+ onGeometryDeleted(geometry: Geometry): void;
|
|
|
|
+ private _collideWithWorld(position, velocity, collider, maximumRetry, finalPosition, excludedMesh?);
|
|
|
|
+ }
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+declare module BABYLON {
|
|
|
|
+ var WorkerIncluded: boolean;
|
|
|
|
+ class CollisionCache {
|
|
|
|
+ private _meshes;
|
|
|
|
+ private _geometries;
|
|
|
|
+ getMeshes(): {
|
|
|
|
+ [n: number]: SerializedMesh;
|
|
|
|
+ };
|
|
|
|
+ getGeometries(): {
|
|
|
|
+ [s: number]: SerializedGeometry;
|
|
|
|
+ };
|
|
|
|
+ getMesh(id: any): SerializedMesh;
|
|
|
|
+ addMesh(mesh: SerializedMesh): void;
|
|
|
|
+ removeMesh(uniqueId: number): void;
|
|
|
|
+ getGeometry(id: string): SerializedGeometry;
|
|
|
|
+ addGeometry(geometry: SerializedGeometry): void;
|
|
|
|
+ removeGeometry(id: string): void;
|
|
|
|
+ }
|
|
|
|
+ class CollideWorker {
|
|
|
|
+ collider: Collider;
|
|
|
|
+ private _collisionCache;
|
|
|
|
+ private finalPosition;
|
|
|
|
+ private collisionsScalingMatrix;
|
|
|
|
+ private collisionTranformationMatrix;
|
|
|
|
+ constructor(collider: Collider, _collisionCache: CollisionCache, finalPosition: Vector3);
|
|
|
|
+ collideWithWorld(position: Vector3, velocity: Vector3, maximumRetry: number, excludedMeshUniqueId?: number): void;
|
|
|
|
+ private checkCollision(mesh);
|
|
|
|
+ private processCollisionsForSubMeshes(transformMatrix, mesh);
|
|
|
|
+ private collideForSubMesh(subMesh, transformMatrix, meshGeometry);
|
|
|
|
+ private checkSubmeshCollision(subMesh);
|
|
|
|
+ }
|
|
|
|
+ interface ICollisionDetector {
|
|
|
|
+ onInit(payload: InitPayload): void;
|
|
|
|
+ onUpdate(payload: UpdatePayload): void;
|
|
|
|
+ onCollision(payload: CollidePayload): void;
|
|
|
|
+ }
|
|
|
|
+ class CollisionDetectorTransferable implements ICollisionDetector {
|
|
|
|
+ private _collisionCache;
|
|
|
|
+ onInit(payload: InitPayload): void;
|
|
|
|
+ onUpdate(payload: UpdatePayload): void;
|
|
|
|
+ onCollision(payload: CollidePayload): void;
|
|
|
|
+ }
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+declare module BABYLON {
|
|
|
|
+ class IntersectionInfo {
|
|
|
|
+ bu: number;
|
|
|
|
+ bv: number;
|
|
|
|
+ distance: number;
|
|
|
|
+ faceId: number;
|
|
|
|
+ subMeshId: number;
|
|
|
|
+ constructor(bu: number, bv: number, distance: number);
|
|
|
|
+ }
|
|
|
|
+ class PickingInfo {
|
|
|
|
+ hit: boolean;
|
|
|
|
+ distance: number;
|
|
|
|
+ pickedPoint: Vector3;
|
|
|
|
+ pickedMesh: AbstractMesh;
|
|
|
|
+ bu: number;
|
|
|
|
+ bv: number;
|
|
|
|
+ faceId: number;
|
|
|
|
+ subMeshId: number;
|
|
|
|
+ pickedSprite: Sprite;
|
|
|
|
+ getNormal(useWorldCoordinates?: boolean, useVerticesNormals?: boolean): Vector3;
|
|
|
|
+ getTextureCoordinates(): Vector2;
|
|
|
|
+ }
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+declare module BABYLON {
|
|
class ArcRotateCamera extends TargetCamera {
|
|
class ArcRotateCamera extends TargetCamera {
|
|
alpha: number;
|
|
alpha: number;
|
|
beta: number;
|
|
beta: number;
|
|
@@ -3806,249 +4049,6 @@ declare module BABYLON {
|
|
}
|
|
}
|
|
|
|
|
|
declare module BABYLON {
|
|
declare module BABYLON {
|
|
- class Collider {
|
|
|
|
- radius: Vector3;
|
|
|
|
- retry: number;
|
|
|
|
- velocity: Vector3;
|
|
|
|
- basePoint: Vector3;
|
|
|
|
- epsilon: number;
|
|
|
|
- collisionFound: boolean;
|
|
|
|
- velocityWorldLength: number;
|
|
|
|
- basePointWorld: Vector3;
|
|
|
|
- velocityWorld: Vector3;
|
|
|
|
- normalizedVelocity: Vector3;
|
|
|
|
- initialVelocity: Vector3;
|
|
|
|
- initialPosition: Vector3;
|
|
|
|
- nearestDistance: number;
|
|
|
|
- intersectionPoint: Vector3;
|
|
|
|
- collidedMesh: AbstractMesh;
|
|
|
|
- private _collisionPoint;
|
|
|
|
- private _planeIntersectionPoint;
|
|
|
|
- private _tempVector;
|
|
|
|
- private _tempVector2;
|
|
|
|
- private _tempVector3;
|
|
|
|
- private _tempVector4;
|
|
|
|
- private _edge;
|
|
|
|
- private _baseToVertex;
|
|
|
|
- private _destinationPoint;
|
|
|
|
- private _slidePlaneNormal;
|
|
|
|
- private _displacementVector;
|
|
|
|
- private _collisionMask;
|
|
|
|
- collisionMask: number;
|
|
|
|
- _initialize(source: Vector3, dir: Vector3, e: number): void;
|
|
|
|
- _checkPointInTriangle(point: Vector3, pa: Vector3, pb: Vector3, pc: Vector3, n: Vector3): boolean;
|
|
|
|
- _canDoCollision(sphereCenter: Vector3, sphereRadius: number, vecMin: Vector3, vecMax: Vector3): boolean;
|
|
|
|
- _testTriangle(faceIndex: number, trianglePlaneArray: Array<Plane>, p1: Vector3, p2: Vector3, p3: Vector3, hasMaterial: boolean): void;
|
|
|
|
- _collide(trianglePlaneArray: Array<Plane>, pts: Vector3[], indices: IndicesArray, indexStart: number, indexEnd: number, decal: number, hasMaterial: boolean): void;
|
|
|
|
- _getResponse(pos: Vector3, vel: Vector3): void;
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-declare module BABYLON {
|
|
|
|
- var CollisionWorker: string;
|
|
|
|
- interface ICollisionCoordinator {
|
|
|
|
- getNewPosition(position: Vector3, velocity: Vector3, collider: Collider, maximumRetry: number, excludedMesh: AbstractMesh, onNewPosition: (collisionIndex: number, newPosition: Vector3, collidedMesh?: AbstractMesh) => void, collisionIndex: number): void;
|
|
|
|
- init(scene: Scene): void;
|
|
|
|
- destroy(): void;
|
|
|
|
- onMeshAdded(mesh: AbstractMesh): any;
|
|
|
|
- onMeshUpdated(mesh: AbstractMesh): any;
|
|
|
|
- onMeshRemoved(mesh: AbstractMesh): any;
|
|
|
|
- onGeometryAdded(geometry: Geometry): any;
|
|
|
|
- onGeometryUpdated(geometry: Geometry): any;
|
|
|
|
- onGeometryDeleted(geometry: Geometry): any;
|
|
|
|
- }
|
|
|
|
- interface SerializedMesh {
|
|
|
|
- id: string;
|
|
|
|
- name: string;
|
|
|
|
- uniqueId: number;
|
|
|
|
- geometryId: string;
|
|
|
|
- sphereCenter: Array<number>;
|
|
|
|
- sphereRadius: number;
|
|
|
|
- boxMinimum: Array<number>;
|
|
|
|
- boxMaximum: Array<number>;
|
|
|
|
- worldMatrixFromCache: any;
|
|
|
|
- subMeshes: Array<SerializedSubMesh>;
|
|
|
|
- checkCollisions: boolean;
|
|
|
|
- }
|
|
|
|
- interface SerializedSubMesh {
|
|
|
|
- position: number;
|
|
|
|
- verticesStart: number;
|
|
|
|
- verticesCount: number;
|
|
|
|
- indexStart: number;
|
|
|
|
- indexCount: number;
|
|
|
|
- hasMaterial: boolean;
|
|
|
|
- sphereCenter: Array<number>;
|
|
|
|
- sphereRadius: number;
|
|
|
|
- boxMinimum: Array<number>;
|
|
|
|
- boxMaximum: Array<number>;
|
|
|
|
- }
|
|
|
|
- interface SerializedGeometry {
|
|
|
|
- id: string;
|
|
|
|
- positions: Float32Array;
|
|
|
|
- indices: Uint32Array;
|
|
|
|
- normals: Float32Array;
|
|
|
|
- }
|
|
|
|
- interface BabylonMessage {
|
|
|
|
- taskType: WorkerTaskType;
|
|
|
|
- payload: InitPayload | CollidePayload | UpdatePayload;
|
|
|
|
- }
|
|
|
|
- interface SerializedColliderToWorker {
|
|
|
|
- position: Array<number>;
|
|
|
|
- velocity: Array<number>;
|
|
|
|
- radius: Array<number>;
|
|
|
|
- }
|
|
|
|
- enum WorkerTaskType {
|
|
|
|
- INIT = 0,
|
|
|
|
- UPDATE = 1,
|
|
|
|
- COLLIDE = 2,
|
|
|
|
- }
|
|
|
|
- interface WorkerReply {
|
|
|
|
- error: WorkerReplyType;
|
|
|
|
- taskType: WorkerTaskType;
|
|
|
|
- payload?: any;
|
|
|
|
- }
|
|
|
|
- interface CollisionReplyPayload {
|
|
|
|
- newPosition: Array<number>;
|
|
|
|
- collisionId: number;
|
|
|
|
- collidedMeshUniqueId: number;
|
|
|
|
- }
|
|
|
|
- interface InitPayload {
|
|
|
|
- }
|
|
|
|
- interface CollidePayload {
|
|
|
|
- collisionId: number;
|
|
|
|
- collider: SerializedColliderToWorker;
|
|
|
|
- maximumRetry: number;
|
|
|
|
- excludedMeshUniqueId?: number;
|
|
|
|
- }
|
|
|
|
- interface UpdatePayload {
|
|
|
|
- updatedMeshes: {
|
|
|
|
- [n: number]: SerializedMesh;
|
|
|
|
- };
|
|
|
|
- updatedGeometries: {
|
|
|
|
- [s: string]: SerializedGeometry;
|
|
|
|
- };
|
|
|
|
- removedMeshes: Array<number>;
|
|
|
|
- removedGeometries: Array<string>;
|
|
|
|
- }
|
|
|
|
- enum WorkerReplyType {
|
|
|
|
- SUCCESS = 0,
|
|
|
|
- UNKNOWN_ERROR = 1,
|
|
|
|
- }
|
|
|
|
- class CollisionCoordinatorWorker implements ICollisionCoordinator {
|
|
|
|
- private _scene;
|
|
|
|
- private _scaledPosition;
|
|
|
|
- private _scaledVelocity;
|
|
|
|
- private _collisionsCallbackArray;
|
|
|
|
- private _init;
|
|
|
|
- private _runningUpdated;
|
|
|
|
- private _runningCollisionTask;
|
|
|
|
- private _worker;
|
|
|
|
- private _addUpdateMeshesList;
|
|
|
|
- private _addUpdateGeometriesList;
|
|
|
|
- private _toRemoveMeshesArray;
|
|
|
|
- private _toRemoveGeometryArray;
|
|
|
|
- constructor();
|
|
|
|
- static SerializeMesh: (mesh: AbstractMesh) => SerializedMesh;
|
|
|
|
- static SerializeGeometry: (geometry: Geometry) => SerializedGeometry;
|
|
|
|
- getNewPosition(position: Vector3, velocity: Vector3, collider: Collider, maximumRetry: number, excludedMesh: AbstractMesh, onNewPosition: (collisionIndex: number, newPosition: Vector3, collidedMesh?: AbstractMesh) => void, collisionIndex: number): void;
|
|
|
|
- init(scene: Scene): void;
|
|
|
|
- destroy(): void;
|
|
|
|
- onMeshAdded(mesh: AbstractMesh): void;
|
|
|
|
- onMeshUpdated: (mesh: AbstractMesh) => void;
|
|
|
|
- onMeshRemoved(mesh: AbstractMesh): void;
|
|
|
|
- onGeometryAdded(geometry: Geometry): void;
|
|
|
|
- onGeometryUpdated: (geometry: Geometry) => void;
|
|
|
|
- onGeometryDeleted(geometry: Geometry): void;
|
|
|
|
- private _afterRender;
|
|
|
|
- private _onMessageFromWorker;
|
|
|
|
- }
|
|
|
|
- class CollisionCoordinatorLegacy implements ICollisionCoordinator {
|
|
|
|
- private _scene;
|
|
|
|
- private _scaledPosition;
|
|
|
|
- private _scaledVelocity;
|
|
|
|
- private _finalPosition;
|
|
|
|
- getNewPosition(position: Vector3, velocity: Vector3, collider: Collider, maximumRetry: number, excludedMesh: AbstractMesh, onNewPosition: (collisionIndex: number, newPosition: Vector3, collidedMesh?: AbstractMesh) => void, collisionIndex: number): void;
|
|
|
|
- init(scene: Scene): void;
|
|
|
|
- destroy(): void;
|
|
|
|
- onMeshAdded(mesh: AbstractMesh): void;
|
|
|
|
- onMeshUpdated(mesh: AbstractMesh): void;
|
|
|
|
- onMeshRemoved(mesh: AbstractMesh): void;
|
|
|
|
- onGeometryAdded(geometry: Geometry): void;
|
|
|
|
- onGeometryUpdated(geometry: Geometry): void;
|
|
|
|
- onGeometryDeleted(geometry: Geometry): void;
|
|
|
|
- private _collideWithWorld(position, velocity, collider, maximumRetry, finalPosition, excludedMesh?);
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-declare module BABYLON {
|
|
|
|
- var WorkerIncluded: boolean;
|
|
|
|
- class CollisionCache {
|
|
|
|
- private _meshes;
|
|
|
|
- private _geometries;
|
|
|
|
- getMeshes(): {
|
|
|
|
- [n: number]: SerializedMesh;
|
|
|
|
- };
|
|
|
|
- getGeometries(): {
|
|
|
|
- [s: number]: SerializedGeometry;
|
|
|
|
- };
|
|
|
|
- getMesh(id: any): SerializedMesh;
|
|
|
|
- addMesh(mesh: SerializedMesh): void;
|
|
|
|
- removeMesh(uniqueId: number): void;
|
|
|
|
- getGeometry(id: string): SerializedGeometry;
|
|
|
|
- addGeometry(geometry: SerializedGeometry): void;
|
|
|
|
- removeGeometry(id: string): void;
|
|
|
|
- }
|
|
|
|
- class CollideWorker {
|
|
|
|
- collider: Collider;
|
|
|
|
- private _collisionCache;
|
|
|
|
- private finalPosition;
|
|
|
|
- private collisionsScalingMatrix;
|
|
|
|
- private collisionTranformationMatrix;
|
|
|
|
- constructor(collider: Collider, _collisionCache: CollisionCache, finalPosition: Vector3);
|
|
|
|
- collideWithWorld(position: Vector3, velocity: Vector3, maximumRetry: number, excludedMeshUniqueId?: number): void;
|
|
|
|
- private checkCollision(mesh);
|
|
|
|
- private processCollisionsForSubMeshes(transformMatrix, mesh);
|
|
|
|
- private collideForSubMesh(subMesh, transformMatrix, meshGeometry);
|
|
|
|
- private checkSubmeshCollision(subMesh);
|
|
|
|
- }
|
|
|
|
- interface ICollisionDetector {
|
|
|
|
- onInit(payload: InitPayload): void;
|
|
|
|
- onUpdate(payload: UpdatePayload): void;
|
|
|
|
- onCollision(payload: CollidePayload): void;
|
|
|
|
- }
|
|
|
|
- class CollisionDetectorTransferable implements ICollisionDetector {
|
|
|
|
- private _collisionCache;
|
|
|
|
- onInit(payload: InitPayload): void;
|
|
|
|
- onUpdate(payload: UpdatePayload): void;
|
|
|
|
- onCollision(payload: CollidePayload): void;
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-declare module BABYLON {
|
|
|
|
- class IntersectionInfo {
|
|
|
|
- bu: number;
|
|
|
|
- bv: number;
|
|
|
|
- distance: number;
|
|
|
|
- faceId: number;
|
|
|
|
- subMeshId: number;
|
|
|
|
- constructor(bu: number, bv: number, distance: number);
|
|
|
|
- }
|
|
|
|
- class PickingInfo {
|
|
|
|
- hit: boolean;
|
|
|
|
- distance: number;
|
|
|
|
- pickedPoint: Vector3;
|
|
|
|
- pickedMesh: AbstractMesh;
|
|
|
|
- bu: number;
|
|
|
|
- bv: number;
|
|
|
|
- faceId: number;
|
|
|
|
- subMeshId: number;
|
|
|
|
- pickedSprite: Sprite;
|
|
|
|
- getNormal(useWorldCoordinates?: boolean, useVerticesNormals?: boolean): Vector3;
|
|
|
|
- getTextureCoordinates(): Vector2;
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-declare module BABYLON {
|
|
|
|
class BoundingBox implements ICullable {
|
|
class BoundingBox implements ICullable {
|
|
minimum: Vector3;
|
|
minimum: Vector3;
|
|
maximum: Vector3;
|
|
maximum: Vector3;
|
|
@@ -4110,183 +4110,55 @@ declare module BABYLON {
|
|
radiusWorld: number;
|
|
radiusWorld: number;
|
|
private _tempRadiusVector;
|
|
private _tempRadiusVector;
|
|
constructor(minimum: Vector3, maximum: Vector3);
|
|
constructor(minimum: Vector3, maximum: Vector3);
|
|
- _update(world: Matrix): void;
|
|
|
|
- isInFrustum(frustumPlanes: Plane[]): boolean;
|
|
|
|
- intersectsPoint(point: Vector3): boolean;
|
|
|
|
- static Intersects(sphere0: BoundingSphere, sphere1: BoundingSphere): boolean;
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-declare module BABYLON {
|
|
|
|
- class Ray {
|
|
|
|
- origin: Vector3;
|
|
|
|
- direction: Vector3;
|
|
|
|
- length: number;
|
|
|
|
- private _edge1;
|
|
|
|
- private _edge2;
|
|
|
|
- private _pvec;
|
|
|
|
- private _tvec;
|
|
|
|
- private _qvec;
|
|
|
|
- private _tmpRay;
|
|
|
|
- private _rayHelper;
|
|
|
|
- constructor(origin: Vector3, direction: Vector3, length?: number);
|
|
|
|
- intersectsBoxMinMax(minimum: Vector3, maximum: Vector3): boolean;
|
|
|
|
- intersectsBox(box: BoundingBox): boolean;
|
|
|
|
- intersectsSphere(sphere: BoundingSphere): boolean;
|
|
|
|
- intersectsTriangle(vertex0: Vector3, vertex1: Vector3, vertex2: Vector3): IntersectionInfo;
|
|
|
|
- intersectsPlane(plane: Plane): number;
|
|
|
|
- intersectsMesh(mesh: AbstractMesh, fastCheck?: boolean): PickingInfo;
|
|
|
|
- intersectsMeshes(meshes: Array<AbstractMesh>, fastCheck?: boolean, results?: Array<PickingInfo>): Array<PickingInfo>;
|
|
|
|
- private _comparePickingInfo(pickingInfoA, pickingInfoB);
|
|
|
|
- private static smallnum;
|
|
|
|
- private static rayl;
|
|
|
|
- /**
|
|
|
|
- * Intersection test between the ray and a given segment whithin a given tolerance (threshold)
|
|
|
|
- * @param sega the first point of the segment to test the intersection against
|
|
|
|
- * @param segb the second point of the segment to test the intersection against
|
|
|
|
- * @param threshold the tolerance margin, if the ray doesn't intersect the segment but is close to the given threshold, the intersection is successful
|
|
|
|
- * @return the distance from the ray origin to the intersection point if there's intersection, or -1 if there's no intersection
|
|
|
|
- */
|
|
|
|
- intersectionSegment(sega: Vector3, segb: Vector3, threshold: number): number;
|
|
|
|
- static CreateNew(x: number, y: number, viewportWidth: number, viewportHeight: number, world: Matrix, view: Matrix, projection: Matrix): Ray;
|
|
|
|
- /**
|
|
|
|
- * Function will create a new transformed ray starting from origin and ending at the end point. Ray's length will be set, and ray will be
|
|
|
|
- * transformed to the given world matrix.
|
|
|
|
- * @param origin The origin point
|
|
|
|
- * @param end The end point
|
|
|
|
- * @param world a matrix to transform the ray to. Default is the identity matrix.
|
|
|
|
- */
|
|
|
|
- static CreateNewFromTo(origin: Vector3, end: Vector3, world?: Matrix): Ray;
|
|
|
|
- static Transform(ray: Ray, matrix: Matrix): Ray;
|
|
|
|
- static TransformToRef(ray: Ray, matrix: Matrix, result: Ray): void;
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-declare module BABYLON.Debug {
|
|
|
|
- class AxesViewer {
|
|
|
|
- private _xline;
|
|
|
|
- private _yline;
|
|
|
|
- private _zline;
|
|
|
|
- private _xmesh;
|
|
|
|
- private _ymesh;
|
|
|
|
- private _zmesh;
|
|
|
|
- scene: Scene;
|
|
|
|
- scaleLines: number;
|
|
|
|
- constructor(scene: Scene, scaleLines?: number);
|
|
|
|
- update(position: Vector3, xaxis: Vector3, yaxis: Vector3, zaxis: Vector3): void;
|
|
|
|
- dispose(): void;
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-declare module BABYLON.Debug {
|
|
|
|
- class BoneAxesViewer extends Debug.AxesViewer {
|
|
|
|
- mesh: Mesh;
|
|
|
|
- bone: Bone;
|
|
|
|
- pos: Vector3;
|
|
|
|
- xaxis: Vector3;
|
|
|
|
- yaxis: Vector3;
|
|
|
|
- zaxis: Vector3;
|
|
|
|
- constructor(scene: Scene, bone: Bone, mesh: Mesh, scaleLines?: number);
|
|
|
|
- update(): void;
|
|
|
|
- dispose(): void;
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-declare module BABYLON {
|
|
|
|
- class DebugLayer {
|
|
|
|
- private _scene;
|
|
|
|
- static InspectorURL: string;
|
|
|
|
- private _inspector;
|
|
|
|
- constructor(scene: Scene);
|
|
|
|
- /** Creates the inspector window. */
|
|
|
|
- private _createInspector(config?);
|
|
|
|
- isVisible(): boolean;
|
|
|
|
- hide(): void;
|
|
|
|
- show(config?: {
|
|
|
|
- popup?: boolean;
|
|
|
|
- initialTab?: number;
|
|
|
|
- parentElement?: HTMLElement;
|
|
|
|
- newColors?: {
|
|
|
|
- backgroundColor?: string;
|
|
|
|
- backgroundColorLighter?: string;
|
|
|
|
- backgroundColorLighter2?: string;
|
|
|
|
- backgroundColorLighter3?: string;
|
|
|
|
- color?: string;
|
|
|
|
- colorTop?: string;
|
|
|
|
- colorBot?: string;
|
|
|
|
- };
|
|
|
|
- }): void;
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-declare module BABYLON.Debug {
|
|
|
|
- class PhysicsViewer {
|
|
|
|
- protected _impostors: Array<PhysicsImpostor>;
|
|
|
|
- protected _meshes: Array<AbstractMesh>;
|
|
|
|
- protected _scene: Scene;
|
|
|
|
- protected _numMeshes: number;
|
|
|
|
- protected _physicsEnginePlugin: IPhysicsEnginePlugin;
|
|
|
|
- private _renderFunction;
|
|
|
|
- private _debugBoxMesh;
|
|
|
|
- private _debugSphereMesh;
|
|
|
|
- private _debugMaterial;
|
|
|
|
- constructor(scene: Scene);
|
|
|
|
- protected _updateDebugMeshes(): void;
|
|
|
|
- showImpostor(impostor: PhysicsImpostor): void;
|
|
|
|
- hideImpostor(impostor: PhysicsImpostor): void;
|
|
|
|
- private _getDebugMaterial(scene);
|
|
|
|
- private _getDebugBoxMesh(scene);
|
|
|
|
- private _getDebugSphereMesh(scene);
|
|
|
|
- private _getDebugMesh(impostor, scene);
|
|
|
|
- dispose(): void;
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-declare module BABYLON {
|
|
|
|
- class RayHelper {
|
|
|
|
- ray: Ray;
|
|
|
|
- private _renderPoints;
|
|
|
|
- private _renderLine;
|
|
|
|
- private _renderFunction;
|
|
|
|
- private _scene;
|
|
|
|
- private _updateToMeshFunction;
|
|
|
|
- private _attachedToMesh;
|
|
|
|
- private _meshSpaceDirection;
|
|
|
|
- private _meshSpaceOrigin;
|
|
|
|
- static CreateAndShow(ray: Ray, scene: Scene, color: Color3): RayHelper;
|
|
|
|
- constructor(ray: Ray);
|
|
|
|
- show(scene: Scene, color: Color3): void;
|
|
|
|
- hide(): void;
|
|
|
|
- private _render();
|
|
|
|
- attachToMesh(mesh: AbstractMesh, meshSpaceDirection?: Vector3, meshSpaceOrigin?: Vector3, length?: number): void;
|
|
|
|
- detachFromMesh(): void;
|
|
|
|
- private _updateToMesh();
|
|
|
|
- dispose(): void;
|
|
|
|
|
|
+ _update(world: Matrix): void;
|
|
|
|
+ isInFrustum(frustumPlanes: Plane[]): boolean;
|
|
|
|
+ intersectsPoint(point: Vector3): boolean;
|
|
|
|
+ static Intersects(sphere0: BoundingSphere, sphere1: BoundingSphere): boolean;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
-declare module BABYLON.Debug {
|
|
|
|
- /**
|
|
|
|
- * Demo available here: http://www.babylonjs-playground.com/#1BZJVJ#8
|
|
|
|
- */
|
|
|
|
- class SkeletonViewer {
|
|
|
|
- skeleton: Skeleton;
|
|
|
|
- mesh: AbstractMesh;
|
|
|
|
- autoUpdateBonesMatrices: boolean;
|
|
|
|
- renderingGroupId: number;
|
|
|
|
- color: Color3;
|
|
|
|
- private _scene;
|
|
|
|
- private _debugLines;
|
|
|
|
- private _debugMesh;
|
|
|
|
- private _isEnabled;
|
|
|
|
- private _renderFunction;
|
|
|
|
- constructor(skeleton: Skeleton, mesh: AbstractMesh, scene: Scene, autoUpdateBonesMatrices?: boolean, renderingGroupId?: number);
|
|
|
|
- isEnabled: boolean;
|
|
|
|
- private _getBonePosition(position, bone, meshMat, x?, y?, z?);
|
|
|
|
- private _getLinesForBonesWithLength(bones, meshMat);
|
|
|
|
- private _getLinesForBonesNoLength(bones, meshMat);
|
|
|
|
- update(): void;
|
|
|
|
- dispose(): void;
|
|
|
|
|
|
+declare module BABYLON {
|
|
|
|
+ class Ray {
|
|
|
|
+ origin: Vector3;
|
|
|
|
+ direction: Vector3;
|
|
|
|
+ length: number;
|
|
|
|
+ private _edge1;
|
|
|
|
+ private _edge2;
|
|
|
|
+ private _pvec;
|
|
|
|
+ private _tvec;
|
|
|
|
+ private _qvec;
|
|
|
|
+ private _tmpRay;
|
|
|
|
+ private _rayHelper;
|
|
|
|
+ constructor(origin: Vector3, direction: Vector3, length?: number);
|
|
|
|
+ intersectsBoxMinMax(minimum: Vector3, maximum: Vector3): boolean;
|
|
|
|
+ intersectsBox(box: BoundingBox): boolean;
|
|
|
|
+ intersectsSphere(sphere: BoundingSphere): boolean;
|
|
|
|
+ intersectsTriangle(vertex0: Vector3, vertex1: Vector3, vertex2: Vector3): IntersectionInfo;
|
|
|
|
+ intersectsPlane(plane: Plane): number;
|
|
|
|
+ intersectsMesh(mesh: AbstractMesh, fastCheck?: boolean): PickingInfo;
|
|
|
|
+ intersectsMeshes(meshes: Array<AbstractMesh>, fastCheck?: boolean, results?: Array<PickingInfo>): Array<PickingInfo>;
|
|
|
|
+ private _comparePickingInfo(pickingInfoA, pickingInfoB);
|
|
|
|
+ private static smallnum;
|
|
|
|
+ private static rayl;
|
|
|
|
+ /**
|
|
|
|
+ * Intersection test between the ray and a given segment whithin a given tolerance (threshold)
|
|
|
|
+ * @param sega the first point of the segment to test the intersection against
|
|
|
|
+ * @param segb the second point of the segment to test the intersection against
|
|
|
|
+ * @param threshold the tolerance margin, if the ray doesn't intersect the segment but is close to the given threshold, the intersection is successful
|
|
|
|
+ * @return the distance from the ray origin to the intersection point if there's intersection, or -1 if there's no intersection
|
|
|
|
+ */
|
|
|
|
+ intersectionSegment(sega: Vector3, segb: Vector3, threshold: number): number;
|
|
|
|
+ static CreateNew(x: number, y: number, viewportWidth: number, viewportHeight: number, world: Matrix, view: Matrix, projection: Matrix): Ray;
|
|
|
|
+ /**
|
|
|
|
+ * Function will create a new transformed ray starting from origin and ending at the end point. Ray's length will be set, and ray will be
|
|
|
|
+ * transformed to the given world matrix.
|
|
|
|
+ * @param origin The origin point
|
|
|
|
+ * @param end The end point
|
|
|
|
+ * @param world a matrix to transform the ray to. Default is the identity matrix.
|
|
|
|
+ */
|
|
|
|
+ static CreateNewFromTo(origin: Vector3, end: Vector3, world?: Matrix): Ray;
|
|
|
|
+ static Transform(ray: Ray, matrix: Matrix): Ray;
|
|
|
|
+ static TransformToRef(ray: Ray, matrix: Matrix, result: Ray): void;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
@@ -4546,6 +4418,134 @@ declare module BABYLON {
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+declare module BABYLON.Debug {
|
|
|
|
+ class AxesViewer {
|
|
|
|
+ private _xline;
|
|
|
|
+ private _yline;
|
|
|
|
+ private _zline;
|
|
|
|
+ private _xmesh;
|
|
|
|
+ private _ymesh;
|
|
|
|
+ private _zmesh;
|
|
|
|
+ scene: Scene;
|
|
|
|
+ scaleLines: number;
|
|
|
|
+ constructor(scene: Scene, scaleLines?: number);
|
|
|
|
+ update(position: Vector3, xaxis: Vector3, yaxis: Vector3, zaxis: Vector3): void;
|
|
|
|
+ dispose(): void;
|
|
|
|
+ }
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+declare module BABYLON.Debug {
|
|
|
|
+ class BoneAxesViewer extends Debug.AxesViewer {
|
|
|
|
+ mesh: Mesh;
|
|
|
|
+ bone: Bone;
|
|
|
|
+ pos: Vector3;
|
|
|
|
+ xaxis: Vector3;
|
|
|
|
+ yaxis: Vector3;
|
|
|
|
+ zaxis: Vector3;
|
|
|
|
+ constructor(scene: Scene, bone: Bone, mesh: Mesh, scaleLines?: number);
|
|
|
|
+ update(): void;
|
|
|
|
+ dispose(): void;
|
|
|
|
+ }
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+declare module BABYLON {
|
|
|
|
+ class DebugLayer {
|
|
|
|
+ private _scene;
|
|
|
|
+ static InspectorURL: string;
|
|
|
|
+ private _inspector;
|
|
|
|
+ constructor(scene: Scene);
|
|
|
|
+ /** Creates the inspector window. */
|
|
|
|
+ private _createInspector(config?);
|
|
|
|
+ isVisible(): boolean;
|
|
|
|
+ hide(): void;
|
|
|
|
+ show(config?: {
|
|
|
|
+ popup?: boolean;
|
|
|
|
+ initialTab?: number;
|
|
|
|
+ parentElement?: HTMLElement;
|
|
|
|
+ newColors?: {
|
|
|
|
+ backgroundColor?: string;
|
|
|
|
+ backgroundColorLighter?: string;
|
|
|
|
+ backgroundColorLighter2?: string;
|
|
|
|
+ backgroundColorLighter3?: string;
|
|
|
|
+ color?: string;
|
|
|
|
+ colorTop?: string;
|
|
|
|
+ colorBot?: string;
|
|
|
|
+ };
|
|
|
|
+ }): void;
|
|
|
|
+ }
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+declare module BABYLON.Debug {
|
|
|
|
+ class PhysicsViewer {
|
|
|
|
+ protected _impostors: Array<PhysicsImpostor>;
|
|
|
|
+ protected _meshes: Array<AbstractMesh>;
|
|
|
|
+ protected _scene: Scene;
|
|
|
|
+ protected _numMeshes: number;
|
|
|
|
+ protected _physicsEnginePlugin: IPhysicsEnginePlugin;
|
|
|
|
+ private _renderFunction;
|
|
|
|
+ private _debugBoxMesh;
|
|
|
|
+ private _debugSphereMesh;
|
|
|
|
+ private _debugMaterial;
|
|
|
|
+ constructor(scene: Scene);
|
|
|
|
+ protected _updateDebugMeshes(): void;
|
|
|
|
+ showImpostor(impostor: PhysicsImpostor): void;
|
|
|
|
+ hideImpostor(impostor: PhysicsImpostor): void;
|
|
|
|
+ private _getDebugMaterial(scene);
|
|
|
|
+ private _getDebugBoxMesh(scene);
|
|
|
|
+ private _getDebugSphereMesh(scene);
|
|
|
|
+ private _getDebugMesh(impostor, scene);
|
|
|
|
+ dispose(): void;
|
|
|
|
+ }
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+declare module BABYLON {
|
|
|
|
+ class RayHelper {
|
|
|
|
+ ray: Ray;
|
|
|
|
+ private _renderPoints;
|
|
|
|
+ private _renderLine;
|
|
|
|
+ private _renderFunction;
|
|
|
|
+ private _scene;
|
|
|
|
+ private _updateToMeshFunction;
|
|
|
|
+ private _attachedToMesh;
|
|
|
|
+ private _meshSpaceDirection;
|
|
|
|
+ private _meshSpaceOrigin;
|
|
|
|
+ static CreateAndShow(ray: Ray, scene: Scene, color: Color3): RayHelper;
|
|
|
|
+ constructor(ray: Ray);
|
|
|
|
+ show(scene: Scene, color: Color3): void;
|
|
|
|
+ hide(): void;
|
|
|
|
+ private _render();
|
|
|
|
+ attachToMesh(mesh: AbstractMesh, meshSpaceDirection?: Vector3, meshSpaceOrigin?: Vector3, length?: number): void;
|
|
|
|
+ detachFromMesh(): void;
|
|
|
|
+ private _updateToMesh();
|
|
|
|
+ dispose(): void;
|
|
|
|
+ }
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+declare module BABYLON.Debug {
|
|
|
|
+ /**
|
|
|
|
+ * Demo available here: http://www.babylonjs-playground.com/#1BZJVJ#8
|
|
|
|
+ */
|
|
|
|
+ class SkeletonViewer {
|
|
|
|
+ skeleton: Skeleton;
|
|
|
|
+ mesh: AbstractMesh;
|
|
|
|
+ autoUpdateBonesMatrices: boolean;
|
|
|
|
+ renderingGroupId: number;
|
|
|
|
+ color: Color3;
|
|
|
|
+ private _scene;
|
|
|
|
+ private _debugLines;
|
|
|
|
+ private _debugMesh;
|
|
|
|
+ private _isEnabled;
|
|
|
|
+ private _renderFunction;
|
|
|
|
+ constructor(skeleton: Skeleton, mesh: AbstractMesh, scene: Scene, autoUpdateBonesMatrices?: boolean, renderingGroupId?: number);
|
|
|
|
+ isEnabled: boolean;
|
|
|
|
+ private _getBonePosition(position, bone, meshMat, x?, y?, z?);
|
|
|
|
+ private _getLinesForBonesWithLength(bones, meshMat);
|
|
|
|
+ private _getLinesForBonesNoLength(bones, meshMat);
|
|
|
|
+ update(): void;
|
|
|
|
+ dispose(): void;
|
|
|
|
+ }
|
|
|
|
+}
|
|
|
|
+
|
|
declare module BABYLON {
|
|
declare module BABYLON {
|
|
class LensFlare {
|
|
class LensFlare {
|
|
size: number;
|
|
size: number;
|
|
@@ -12902,6 +12902,36 @@ declare module BABYLON {
|
|
}
|
|
}
|
|
|
|
|
|
declare module BABYLON {
|
|
declare module BABYLON {
|
|
|
|
+ class ReflectionProbe {
|
|
|
|
+ name: string;
|
|
|
|
+ private _scene;
|
|
|
|
+ private _renderTargetTexture;
|
|
|
|
+ private _projectionMatrix;
|
|
|
|
+ private _viewMatrix;
|
|
|
|
+ private _target;
|
|
|
|
+ private _add;
|
|
|
|
+ private _attachedMesh;
|
|
|
|
+ invertYAxis: boolean;
|
|
|
|
+ position: Vector3;
|
|
|
|
+ constructor(name: string, size: number, scene: Scene, generateMipMaps?: boolean);
|
|
|
|
+ samples: number;
|
|
|
|
+ refreshRate: number;
|
|
|
|
+ getScene(): Scene;
|
|
|
|
+ readonly cubeTexture: RenderTargetTexture;
|
|
|
|
+ readonly renderList: AbstractMesh[];
|
|
|
|
+ attachToMesh(mesh: AbstractMesh): void;
|
|
|
|
+ /**
|
|
|
|
+ * Specifies whether or not the stencil and depth buffer are cleared between two rendering groups.
|
|
|
|
+ *
|
|
|
|
+ * @param renderingGroupId The rendering group id corresponding to its index
|
|
|
|
+ * @param autoClearDepthStencil Automatically clears depth and stencil between groups if true.
|
|
|
|
+ */
|
|
|
|
+ setRenderingAutoClearDepthStencil(renderingGroupId: number, autoClearDepthStencil: boolean): void;
|
|
|
|
+ dispose(): void;
|
|
|
|
+ }
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+declare module BABYLON {
|
|
class AnaglyphPostProcess extends PostProcess {
|
|
class AnaglyphPostProcess extends PostProcess {
|
|
private _passedProcess;
|
|
private _passedProcess;
|
|
constructor(name: string, options: number | PostProcessOptions, rigCameras: Camera[], samplingMode?: number, engine?: Engine, reusable?: boolean);
|
|
constructor(name: string, options: number | PostProcessOptions, rigCameras: Camera[], samplingMode?: number, engine?: Engine, reusable?: boolean);
|
|
@@ -13423,36 +13453,6 @@ declare module BABYLON {
|
|
}
|
|
}
|
|
|
|
|
|
declare module BABYLON {
|
|
declare module BABYLON {
|
|
- class ReflectionProbe {
|
|
|
|
- name: string;
|
|
|
|
- private _scene;
|
|
|
|
- private _renderTargetTexture;
|
|
|
|
- private _projectionMatrix;
|
|
|
|
- private _viewMatrix;
|
|
|
|
- private _target;
|
|
|
|
- private _add;
|
|
|
|
- private _attachedMesh;
|
|
|
|
- invertYAxis: boolean;
|
|
|
|
- position: Vector3;
|
|
|
|
- constructor(name: string, size: number, scene: Scene, generateMipMaps?: boolean);
|
|
|
|
- samples: number;
|
|
|
|
- refreshRate: number;
|
|
|
|
- getScene(): Scene;
|
|
|
|
- readonly cubeTexture: RenderTargetTexture;
|
|
|
|
- readonly renderList: AbstractMesh[];
|
|
|
|
- attachToMesh(mesh: AbstractMesh): void;
|
|
|
|
- /**
|
|
|
|
- * Specifies whether or not the stencil and depth buffer are cleared between two rendering groups.
|
|
|
|
- *
|
|
|
|
- * @param renderingGroupId The rendering group id corresponding to its index
|
|
|
|
- * @param autoClearDepthStencil Automatically clears depth and stencil between groups if true.
|
|
|
|
- */
|
|
|
|
- setRenderingAutoClearDepthStencil(renderingGroupId: number, autoClearDepthStencil: boolean): void;
|
|
|
|
- dispose(): void;
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-declare module BABYLON {
|
|
|
|
class BoundingBoxRenderer {
|
|
class BoundingBoxRenderer {
|
|
frontColor: Color3;
|
|
frontColor: Color3;
|
|
backColor: Color3;
|
|
backColor: Color3;
|