|
@@ -10127,70 +10127,6 @@ declare module BABYLON {
|
|
|
}
|
|
|
|
|
|
declare module BABYLON {
|
|
|
- class MorphTarget {
|
|
|
- name: string;
|
|
|
- animations: Animation[];
|
|
|
- private _positions;
|
|
|
- private _normals;
|
|
|
- private _tangents;
|
|
|
- private _influence;
|
|
|
- onInfluenceChanged: Observable<boolean>;
|
|
|
- influence: number;
|
|
|
- constructor(name: string, influence?: number);
|
|
|
- readonly hasPositions: boolean;
|
|
|
- readonly hasNormals: boolean;
|
|
|
- readonly hasTangents: boolean;
|
|
|
- setPositions(data: Nullable<FloatArray>): void;
|
|
|
- getPositions(): Nullable<FloatArray>;
|
|
|
- setNormals(data: Nullable<FloatArray>): void;
|
|
|
- getNormals(): Nullable<FloatArray>;
|
|
|
- setTangents(data: Nullable<FloatArray>): void;
|
|
|
- getTangents(): Nullable<FloatArray>;
|
|
|
- /**
|
|
|
- * Serializes the current target into a Serialization object.
|
|
|
- * Returns the serialized object.
|
|
|
- */
|
|
|
- serialize(): any;
|
|
|
- static Parse(serializationObject: any): MorphTarget;
|
|
|
- static FromMesh(mesh: AbstractMesh, name?: string, influence?: number): MorphTarget;
|
|
|
- }
|
|
|
-}
|
|
|
-
|
|
|
-declare module BABYLON {
|
|
|
- class MorphTargetManager {
|
|
|
- private _targets;
|
|
|
- private _targetObservable;
|
|
|
- private _activeTargets;
|
|
|
- private _scene;
|
|
|
- private _influences;
|
|
|
- private _supportsNormals;
|
|
|
- private _supportsTangents;
|
|
|
- private _vertexCount;
|
|
|
- private _uniqueId;
|
|
|
- private _tempInfluences;
|
|
|
- constructor(scene?: Nullable<Scene>);
|
|
|
- readonly uniqueId: number;
|
|
|
- readonly vertexCount: number;
|
|
|
- readonly supportsNormals: boolean;
|
|
|
- readonly supportsTangents: boolean;
|
|
|
- readonly numTargets: number;
|
|
|
- readonly numInfluencers: number;
|
|
|
- readonly influences: Float32Array;
|
|
|
- getActiveTarget(index: number): MorphTarget;
|
|
|
- getTarget(index: number): MorphTarget;
|
|
|
- addTarget(target: MorphTarget): void;
|
|
|
- removeTarget(target: MorphTarget): void;
|
|
|
- /**
|
|
|
- * Serializes the current manager into a Serialization object.
|
|
|
- * Returns the serialized object.
|
|
|
- */
|
|
|
- serialize(): any;
|
|
|
- private _syncActiveTargets(needUpdate);
|
|
|
- static Parse(serializationObject: any, scene: Scene): MorphTargetManager;
|
|
|
- }
|
|
|
-}
|
|
|
-
|
|
|
-declare module BABYLON {
|
|
|
class AbstractMesh extends TransformNode implements IDisposable, ICullable, IGetSetVerticesData {
|
|
|
static OCCLUSION_TYPE_NONE: number;
|
|
|
static OCCLUSION_TYPE_OPTIMISTIC: number;
|
|
@@ -13547,6 +13483,15 @@ declare module BABYLON {
|
|
|
*/
|
|
|
locallyTranslate(vector3: Vector3): TransformNode;
|
|
|
private static _lookAtVectorCache;
|
|
|
+ /**
|
|
|
+ * Orients a mesh towards a target point. Mesh must be drawn facing user.
|
|
|
+ * @param targetPoint the position (must be in same space as current mesh) to look at
|
|
|
+ * @param yawCor optional yaw (y-axis) correction in radians
|
|
|
+ * @param pitchCor optional pitch (x-axis) correction in radians
|
|
|
+ * @param rollCor optional roll (z-axis) correction in radians
|
|
|
+ * @param space the choosen space of the target
|
|
|
+ * @returns the TransformNode.
|
|
|
+ */
|
|
|
lookAt(targetPoint: Vector3, yawCor?: number, pitchCor?: number, rollCor?: number, space?: Space): TransformNode;
|
|
|
/**
|
|
|
* Returns a new Vector3 what is the localAxis, expressed in the mesh local space, rotated like the mesh.
|
|
@@ -13775,6 +13720,70 @@ declare module BABYLON {
|
|
|
}
|
|
|
|
|
|
declare module BABYLON {
|
|
|
+ class MorphTarget {
|
|
|
+ name: string;
|
|
|
+ animations: Animation[];
|
|
|
+ private _positions;
|
|
|
+ private _normals;
|
|
|
+ private _tangents;
|
|
|
+ private _influence;
|
|
|
+ onInfluenceChanged: Observable<boolean>;
|
|
|
+ influence: number;
|
|
|
+ constructor(name: string, influence?: number);
|
|
|
+ readonly hasPositions: boolean;
|
|
|
+ readonly hasNormals: boolean;
|
|
|
+ readonly hasTangents: boolean;
|
|
|
+ setPositions(data: Nullable<FloatArray>): void;
|
|
|
+ getPositions(): Nullable<FloatArray>;
|
|
|
+ setNormals(data: Nullable<FloatArray>): void;
|
|
|
+ getNormals(): Nullable<FloatArray>;
|
|
|
+ setTangents(data: Nullable<FloatArray>): void;
|
|
|
+ getTangents(): Nullable<FloatArray>;
|
|
|
+ /**
|
|
|
+ * Serializes the current target into a Serialization object.
|
|
|
+ * Returns the serialized object.
|
|
|
+ */
|
|
|
+ serialize(): any;
|
|
|
+ static Parse(serializationObject: any): MorphTarget;
|
|
|
+ static FromMesh(mesh: AbstractMesh, name?: string, influence?: number): MorphTarget;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+declare module BABYLON {
|
|
|
+ class MorphTargetManager {
|
|
|
+ private _targets;
|
|
|
+ private _targetObservable;
|
|
|
+ private _activeTargets;
|
|
|
+ private _scene;
|
|
|
+ private _influences;
|
|
|
+ private _supportsNormals;
|
|
|
+ private _supportsTangents;
|
|
|
+ private _vertexCount;
|
|
|
+ private _uniqueId;
|
|
|
+ private _tempInfluences;
|
|
|
+ constructor(scene?: Nullable<Scene>);
|
|
|
+ readonly uniqueId: number;
|
|
|
+ readonly vertexCount: number;
|
|
|
+ readonly supportsNormals: boolean;
|
|
|
+ readonly supportsTangents: boolean;
|
|
|
+ readonly numTargets: number;
|
|
|
+ readonly numInfluencers: number;
|
|
|
+ readonly influences: Float32Array;
|
|
|
+ getActiveTarget(index: number): MorphTarget;
|
|
|
+ getTarget(index: number): MorphTarget;
|
|
|
+ addTarget(target: MorphTarget): void;
|
|
|
+ removeTarget(target: MorphTarget): void;
|
|
|
+ /**
|
|
|
+ * Serializes the current manager into a Serialization object.
|
|
|
+ * Returns the serialized object.
|
|
|
+ */
|
|
|
+ serialize(): any;
|
|
|
+ private _syncActiveTargets(needUpdate);
|
|
|
+ static Parse(serializationObject: any, scene: Scene): MorphTargetManager;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+declare module BABYLON {
|
|
|
class GPUParticleSystem implements IDisposable, IParticleSystem {
|
|
|
name: string;
|
|
|
id: string;
|
|
@@ -15735,6 +15744,75 @@ declare module BABYLON {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+declare module BABYLON {
|
|
|
+ class Sprite {
|
|
|
+ name: string;
|
|
|
+ position: Vector3;
|
|
|
+ color: Color4;
|
|
|
+ width: number;
|
|
|
+ height: number;
|
|
|
+ angle: number;
|
|
|
+ cellIndex: number;
|
|
|
+ invertU: number;
|
|
|
+ invertV: number;
|
|
|
+ disposeWhenFinishedAnimating: boolean;
|
|
|
+ animations: Animation[];
|
|
|
+ isPickable: boolean;
|
|
|
+ actionManager: ActionManager;
|
|
|
+ private _animationStarted;
|
|
|
+ private _loopAnimation;
|
|
|
+ private _fromIndex;
|
|
|
+ private _toIndex;
|
|
|
+ private _delay;
|
|
|
+ private _direction;
|
|
|
+ private _manager;
|
|
|
+ private _time;
|
|
|
+ private _onAnimationEnd;
|
|
|
+ size: number;
|
|
|
+ constructor(name: string, manager: SpriteManager);
|
|
|
+ playAnimation(from: number, to: number, loop: boolean, delay: number, onAnimationEnd: () => void): void;
|
|
|
+ stopAnimation(): void;
|
|
|
+ _animate(deltaTime: number): void;
|
|
|
+ dispose(): void;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+declare module BABYLON {
|
|
|
+ class SpriteManager {
|
|
|
+ name: string;
|
|
|
+ sprites: Sprite[];
|
|
|
+ renderingGroupId: number;
|
|
|
+ layerMask: number;
|
|
|
+ fogEnabled: boolean;
|
|
|
+ isPickable: boolean;
|
|
|
+ cellWidth: number;
|
|
|
+ cellHeight: number;
|
|
|
+ /**
|
|
|
+ * An event triggered when the manager is disposed.
|
|
|
+ * @type {BABYLON.Observable}
|
|
|
+ */
|
|
|
+ onDisposeObservable: Observable<SpriteManager>;
|
|
|
+ private _onDisposeObserver;
|
|
|
+ onDispose: () => void;
|
|
|
+ private _capacity;
|
|
|
+ private _spriteTexture;
|
|
|
+ private _epsilon;
|
|
|
+ private _scene;
|
|
|
+ private _vertexData;
|
|
|
+ private _buffer;
|
|
|
+ private _vertexBuffers;
|
|
|
+ private _indexBuffer;
|
|
|
+ private _effectBase;
|
|
|
+ private _effectFog;
|
|
|
+ texture: Texture;
|
|
|
+ constructor(name: string, imgUrl: string, capacity: number, cellSize: any, scene: Scene, epsilon?: number, samplingMode?: number);
|
|
|
+ private _appendSpriteVertex(index, sprite, offsetX, offsetY, rowSize);
|
|
|
+ intersects(ray: Ray, camera: Camera, predicate?: (sprite: Sprite) => boolean, fastCheck?: boolean): Nullable<PickingInfo>;
|
|
|
+ render(): void;
|
|
|
+ dispose(): void;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
declare module BABYLON.Internals {
|
|
|
class _AlphaState {
|
|
|
private _isAlphaBlendDirty;
|
|
@@ -15818,75 +15896,6 @@ declare module BABYLON.Internals {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-declare module BABYLON {
|
|
|
- class Sprite {
|
|
|
- name: string;
|
|
|
- position: Vector3;
|
|
|
- color: Color4;
|
|
|
- width: number;
|
|
|
- height: number;
|
|
|
- angle: number;
|
|
|
- cellIndex: number;
|
|
|
- invertU: number;
|
|
|
- invertV: number;
|
|
|
- disposeWhenFinishedAnimating: boolean;
|
|
|
- animations: Animation[];
|
|
|
- isPickable: boolean;
|
|
|
- actionManager: ActionManager;
|
|
|
- private _animationStarted;
|
|
|
- private _loopAnimation;
|
|
|
- private _fromIndex;
|
|
|
- private _toIndex;
|
|
|
- private _delay;
|
|
|
- private _direction;
|
|
|
- private _manager;
|
|
|
- private _time;
|
|
|
- private _onAnimationEnd;
|
|
|
- size: number;
|
|
|
- constructor(name: string, manager: SpriteManager);
|
|
|
- playAnimation(from: number, to: number, loop: boolean, delay: number, onAnimationEnd: () => void): void;
|
|
|
- stopAnimation(): void;
|
|
|
- _animate(deltaTime: number): void;
|
|
|
- dispose(): void;
|
|
|
- }
|
|
|
-}
|
|
|
-
|
|
|
-declare module BABYLON {
|
|
|
- class SpriteManager {
|
|
|
- name: string;
|
|
|
- sprites: Sprite[];
|
|
|
- renderingGroupId: number;
|
|
|
- layerMask: number;
|
|
|
- fogEnabled: boolean;
|
|
|
- isPickable: boolean;
|
|
|
- cellWidth: number;
|
|
|
- cellHeight: number;
|
|
|
- /**
|
|
|
- * An event triggered when the manager is disposed.
|
|
|
- * @type {BABYLON.Observable}
|
|
|
- */
|
|
|
- onDisposeObservable: Observable<SpriteManager>;
|
|
|
- private _onDisposeObserver;
|
|
|
- onDispose: () => void;
|
|
|
- private _capacity;
|
|
|
- private _spriteTexture;
|
|
|
- private _epsilon;
|
|
|
- private _scene;
|
|
|
- private _vertexData;
|
|
|
- private _buffer;
|
|
|
- private _vertexBuffers;
|
|
|
- private _indexBuffer;
|
|
|
- private _effectBase;
|
|
|
- private _effectFog;
|
|
|
- texture: Texture;
|
|
|
- constructor(name: string, imgUrl: string, capacity: number, cellSize: any, scene: Scene, epsilon?: number, samplingMode?: number);
|
|
|
- private _appendSpriteVertex(index, sprite, offsetX, offsetY, rowSize);
|
|
|
- intersects(ray: Ray, camera: Camera, predicate?: (sprite: Sprite) => boolean, fastCheck?: boolean): Nullable<PickingInfo>;
|
|
|
- render(): void;
|
|
|
- dispose(): void;
|
|
|
- }
|
|
|
-}
|
|
|
-
|
|
|
declare module BABYLON.Internals {
|
|
|
class AndOrNotEvaluator {
|
|
|
static Eval(query: string, evaluateCallback: (val: any) => boolean): boolean;
|
|
@@ -17625,6 +17634,7 @@ declare module BABYLON {
|
|
|
onEnteringVR: () => void;
|
|
|
onExitingVR: () => void;
|
|
|
onControllerMeshLoaded: (controller: WebVRController) => void;
|
|
|
+ private _rayLength;
|
|
|
private _useCustomVRButton;
|
|
|
private _teleportationRequested;
|
|
|
private _teleportationEnabledOnLeftController;
|
|
@@ -17651,7 +17661,14 @@ declare module BABYLON {
|
|
|
private _rightLaserPointer;
|
|
|
private _currentMeshSelected;
|
|
|
onNewMeshSelected: Observable<AbstractMesh>;
|
|
|
- private _meshSelectionPredicate;
|
|
|
+ private _raySelectionPredicate;
|
|
|
+ /**
|
|
|
+ * To be optionaly changed by user to define custom ray selection
|
|
|
+ */
|
|
|
+ raySelectionPredicate: (mesh: AbstractMesh) => boolean;
|
|
|
+ /**
|
|
|
+ * To be optionaly changed by user to define custom selection logic (after ray selection)
|
|
|
+ */
|
|
|
meshSelectionPredicate: (mesh: AbstractMesh) => boolean;
|
|
|
private _currentHit;
|
|
|
private _pointerDownOnMeshAsked;
|
|
@@ -17730,6 +17747,7 @@ declare module BABYLON {
|
|
|
defaultLightingOnControllers?: boolean;
|
|
|
useCustomVRButton?: boolean;
|
|
|
customVRButton?: HTMLButtonElement;
|
|
|
+ rayLength?: number;
|
|
|
}
|
|
|
class WebVRFreeCamera extends FreeCamera implements PoseControlled {
|
|
|
private webVROptions;
|
|
@@ -18685,10 +18703,15 @@ declare module BABYLON {
|
|
|
protected _forceAlphaTest: boolean;
|
|
|
/**
|
|
|
* A fresnel is applied to the alpha of the model to ensure grazing angles edges are not alpha tested.
|
|
|
- * And/Or occlude the blended part.
|
|
|
+ * And/Or occlude the blended part. (alpha is converted to gamma to compute the fresnel)
|
|
|
*/
|
|
|
protected _useAlphaFresnel: boolean;
|
|
|
/**
|
|
|
+ * A fresnel is applied to the alpha of the model to ensure grazing angles edges are not alpha tested.
|
|
|
+ * And/Or occlude the blended part. (alpha stays linear to compute the fresnel)
|
|
|
+ */
|
|
|
+ protected _useLinearAlphaFresnel: boolean;
|
|
|
+ /**
|
|
|
* The transparency mode of the material.
|
|
|
*/
|
|
|
protected _transparencyMode: Nullable<number>;
|
|
@@ -19069,11 +19092,16 @@ declare module BABYLON {
|
|
|
twoSidedLighting: boolean;
|
|
|
/**
|
|
|
* A fresnel is applied to the alpha of the model to ensure grazing angles edges are not alpha tested.
|
|
|
- * And/Or occlude the blended part.
|
|
|
+ * And/Or occlude the blended part. (alpha is converted to gamma to compute the fresnel)
|
|
|
*/
|
|
|
useAlphaFresnel: boolean;
|
|
|
/**
|
|
|
* A fresnel is applied to the alpha of the model to ensure grazing angles edges are not alpha tested.
|
|
|
+ * And/Or occlude the blended part. (alpha stays linear to compute the fresnel)
|
|
|
+ */
|
|
|
+ useLinearAlphaFresnel: boolean;
|
|
|
+ /**
|
|
|
+ * A fresnel is applied to the alpha of the model to ensure grazing angles edges are not alpha tested.
|
|
|
* And/Or occlude the blended part.
|
|
|
*/
|
|
|
environmentBRDFTexture: Nullable<BaseTexture>;
|