@babylonjs/core 5.38.0 → 5.40.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Audio/audioSceneComponent.d.ts +11 -6
- package/Audio/audioSceneComponent.js +78 -52
- package/Audio/audioSceneComponent.js.map +1 -1
- package/Audio/sound.js +6 -4
- package/Audio/sound.js.map +1 -1
- package/Culling/ray.d.ts +1 -1
- package/Culling/ray.js.map +1 -1
- package/Engines/Extensions/engine.renderTarget.js +3 -3
- package/Engines/Extensions/engine.renderTarget.js.map +1 -1
- package/Engines/nativeEngine.js +2 -1
- package/Engines/nativeEngine.js.map +1 -1
- package/Engines/thinEngine.js +2 -2
- package/Engines/thinEngine.js.map +1 -1
- package/Gizmos/gizmo.d.ts +1 -0
- package/Gizmos/gizmo.js +1 -0
- package/Gizmos/gizmo.js.map +1 -1
- package/Gizmos/positionGizmo.d.ts +4 -0
- package/Gizmos/positionGizmo.js +4 -0
- package/Gizmos/positionGizmo.js.map +1 -1
- package/Gizmos/rotationGizmo.d.ts +4 -0
- package/Gizmos/rotationGizmo.js +4 -0
- package/Gizmos/rotationGizmo.js.map +1 -1
- package/Layers/glowLayer.d.ts +3 -3
- package/Layers/glowLayer.js +2 -1
- package/Layers/glowLayer.js.map +1 -1
- package/Materials/Node/Blocks/index.d.ts +2 -0
- package/Materials/Node/Blocks/index.js +2 -0
- package/Materials/Node/Blocks/index.js.map +1 -1
- package/Materials/Node/Blocks/matrixDeterminantBlock.d.ts +27 -0
- package/Materials/Node/Blocks/matrixDeterminantBlock.js +46 -0
- package/Materials/Node/Blocks/matrixDeterminantBlock.js.map +1 -0
- package/Materials/Node/Blocks/matrixTransposeBlock.d.ts +27 -0
- package/Materials/Node/Blocks/matrixTransposeBlock.js +46 -0
- package/Materials/Node/Blocks/matrixTransposeBlock.js.map +1 -0
- package/Materials/Textures/renderTargetTexture.d.ts +32 -28
- package/Materials/Textures/renderTargetTexture.js +13 -9
- package/Materials/Textures/renderTargetTexture.js.map +1 -1
- package/Materials/materialPluginManager.js +25 -4
- package/Materials/materialPluginManager.js.map +1 -1
- package/Maths/math.vector.d.ts +101 -9
- package/Maths/math.vector.js +101 -9
- package/Maths/math.vector.js.map +1 -1
- package/Meshes/linesMesh.d.ts +3 -1
- package/Meshes/linesMesh.js +8 -2
- package/Meshes/linesMesh.js.map +1 -1
- package/Meshes/subMesh.js +2 -2
- package/Meshes/subMesh.js.map +1 -1
- package/Misc/screenshotTools.d.ts +5 -2
- package/Misc/screenshotTools.js +7 -3
- package/Misc/screenshotTools.js.map +1 -1
- package/Particles/solidParticleSystem.d.ts +67 -63
- package/Particles/solidParticleSystem.js.map +1 -1
- package/PostProcesses/volumetricLightScatteringPostProcess.d.ts +5 -0
- package/PostProcesses/volumetricLightScatteringPostProcess.js +9 -1
- package/PostProcesses/volumetricLightScatteringPostProcess.js.map +1 -1
- package/Rendering/boundingBoxRenderer.js +2 -0
- package/Rendering/boundingBoxRenderer.js.map +1 -1
- package/Rendering/depthRendererSceneComponent.d.ts +2 -1
- package/Rendering/depthRendererSceneComponent.js +2 -2
- package/Rendering/depthRendererSceneComponent.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockFinalColorComposition.js +3 -3
- package/Shaders/ShadersInclude/pbrBlockFinalColorComposition.js.map +1 -1
- package/package.json +1 -1
package/Maths/math.vector.d.ts
CHANGED
|
@@ -2632,20 +2632,25 @@ export declare class Quaternion {
|
|
|
2632
2632
|
}
|
|
2633
2633
|
/**
|
|
2634
2634
|
* Class used to store matrix data (4x4)
|
|
2635
|
-
* Note on matrix definitions in Babylon.js for setting values directly
|
|
2635
|
+
* Note on matrix definitions in Babylon.js for setting values directly
|
|
2636
|
+
* rather than using one of the methods available.
|
|
2636
2637
|
* Matrix size is given by rows x columns.
|
|
2637
2638
|
* A Vector3 is a 1 X 3 matrix [x, y, z].
|
|
2639
|
+
*
|
|
2638
2640
|
* In Babylon.js multiplying a 1 x 3 matrix by a 4 x 4 matrix
|
|
2639
|
-
* is done using BABYLON.Vector4.TransformCoordinates(
|
|
2640
|
-
* and extending the passed Vector3 to a Vector4 [x, y, z,
|
|
2641
|
-
*
|
|
2642
|
-
*
|
|
2643
|
-
* |m4, m5, m6, m7 |
|
|
2644
|
-
* |m8, m9, m10, m11|
|
|
2645
|
-
* |m12, m13, m14, m15|
|
|
2641
|
+
* is done using BABYLON.Vector4.TransformCoordinates(Vector3, Matrix).
|
|
2642
|
+
* and extending the passed Vector3 to a Vector4, V = [x, y, z, 1].
|
|
2643
|
+
* Let M be a matrix with elements m(row, column), so that
|
|
2644
|
+
* m(2, 3) is the element in row 2 column 3 of M.
|
|
2646
2645
|
*
|
|
2647
|
-
*
|
|
2646
|
+
* Multiplication is of the form VM and has the resulting Vector4
|
|
2647
|
+
* VM = [xm(0, 0) + ym(1, 0) + zm(2, 0) + m(3, 0), xm(0, 1) + ym(1, 1) + zm(2, 1) + m(3, 1), xm(0, 2) + ym(1, 2) + zm(2, 2) + m(3, 2), xm(0, 3) + ym(1, 3) + zm(2, 3) + m(3, 3)].
|
|
2648
|
+
* On the web you will find many examples that use the opposite convention of MV,
|
|
2649
|
+
* in which case to make use of the examples you will need to transpose the matrix.
|
|
2648
2650
|
*
|
|
2651
|
+
* Example Playground - Overview Linear Algebra - https://playground.babylonjs.com/#AV9X17
|
|
2652
|
+
* Example Playground - Overview Transformation - https://playground.babylonjs.com/#AV9X17#1
|
|
2653
|
+
* Example Playground - Overview Projection - https://playground.babylonjs.com/#AV9X17#2
|
|
2649
2654
|
*/
|
|
2650
2655
|
export declare class Matrix {
|
|
2651
2656
|
/**
|
|
@@ -2690,21 +2695,25 @@ export declare class Matrix {
|
|
|
2690
2695
|
isIdentityAs3x2(): boolean;
|
|
2691
2696
|
/**
|
|
2692
2697
|
* Gets the determinant of the matrix
|
|
2698
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#34
|
|
2693
2699
|
* @returns the matrix determinant
|
|
2694
2700
|
*/
|
|
2695
2701
|
determinant(): number;
|
|
2696
2702
|
/**
|
|
2697
2703
|
* Returns the matrix as a Float32Array or Array<number>
|
|
2704
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#49
|
|
2698
2705
|
* @returns the matrix underlying array
|
|
2699
2706
|
*/
|
|
2700
2707
|
toArray(): DeepImmutable<Float32Array | Array<number>>;
|
|
2701
2708
|
/**
|
|
2702
2709
|
* Returns the matrix as a Float32Array or Array<number>
|
|
2710
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#114
|
|
2703
2711
|
* @returns the matrix underlying array.
|
|
2704
2712
|
*/
|
|
2705
2713
|
asArray(): DeepImmutable<Float32Array | Array<number>>;
|
|
2706
2714
|
/**
|
|
2707
2715
|
* Inverts the current matrix in place
|
|
2716
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#118
|
|
2708
2717
|
* @returns the current inverted matrix
|
|
2709
2718
|
*/
|
|
2710
2719
|
invert(): this;
|
|
@@ -2715,12 +2724,14 @@ export declare class Matrix {
|
|
|
2715
2724
|
reset(): this;
|
|
2716
2725
|
/**
|
|
2717
2726
|
* Adds the current matrix with a second one
|
|
2727
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#44
|
|
2718
2728
|
* @param other defines the matrix to add
|
|
2719
2729
|
* @returns a new matrix as the addition of the current matrix and the given one
|
|
2720
2730
|
*/
|
|
2721
2731
|
add(other: DeepImmutable<Matrix>): this;
|
|
2722
2732
|
/**
|
|
2723
2733
|
* Sets the given matrix "result" to the addition of the current matrix and the given one
|
|
2734
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#45
|
|
2724
2735
|
* @param other defines the matrix to add
|
|
2725
2736
|
* @param result defines the target matrix
|
|
2726
2737
|
* @returns result input
|
|
@@ -2728,18 +2739,21 @@ export declare class Matrix {
|
|
|
2728
2739
|
addToRef<T extends Matrix>(other: DeepImmutable<Matrix>, result: T): T;
|
|
2729
2740
|
/**
|
|
2730
2741
|
* Adds in place the given matrix to the current matrix
|
|
2742
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#46
|
|
2731
2743
|
* @param other defines the second operand
|
|
2732
2744
|
* @returns the current updated matrix
|
|
2733
2745
|
*/
|
|
2734
2746
|
addToSelf(other: DeepImmutable<Matrix>): this;
|
|
2735
2747
|
/**
|
|
2736
2748
|
* Sets the given matrix to the current inverted Matrix
|
|
2749
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#119
|
|
2737
2750
|
* @param other defines the target matrix
|
|
2738
2751
|
* @returns result input
|
|
2739
2752
|
*/
|
|
2740
2753
|
invertToRef<T extends Matrix>(other: T): T;
|
|
2741
2754
|
/**
|
|
2742
2755
|
* add a value at the specified position in the current Matrix
|
|
2756
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#47
|
|
2743
2757
|
* @param index the index of the value within the matrix. between 0 and 15.
|
|
2744
2758
|
* @param value the value to be added
|
|
2745
2759
|
* @returns the current updated matrix
|
|
@@ -2754,6 +2768,7 @@ export declare class Matrix {
|
|
|
2754
2768
|
multiplyAtIndex(index: number, value: number): this;
|
|
2755
2769
|
/**
|
|
2756
2770
|
* Inserts the translation vector (using 3 floats) in the current matrix
|
|
2771
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#120
|
|
2757
2772
|
* @param x defines the 1st component of the translation
|
|
2758
2773
|
* @param y defines the 2nd component of the translation
|
|
2759
2774
|
* @param z defines the 3rd component of the translation
|
|
@@ -2762,6 +2777,8 @@ export declare class Matrix {
|
|
|
2762
2777
|
setTranslationFromFloats(x: number, y: number, z: number): this;
|
|
2763
2778
|
/**
|
|
2764
2779
|
* Adds the translation vector (using 3 floats) in the current matrix
|
|
2780
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#20
|
|
2781
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#48
|
|
2765
2782
|
* @param x defines the 1st component of the translation
|
|
2766
2783
|
* @param y defines the 2nd component of the translation
|
|
2767
2784
|
* @param z defines the 3rd component of the translation
|
|
@@ -2770,17 +2787,20 @@ export declare class Matrix {
|
|
|
2770
2787
|
addTranslationFromFloats(x: number, y: number, z: number): this;
|
|
2771
2788
|
/**
|
|
2772
2789
|
* Inserts the translation vector in the current matrix
|
|
2790
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#121
|
|
2773
2791
|
* @param vector3 defines the translation to insert
|
|
2774
2792
|
* @returns the current updated matrix
|
|
2775
2793
|
*/
|
|
2776
2794
|
setTranslation(vector3: DeepImmutable<Vector3>): this;
|
|
2777
2795
|
/**
|
|
2778
2796
|
* Gets the translation value of the current matrix
|
|
2797
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#122
|
|
2779
2798
|
* @returns a new Vector3 as the extracted translation from the matrix
|
|
2780
2799
|
*/
|
|
2781
2800
|
getTranslation(): Vector3;
|
|
2782
2801
|
/**
|
|
2783
2802
|
* Fill a Vector3 with the extracted translation from the matrix
|
|
2803
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#123
|
|
2784
2804
|
* @param result defines the Vector3 where to store the translation
|
|
2785
2805
|
* @returns the current matrix
|
|
2786
2806
|
*/
|
|
@@ -2792,6 +2812,7 @@ export declare class Matrix {
|
|
|
2792
2812
|
removeRotationAndScaling(): this;
|
|
2793
2813
|
/**
|
|
2794
2814
|
* Multiply two matrices
|
|
2815
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#15
|
|
2795
2816
|
* A.multiply(B) means apply B to A so result is B x A
|
|
2796
2817
|
* @param other defines the second operand
|
|
2797
2818
|
* @returns a new matrix set with the multiplication result of the current Matrix and the given one
|
|
@@ -2799,6 +2820,7 @@ export declare class Matrix {
|
|
|
2799
2820
|
multiply(other: DeepImmutable<Matrix>): this;
|
|
2800
2821
|
/**
|
|
2801
2822
|
* Copy the current matrix from the given one
|
|
2823
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#21
|
|
2802
2824
|
* @param other defines the source matrix
|
|
2803
2825
|
* @returns the current updated matrix
|
|
2804
2826
|
*/
|
|
@@ -2813,6 +2835,7 @@ export declare class Matrix {
|
|
|
2813
2835
|
/**
|
|
2814
2836
|
* Sets the given matrix "result" with the multiplication result of the current Matrix and the given one
|
|
2815
2837
|
* A.multiplyToRef(B, R) means apply B to A and store in R and R = B x A
|
|
2838
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#16
|
|
2816
2839
|
* @param other defines the second operand
|
|
2817
2840
|
* @param result defines the matrix where to store the multiplication
|
|
2818
2841
|
* @returns result input
|
|
@@ -2834,6 +2857,7 @@ export declare class Matrix {
|
|
|
2834
2857
|
equals(value: DeepImmutable<Matrix>): boolean;
|
|
2835
2858
|
/**
|
|
2836
2859
|
* Clone the current matrix
|
|
2860
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#18
|
|
2837
2861
|
* @returns a new matrix from the current matrix
|
|
2838
2862
|
*/
|
|
2839
2863
|
clone(): this;
|
|
@@ -2849,12 +2873,14 @@ export declare class Matrix {
|
|
|
2849
2873
|
getHashCode(): number;
|
|
2850
2874
|
/**
|
|
2851
2875
|
* Decomposes the current Matrix into a translation, rotation and scaling components of the provided node
|
|
2876
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#13
|
|
2852
2877
|
* @param node the node to decompose the matrix to
|
|
2853
2878
|
* @returns true if operation was successful
|
|
2854
2879
|
*/
|
|
2855
2880
|
decomposeToTransformNode(node: TransformNode): boolean;
|
|
2856
2881
|
/**
|
|
2857
2882
|
* Decomposes the current Matrix into a translation, rotation and scaling components
|
|
2883
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#12
|
|
2858
2884
|
* @param scale defines the scale vector3 given as a reference to update
|
|
2859
2885
|
* @param rotation defines the rotation quaternion given as a reference to update
|
|
2860
2886
|
* @param translation defines the translation vector3 given as a reference to update
|
|
@@ -2864,12 +2890,14 @@ export declare class Matrix {
|
|
|
2864
2890
|
decompose(scale?: Vector3, rotation?: Quaternion, translation?: Vector3, preserveScalingNode?: TransformNode): boolean;
|
|
2865
2891
|
/**
|
|
2866
2892
|
* Gets specific row of the matrix
|
|
2893
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#36
|
|
2867
2894
|
* @param index defines the number of the row to get
|
|
2868
2895
|
* @returns the index-th row of the current matrix as a new Vector4
|
|
2869
2896
|
*/
|
|
2870
2897
|
getRow(index: number): Nullable<Vector4>;
|
|
2871
2898
|
/**
|
|
2872
2899
|
* Gets specific row of the matrix to ref
|
|
2900
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#36
|
|
2873
2901
|
* @param index defines the number of the row to get
|
|
2874
2902
|
* @param rowVector vector to store the index-th row of the current matrix
|
|
2875
2903
|
* @returns result input
|
|
@@ -2877,6 +2905,7 @@ export declare class Matrix {
|
|
|
2877
2905
|
getRowToRef<T extends Vector4>(index: number, rowVector: T): T;
|
|
2878
2906
|
/**
|
|
2879
2907
|
* Sets the index-th row of the current matrix to the vector4 values
|
|
2908
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#36
|
|
2880
2909
|
* @param index defines the number of the row to set
|
|
2881
2910
|
* @param row defines the target vector4
|
|
2882
2911
|
* @returns the updated current matrix
|
|
@@ -2884,17 +2913,20 @@ export declare class Matrix {
|
|
|
2884
2913
|
setRow(index: number, row: Vector4): this;
|
|
2885
2914
|
/**
|
|
2886
2915
|
* Compute the transpose of the matrix
|
|
2916
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#40
|
|
2887
2917
|
* @returns the new transposed matrix
|
|
2888
2918
|
*/
|
|
2889
2919
|
transpose(): this;
|
|
2890
2920
|
/**
|
|
2891
2921
|
* Compute the transpose of the matrix and store it in a given matrix
|
|
2922
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#41
|
|
2892
2923
|
* @param result defines the target matrix
|
|
2893
2924
|
* @returns result input
|
|
2894
2925
|
*/
|
|
2895
2926
|
transposeToRef<T extends Matrix>(result: T): T;
|
|
2896
2927
|
/**
|
|
2897
2928
|
* Sets the index-th row of the current matrix with the given 4 x float values
|
|
2929
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#36
|
|
2898
2930
|
* @param index defines the row index
|
|
2899
2931
|
* @param x defines the x component to set
|
|
2900
2932
|
* @param y defines the y component to set
|
|
@@ -2925,6 +2957,7 @@ export declare class Matrix {
|
|
|
2925
2957
|
scaleAndAddToRef<T extends Matrix>(scale: number, result: T): T;
|
|
2926
2958
|
/**
|
|
2927
2959
|
* Writes to the given matrix a normal matrix, computed from this one (using values from identity matrix for fourth row and column).
|
|
2960
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#17
|
|
2928
2961
|
* @param ref matrix to store the result
|
|
2929
2962
|
*/
|
|
2930
2963
|
toNormalMatrix<T extends Matrix>(ref: T): T;
|
|
@@ -2949,6 +2982,7 @@ export declare class Matrix {
|
|
|
2949
2982
|
toggleProjectionMatrixHandInPlace(): this;
|
|
2950
2983
|
/**
|
|
2951
2984
|
* Creates a matrix from an array
|
|
2985
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#42
|
|
2952
2986
|
* @param array defines the source array
|
|
2953
2987
|
* @param offset defines an offset in the source array
|
|
2954
2988
|
* @returns a new Matrix set from the starting index of the given array
|
|
@@ -2956,6 +2990,7 @@ export declare class Matrix {
|
|
|
2956
2990
|
static FromArray(array: DeepImmutable<ArrayLike<number>>, offset?: number): Matrix;
|
|
2957
2991
|
/**
|
|
2958
2992
|
* Copy the content of an array into a given matrix
|
|
2993
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#43
|
|
2959
2994
|
* @param array defines the source array
|
|
2960
2995
|
* @param offset defines an offset in the source array
|
|
2961
2996
|
* @param result defines the target matrix
|
|
@@ -2964,6 +2999,7 @@ export declare class Matrix {
|
|
|
2964
2999
|
static FromArrayToRef<T extends Matrix>(array: DeepImmutable<ArrayLike<number>>, offset: number, result: T): T;
|
|
2965
3000
|
/**
|
|
2966
3001
|
* Stores an array into a matrix after having multiplied each component by a given factor
|
|
3002
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#50
|
|
2967
3003
|
* @param array defines the source array
|
|
2968
3004
|
* @param offset defines the offset in the source array
|
|
2969
3005
|
* @param scale defines the scaling factor
|
|
@@ -3020,6 +3056,7 @@ export declare class Matrix {
|
|
|
3020
3056
|
static FromValues(initialM11: number, initialM12: number, initialM13: number, initialM14: number, initialM21: number, initialM22: number, initialM23: number, initialM24: number, initialM31: number, initialM32: number, initialM33: number, initialM34: number, initialM41: number, initialM42: number, initialM43: number, initialM44: number): Matrix;
|
|
3021
3057
|
/**
|
|
3022
3058
|
* Creates a new matrix composed by merging scale (vector3), rotation (quaternion) and translation (vector3)
|
|
3059
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#24
|
|
3023
3060
|
* @param scale defines the scale vector3
|
|
3024
3061
|
* @param rotation defines the rotation quaternion
|
|
3025
3062
|
* @param translation defines the translation vector3
|
|
@@ -3028,6 +3065,7 @@ export declare class Matrix {
|
|
|
3028
3065
|
static Compose(scale: DeepImmutable<Vector3>, rotation: DeepImmutable<Quaternion>, translation: DeepImmutable<Vector3>): Matrix;
|
|
3029
3066
|
/**
|
|
3030
3067
|
* Sets a matrix to a value composed by merging scale (vector3), rotation (quaternion) and translation (vector3)
|
|
3068
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#25
|
|
3031
3069
|
* @param scale defines the scale vector3
|
|
3032
3070
|
* @param rotation defines the rotation quaternion
|
|
3033
3071
|
* @param translation defines the translation vector3
|
|
@@ -3053,18 +3091,21 @@ export declare class Matrix {
|
|
|
3053
3091
|
static Zero(): Matrix;
|
|
3054
3092
|
/**
|
|
3055
3093
|
* Creates a new rotation matrix for "angle" radians around the X axis
|
|
3094
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#97
|
|
3056
3095
|
* @param angle defines the angle (in radians) to use
|
|
3057
3096
|
* @returns the new matrix
|
|
3058
3097
|
*/
|
|
3059
3098
|
static RotationX(angle: number): Matrix;
|
|
3060
3099
|
/**
|
|
3061
3100
|
* Creates a new matrix as the invert of a given matrix
|
|
3101
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#124
|
|
3062
3102
|
* @param source defines the source matrix
|
|
3063
3103
|
* @returns the new matrix
|
|
3064
3104
|
*/
|
|
3065
3105
|
static Invert<T extends Matrix>(source: DeepImmutable<T>): T;
|
|
3066
3106
|
/**
|
|
3067
3107
|
* Creates a new rotation matrix for "angle" radians around the X axis and stores it in a given matrix
|
|
3108
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#98
|
|
3068
3109
|
* @param angle defines the angle (in radians) to use
|
|
3069
3110
|
* @param result defines the target matrix
|
|
3070
3111
|
* @returns result input
|
|
@@ -3072,12 +3113,14 @@ export declare class Matrix {
|
|
|
3072
3113
|
static RotationXToRef<T extends Matrix>(angle: number, result: T): T;
|
|
3073
3114
|
/**
|
|
3074
3115
|
* Creates a new rotation matrix for "angle" radians around the Y axis
|
|
3116
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#99
|
|
3075
3117
|
* @param angle defines the angle (in radians) to use
|
|
3076
3118
|
* @returns the new matrix
|
|
3077
3119
|
*/
|
|
3078
3120
|
static RotationY(angle: number): Matrix;
|
|
3079
3121
|
/**
|
|
3080
3122
|
* Creates a new rotation matrix for "angle" radians around the Y axis and stores it in a given matrix
|
|
3123
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#100
|
|
3081
3124
|
* @param angle defines the angle (in radians) to use
|
|
3082
3125
|
* @param result defines the target matrix
|
|
3083
3126
|
* @returns result input
|
|
@@ -3085,12 +3128,14 @@ export declare class Matrix {
|
|
|
3085
3128
|
static RotationYToRef<T extends Matrix>(angle: number, result: T): T;
|
|
3086
3129
|
/**
|
|
3087
3130
|
* Creates a new rotation matrix for "angle" radians around the Z axis
|
|
3131
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#101
|
|
3088
3132
|
* @param angle defines the angle (in radians) to use
|
|
3089
3133
|
* @returns the new matrix
|
|
3090
3134
|
*/
|
|
3091
3135
|
static RotationZ(angle: number): Matrix;
|
|
3092
3136
|
/**
|
|
3093
3137
|
* Creates a new rotation matrix for "angle" radians around the Z axis and stores it in a given matrix
|
|
3138
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#102
|
|
3094
3139
|
* @param angle defines the angle (in radians) to use
|
|
3095
3140
|
* @param result defines the target matrix
|
|
3096
3141
|
* @returns result input
|
|
@@ -3098,6 +3143,7 @@ export declare class Matrix {
|
|
|
3098
3143
|
static RotationZToRef<T extends Matrix>(angle: number, result: T): T;
|
|
3099
3144
|
/**
|
|
3100
3145
|
* Creates a new rotation matrix for "angle" radians around the given axis
|
|
3146
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#96
|
|
3101
3147
|
* @param axis defines the axis to use
|
|
3102
3148
|
* @param angle defines the angle (in radians) to use
|
|
3103
3149
|
* @returns the new matrix
|
|
@@ -3105,6 +3151,7 @@ export declare class Matrix {
|
|
|
3105
3151
|
static RotationAxis(axis: DeepImmutable<Vector3>, angle: number): Matrix;
|
|
3106
3152
|
/**
|
|
3107
3153
|
* Creates a new rotation matrix for "angle" radians around the given axis and stores it in a given matrix
|
|
3154
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#94
|
|
3108
3155
|
* @param axis defines the axis to use
|
|
3109
3156
|
* @param angle defines the angle (in radians) to use
|
|
3110
3157
|
* @param result defines the target matrix
|
|
@@ -3114,6 +3161,7 @@ export declare class Matrix {
|
|
|
3114
3161
|
/**
|
|
3115
3162
|
* Takes normalised vectors and returns a rotation matrix to align "from" with "to".
|
|
3116
3163
|
* Taken from http://www.iquilezles.org/www/articles/noacos/noacos.htm
|
|
3164
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#93
|
|
3117
3165
|
* @param from defines the vector to align
|
|
3118
3166
|
* @param to defines the vector to align to
|
|
3119
3167
|
* @param result defines the target matrix
|
|
@@ -3122,6 +3170,8 @@ export declare class Matrix {
|
|
|
3122
3170
|
static RotationAlignToRef<T extends Matrix>(from: DeepImmutable<Vector3>, to: DeepImmutable<Vector3>, result: T): T;
|
|
3123
3171
|
/**
|
|
3124
3172
|
* Creates a rotation matrix
|
|
3173
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#103
|
|
3174
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#105
|
|
3125
3175
|
* @param yaw defines the yaw angle in radians (Y axis)
|
|
3126
3176
|
* @param pitch defines the pitch angle in radians (X axis)
|
|
3127
3177
|
* @param roll defines the roll angle in radians (Z axis)
|
|
@@ -3130,6 +3180,7 @@ export declare class Matrix {
|
|
|
3130
3180
|
static RotationYawPitchRoll(yaw: number, pitch: number, roll: number): Matrix;
|
|
3131
3181
|
/**
|
|
3132
3182
|
* Creates a rotation matrix and stores it in a given matrix
|
|
3183
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#104
|
|
3133
3184
|
* @param yaw defines the yaw angle in radians (Y axis)
|
|
3134
3185
|
* @param pitch defines the pitch angle in radians (X axis)
|
|
3135
3186
|
* @param roll defines the roll angle in radians (Z axis)
|
|
@@ -3139,6 +3190,7 @@ export declare class Matrix {
|
|
|
3139
3190
|
static RotationYawPitchRollToRef<T extends Matrix>(yaw: number, pitch: number, roll: number, result: T): T;
|
|
3140
3191
|
/**
|
|
3141
3192
|
* Creates a scaling matrix
|
|
3193
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#107
|
|
3142
3194
|
* @param x defines the scale factor on X axis
|
|
3143
3195
|
* @param y defines the scale factor on Y axis
|
|
3144
3196
|
* @param z defines the scale factor on Z axis
|
|
@@ -3147,6 +3199,7 @@ export declare class Matrix {
|
|
|
3147
3199
|
static Scaling(x: number, y: number, z: number): Matrix;
|
|
3148
3200
|
/**
|
|
3149
3201
|
* Creates a scaling matrix and stores it in a given matrix
|
|
3202
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#108
|
|
3150
3203
|
* @param x defines the scale factor on X axis
|
|
3151
3204
|
* @param y defines the scale factor on Y axis
|
|
3152
3205
|
* @param z defines the scale factor on Z axis
|
|
@@ -3156,6 +3209,7 @@ export declare class Matrix {
|
|
|
3156
3209
|
static ScalingToRef<T extends Matrix>(x: number, y: number, z: number, result: T): T;
|
|
3157
3210
|
/**
|
|
3158
3211
|
* Creates a translation matrix
|
|
3212
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#109
|
|
3159
3213
|
* @param x defines the translation on X axis
|
|
3160
3214
|
* @param y defines the translation on Y axis
|
|
3161
3215
|
* @param z defines the translationon Z axis
|
|
@@ -3164,6 +3218,7 @@ export declare class Matrix {
|
|
|
3164
3218
|
static Translation(x: number, y: number, z: number): Matrix;
|
|
3165
3219
|
/**
|
|
3166
3220
|
* Creates a translation matrix and stores it in a given matrix
|
|
3221
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#110
|
|
3167
3222
|
* @param x defines the translation on X axis
|
|
3168
3223
|
* @param y defines the translation on Y axis
|
|
3169
3224
|
* @param z defines the translationon Z axis
|
|
@@ -3173,6 +3228,7 @@ export declare class Matrix {
|
|
|
3173
3228
|
static TranslationToRef<T extends Matrix>(x: number, y: number, z: number, result: T): T;
|
|
3174
3229
|
/**
|
|
3175
3230
|
* Returns a new Matrix whose values are the interpolated values for "gradient" (float) between the ones of the matrices "startValue" and "endValue".
|
|
3231
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#55
|
|
3176
3232
|
* @param startValue defines the start value
|
|
3177
3233
|
* @param endValue defines the end value
|
|
3178
3234
|
* @param gradient defines the gradient factor
|
|
@@ -3181,6 +3237,7 @@ export declare class Matrix {
|
|
|
3181
3237
|
static Lerp<T extends Matrix>(startValue: DeepImmutable<T>, endValue: DeepImmutable<Matrix>, gradient: number): T;
|
|
3182
3238
|
/**
|
|
3183
3239
|
* Set the given matrix "result" as the interpolated values for "gradient" (float) between the ones of the matrices "startValue" and "endValue".
|
|
3240
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#54
|
|
3184
3241
|
* @param startValue defines the start value
|
|
3185
3242
|
* @param endValue defines the end value
|
|
3186
3243
|
* @param gradient defines the gradient factor
|
|
@@ -3193,6 +3250,8 @@ export declare class Matrix {
|
|
|
3193
3250
|
* * decomposing the the "startValue" and "endValue" matrices into their respective scale, rotation and translation matrices
|
|
3194
3251
|
* * interpolating for "gradient" (float) the values between each of these decomposed matrices between the start and the end
|
|
3195
3252
|
* * recomposing a new matrix from these 3 interpolated scale, rotation and translation matrices
|
|
3253
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#22
|
|
3254
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#51
|
|
3196
3255
|
* @param startValue defines the first matrix
|
|
3197
3256
|
* @param endValue defines the second matrix
|
|
3198
3257
|
* @param gradient defines the gradient between the two matrices
|
|
@@ -3204,6 +3263,8 @@ export declare class Matrix {
|
|
|
3204
3263
|
* * decomposing the the "startValue" and "endValue" matrices into their respective scale, rotation and translation matrices
|
|
3205
3264
|
* * interpolating for "gradient" (float) the values between each of these decomposed matrices between the start and the end
|
|
3206
3265
|
* * recomposing a new matrix from these 3 interpolated scale, rotation and translation matrices
|
|
3266
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#23
|
|
3267
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#53
|
|
3207
3268
|
* @param startValue defines the first matrix
|
|
3208
3269
|
* @param endValue defines the second matrix
|
|
3209
3270
|
* @param gradient defines the gradient between the two matrices
|
|
@@ -3214,6 +3275,8 @@ export declare class Matrix {
|
|
|
3214
3275
|
/**
|
|
3215
3276
|
* Creates a new matrix that transforms vertices from world space to camera space. It takes three vectors as arguments that together describe the position and orientation of the camera.
|
|
3216
3277
|
* This function generates a matrix suitable for a left handed coordinate system
|
|
3278
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#58
|
|
3279
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#59
|
|
3217
3280
|
* @param eye defines the final position of the entity
|
|
3218
3281
|
* @param target defines where the entity should look at
|
|
3219
3282
|
* @param up defines the up vector for the entity
|
|
@@ -3223,6 +3286,8 @@ export declare class Matrix {
|
|
|
3223
3286
|
/**
|
|
3224
3287
|
* Sets the given "result" Matrix to a matrix that transforms vertices from world space to camera space. It takes three vectors as arguments that together describe the position and orientation of the camera.
|
|
3225
3288
|
* This function generates a matrix suitable for a left handed coordinate system
|
|
3289
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#60
|
|
3290
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#61
|
|
3226
3291
|
* @param eye defines the final position of the entity
|
|
3227
3292
|
* @param target defines where the entity should look at
|
|
3228
3293
|
* @param up defines the up vector for the entity
|
|
@@ -3233,6 +3298,8 @@ export declare class Matrix {
|
|
|
3233
3298
|
/**
|
|
3234
3299
|
* Creates a new matrix that transforms vertices from world space to camera space. It takes three vectors as arguments that together describe the position and orientation of the camera.
|
|
3235
3300
|
* This function generates a matrix suitable for a right handed coordinate system
|
|
3301
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#62
|
|
3302
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#63
|
|
3236
3303
|
* @param eye defines the final position of the entity
|
|
3237
3304
|
* @param target defines where the entity should look at
|
|
3238
3305
|
* @param up defines the up vector for the entity
|
|
@@ -3242,6 +3309,8 @@ export declare class Matrix {
|
|
|
3242
3309
|
/**
|
|
3243
3310
|
* Sets the given "result" Matrix to a matrix that transforms vertices from world space to camera space. It takes three vectors as arguments that together describe the position and orientation of the camera.
|
|
3244
3311
|
* This function generates a matrix suitable for a right handed coordinate system
|
|
3312
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#64
|
|
3313
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#65
|
|
3245
3314
|
* @param eye defines the final position of the entity
|
|
3246
3315
|
* @param target defines where the entity should look at
|
|
3247
3316
|
* @param up defines the up vector for the entity
|
|
@@ -3252,6 +3321,7 @@ export declare class Matrix {
|
|
|
3252
3321
|
/**
|
|
3253
3322
|
* Creates a new matrix that transforms vertices from world space to camera space. It takes two vectors as arguments that together describe the orientation of the camera. The position is assumed to be at the origin (0,0,0)
|
|
3254
3323
|
* This function generates a matrix suitable for a left handed coordinate system
|
|
3324
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#66
|
|
3255
3325
|
* @param forward defines the forward direction - Must be normalized and orthogonal to up.
|
|
3256
3326
|
* @param up defines the up vector for the entity - Must be normalized and orthogonal to forward.
|
|
3257
3327
|
* @returns the new matrix
|
|
@@ -3260,6 +3330,7 @@ export declare class Matrix {
|
|
|
3260
3330
|
/**
|
|
3261
3331
|
* Sets the given "result" Matrix to a matrix that transforms vertices from world space to camera space. It takes two vectors as arguments that together describe the orientation of the camera. The position is assumed to be at the origin (0,0,0)
|
|
3262
3332
|
* This function generates a matrix suitable for a left handed coordinate system
|
|
3333
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#67
|
|
3263
3334
|
* @param forward defines the forward direction - Must be normalized and orthogonal to up.
|
|
3264
3335
|
* @param up defines the up vector for the entity - Must be normalized and orthogonal to forward.
|
|
3265
3336
|
* @param result defines the target matrix
|
|
@@ -3269,6 +3340,7 @@ export declare class Matrix {
|
|
|
3269
3340
|
/**
|
|
3270
3341
|
* Creates a new matrix that transforms vertices from world space to camera space. It takes two vectors as arguments that together describe the orientation of the camera. The position is assumed to be at the origin (0,0,0)
|
|
3271
3342
|
* This function generates a matrix suitable for a right handed coordinate system
|
|
3343
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#68
|
|
3272
3344
|
* @param forward defines the forward direction - Must be normalized and orthogonal to up.
|
|
3273
3345
|
* @param up defines the up vector for the entity - Must be normalized and orthogonal to forward.
|
|
3274
3346
|
* @returns the new matrix
|
|
@@ -3277,6 +3349,7 @@ export declare class Matrix {
|
|
|
3277
3349
|
/**
|
|
3278
3350
|
* Sets the given "result" Matrix to a matrix that transforms vertices from world space to camera space. It takes two vectors as arguments that together describe the orientation of the camera. The position is assumed to be at the origin (0,0,0)
|
|
3279
3351
|
* This function generates a matrix suitable for a right handed coordinate system
|
|
3352
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#69
|
|
3280
3353
|
* @param forward defines the forward direction - Must be normalized and orthogonal to up.
|
|
3281
3354
|
* @param up defines the up vector for the entity - Must be normalized and orthogonal to forward.
|
|
3282
3355
|
* @param result defines the target matrix
|
|
@@ -3285,6 +3358,7 @@ export declare class Matrix {
|
|
|
3285
3358
|
static LookDirectionRHToRef<T extends Matrix>(forward: DeepImmutable<Vector3>, up: DeepImmutable<Vector3>, result: T): T;
|
|
3286
3359
|
/**
|
|
3287
3360
|
* Create a left-handed orthographic projection matrix
|
|
3361
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#70
|
|
3288
3362
|
* @param width defines the viewport width
|
|
3289
3363
|
* @param height defines the viewport height
|
|
3290
3364
|
* @param znear defines the near clip plane
|
|
@@ -3295,6 +3369,7 @@ export declare class Matrix {
|
|
|
3295
3369
|
static OrthoLH(width: number, height: number, znear: number, zfar: number, halfZRange?: boolean): Matrix;
|
|
3296
3370
|
/**
|
|
3297
3371
|
* Store a left-handed orthographic projection to a given matrix
|
|
3372
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#71
|
|
3298
3373
|
* @param width defines the viewport width
|
|
3299
3374
|
* @param height defines the viewport height
|
|
3300
3375
|
* @param znear defines the near clip plane
|
|
@@ -3306,6 +3381,7 @@ export declare class Matrix {
|
|
|
3306
3381
|
static OrthoLHToRef<T extends Matrix>(width: number, height: number, znear: number, zfar: number, result: T, halfZRange?: boolean): T;
|
|
3307
3382
|
/**
|
|
3308
3383
|
* Create a left-handed orthographic projection matrix
|
|
3384
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#72
|
|
3309
3385
|
* @param left defines the viewport left coordinate
|
|
3310
3386
|
* @param right defines the viewport right coordinate
|
|
3311
3387
|
* @param bottom defines the viewport bottom coordinate
|
|
@@ -3318,6 +3394,7 @@ export declare class Matrix {
|
|
|
3318
3394
|
static OrthoOffCenterLH(left: number, right: number, bottom: number, top: number, znear: number, zfar: number, halfZRange?: boolean): Matrix;
|
|
3319
3395
|
/**
|
|
3320
3396
|
* Stores a left-handed orthographic projection into a given matrix
|
|
3397
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#73
|
|
3321
3398
|
* @param left defines the viewport left coordinate
|
|
3322
3399
|
* @param right defines the viewport right coordinate
|
|
3323
3400
|
* @param bottom defines the viewport bottom coordinate
|
|
@@ -3331,6 +3408,7 @@ export declare class Matrix {
|
|
|
3331
3408
|
static OrthoOffCenterLHToRef<T extends Matrix>(left: number, right: number, bottom: number, top: number, znear: number, zfar: number, result: T, halfZRange?: boolean): T;
|
|
3332
3409
|
/**
|
|
3333
3410
|
* Creates a right-handed orthographic projection matrix
|
|
3411
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#76
|
|
3334
3412
|
* @param left defines the viewport left coordinate
|
|
3335
3413
|
* @param right defines the viewport right coordinate
|
|
3336
3414
|
* @param bottom defines the viewport bottom coordinate
|
|
@@ -3343,6 +3421,7 @@ export declare class Matrix {
|
|
|
3343
3421
|
static OrthoOffCenterRH(left: number, right: number, bottom: number, top: number, znear: number, zfar: number, halfZRange?: boolean): Matrix;
|
|
3344
3422
|
/**
|
|
3345
3423
|
* Stores a right-handed orthographic projection into a given matrix
|
|
3424
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#77
|
|
3346
3425
|
* @param left defines the viewport left coordinate
|
|
3347
3426
|
* @param right defines the viewport right coordinate
|
|
3348
3427
|
* @param bottom defines the viewport bottom coordinate
|
|
@@ -3356,6 +3435,7 @@ export declare class Matrix {
|
|
|
3356
3435
|
static OrthoOffCenterRHToRef<T extends Matrix>(left: number, right: number, bottom: number, top: number, znear: number, zfar: number, result: T, halfZRange?: boolean): T;
|
|
3357
3436
|
/**
|
|
3358
3437
|
* Creates a left-handed perspective projection matrix
|
|
3438
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#85
|
|
3359
3439
|
* @param width defines the viewport width
|
|
3360
3440
|
* @param height defines the viewport height
|
|
3361
3441
|
* @param znear defines the near clip plane
|
|
@@ -3367,6 +3447,7 @@ export declare class Matrix {
|
|
|
3367
3447
|
static PerspectiveLH(width: number, height: number, znear: number, zfar: number, halfZRange?: boolean, projectionPlaneTilt?: number): Matrix;
|
|
3368
3448
|
/**
|
|
3369
3449
|
* Creates a left-handed perspective projection matrix
|
|
3450
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#78
|
|
3370
3451
|
* @param fov defines the horizontal field of view
|
|
3371
3452
|
* @param aspect defines the aspect ratio
|
|
3372
3453
|
* @param znear defines the near clip plane
|
|
@@ -3379,6 +3460,7 @@ export declare class Matrix {
|
|
|
3379
3460
|
static PerspectiveFovLH(fov: number, aspect: number, znear: number, zfar: number, halfZRange?: boolean, projectionPlaneTilt?: number, reverseDepthBufferMode?: boolean): Matrix;
|
|
3380
3461
|
/**
|
|
3381
3462
|
* Stores a left-handed perspective projection into a given matrix
|
|
3463
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#81
|
|
3382
3464
|
* @param fov defines the horizontal field of view
|
|
3383
3465
|
* @param aspect defines the aspect ratio
|
|
3384
3466
|
* @param znear defines the near clip plane
|
|
@@ -3393,6 +3475,7 @@ export declare class Matrix {
|
|
|
3393
3475
|
static PerspectiveFovLHToRef<T extends Matrix>(fov: number, aspect: number, znear: number, zfar: number, result: T, isVerticalFovFixed?: boolean, halfZRange?: boolean, projectionPlaneTilt?: number, reverseDepthBufferMode?: boolean): T;
|
|
3394
3476
|
/**
|
|
3395
3477
|
* Stores a left-handed perspective projection into a given matrix with depth reversed
|
|
3478
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#89
|
|
3396
3479
|
* @param fov defines the horizontal field of view
|
|
3397
3480
|
* @param aspect defines the aspect ratio
|
|
3398
3481
|
* @param znear defines the near clip plane
|
|
@@ -3406,6 +3489,7 @@ export declare class Matrix {
|
|
|
3406
3489
|
static PerspectiveFovReverseLHToRef<T extends Matrix>(fov: number, aspect: number, znear: number, zfar: number, result: T, isVerticalFovFixed?: boolean, halfZRange?: boolean, projectionPlaneTilt?: number): T;
|
|
3407
3490
|
/**
|
|
3408
3491
|
* Creates a right-handed perspective projection matrix
|
|
3492
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#83
|
|
3409
3493
|
* @param fov defines the horizontal field of view
|
|
3410
3494
|
* @param aspect defines the aspect ratio
|
|
3411
3495
|
* @param znear defines the near clip plane
|
|
@@ -3418,6 +3502,7 @@ export declare class Matrix {
|
|
|
3418
3502
|
static PerspectiveFovRH(fov: number, aspect: number, znear: number, zfar: number, halfZRange?: boolean, projectionPlaneTilt?: number, reverseDepthBufferMode?: boolean): Matrix;
|
|
3419
3503
|
/**
|
|
3420
3504
|
* Stores a right-handed perspective projection into a given matrix
|
|
3505
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#84
|
|
3421
3506
|
* @param fov defines the horizontal field of view
|
|
3422
3507
|
* @param aspect defines the aspect ratio
|
|
3423
3508
|
* @param znear defines the near clip plane
|
|
@@ -3432,6 +3517,7 @@ export declare class Matrix {
|
|
|
3432
3517
|
static PerspectiveFovRHToRef<T extends Matrix>(fov: number, aspect: number, znear: number, zfar: number, result: T, isVerticalFovFixed?: boolean, halfZRange?: boolean, projectionPlaneTilt?: number, reverseDepthBufferMode?: boolean): T;
|
|
3433
3518
|
/**
|
|
3434
3519
|
* Stores a right-handed perspective projection into a given matrix
|
|
3520
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#90
|
|
3435
3521
|
* @param fov defines the horizontal field of view
|
|
3436
3522
|
* @param aspect defines the aspect ratio
|
|
3437
3523
|
* @param znear defines the near clip plane
|
|
@@ -3445,6 +3531,7 @@ export declare class Matrix {
|
|
|
3445
3531
|
static PerspectiveFovReverseRHToRef<T extends Matrix>(fov: number, aspect: number, znear: number, zfar: number, result: T, isVerticalFovFixed?: boolean, halfZRange?: boolean, projectionPlaneTilt?: number): T;
|
|
3446
3532
|
/**
|
|
3447
3533
|
* Stores a perspective projection for WebVR info a given matrix
|
|
3534
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#92
|
|
3448
3535
|
* @param fov defines the field of view
|
|
3449
3536
|
* @param fov.upDegrees
|
|
3450
3537
|
* @param fov.downDegrees
|
|
@@ -3466,6 +3553,7 @@ export declare class Matrix {
|
|
|
3466
3553
|
}, znear: number, zfar: number, result: T, rightHanded?: boolean, halfZRange?: boolean, projectionPlaneTilt?: number): T;
|
|
3467
3554
|
/**
|
|
3468
3555
|
* Computes a complete transformation matrix
|
|
3556
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#113
|
|
3469
3557
|
* @param viewport defines the viewport to use
|
|
3470
3558
|
* @param world defines the world matrix
|
|
3471
3559
|
* @param view defines the view matrix
|
|
@@ -3489,12 +3577,14 @@ export declare class Matrix {
|
|
|
3489
3577
|
static GetAsMatrix3x3(matrix: DeepImmutable<Matrix>): Float32Array | Array<number>;
|
|
3490
3578
|
/**
|
|
3491
3579
|
* Compute the transpose of a given matrix
|
|
3580
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#111
|
|
3492
3581
|
* @param matrix defines the matrix to transpose
|
|
3493
3582
|
* @returns the new matrix
|
|
3494
3583
|
*/
|
|
3495
3584
|
static Transpose<T extends Matrix>(matrix: DeepImmutable<T>): T;
|
|
3496
3585
|
/**
|
|
3497
3586
|
* Compute the transpose of a matrix and store it in a target matrix
|
|
3587
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#112
|
|
3498
3588
|
* @param matrix defines the matrix to transpose
|
|
3499
3589
|
* @param result defines the target matrix
|
|
3500
3590
|
* @returns result input
|
|
@@ -3502,12 +3592,14 @@ export declare class Matrix {
|
|
|
3502
3592
|
static TransposeToRef<T extends Matrix>(matrix: DeepImmutable<Matrix>, result: T): T;
|
|
3503
3593
|
/**
|
|
3504
3594
|
* Computes a reflection matrix from a plane
|
|
3595
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#87
|
|
3505
3596
|
* @param plane defines the reflection plane
|
|
3506
3597
|
* @returns a new matrix
|
|
3507
3598
|
*/
|
|
3508
3599
|
static Reflection(plane: DeepImmutable<IPlaneLike>): Matrix;
|
|
3509
3600
|
/**
|
|
3510
3601
|
* Computes a reflection matrix from a plane
|
|
3602
|
+
* Example Playground - https://playground.babylonjs.com/#AV9X17#88
|
|
3511
3603
|
* @param plane defines the reflection plane
|
|
3512
3604
|
* @param result defines the target matrix
|
|
3513
3605
|
* @returns result input
|