瀏覽代碼

reverted engine class, added fov property to camera!

olivier.g 10 年之前
父節點
當前提交
1c6b08e4f4
共有 3 個文件被更改,包括 7 次插入7 次删除
  1. 5 1
      Babylon/Cameras/babylon.camera.ts
  2. 2 2
      Babylon/Math/babylon.math.ts
  3. 0 4
      Babylon/babylon.engine.ts

+ 5 - 1
Babylon/Cameras/babylon.camera.ts

@@ -4,6 +4,9 @@
         public static PERSPECTIVE_CAMERA = 0;
         public static ORTHOGRAPHIC_CAMERA = 1;
 
+        private static FOVMODE_VERTICAL_FIXED = 0;
+        private static FOVMODE_HORIZONTAL_FIXED = 1;
+
         // Members
         public upVector = Vector3.Up();
         public orthoLeft = null;
@@ -19,6 +22,7 @@
         public viewport = new Viewport(0, 0, 1.0, 1.0);
         public subCameras = [];
         public layerMask: number = 0xFFFFFFFF;
+        public fovMode: number = Camera.FOVMODE_VERTICAL_FIXED;
 
         private _computedViewMatrix = Matrix.Identity();
         public _projectionMatrix = new Matrix();
@@ -291,7 +295,7 @@
                     this.minZ = 0.1;
                 }
 
-                Matrix.PerspectiveFovLHToRef(this.fov, engine.getAspectRatio(this), this.minZ, this.maxZ, this._projectionMatrix, engine.fovMode);
+                Matrix.PerspectiveFovLHToRef(this.fov, engine.getAspectRatio(this), this.minZ, this.maxZ, this._projectionMatrix, this.fovMode);
                 return this._projectionMatrix;
             }
 

+ 2 - 2
Babylon/Math/babylon.math.ts

@@ -2078,8 +2078,8 @@
         public static PerspectiveFovLHToRef(fov: number, aspect: number, znear: number, zfar: number, result: Matrix, fovMode?: number): void {
             var tan = 1.0 / (Math.tan(fov * 0.5));
 
-            var v_fixed = !fovMode || (fovMode == BABYLON.Engine.FOVMODE_VERTICAL_FIXED);
-            var h_fixed = (fovMode == BABYLON.Engine.FOVMODE_HORIZONTAL_FIXED);
+            var v_fixed = !fovMode || (fovMode == BABYLON.Camera.FOVMODE_VERTICAL_FIXED);
+            var h_fixed = (fovMode == BABYLON.Camera.FOVMODE_HORIZONTAL_FIXED);
 
             if(v_fixed) { result.m[0] = tan / aspect; }
             else if(h_fixed) { result.m[0] = tan; }  

+ 0 - 4
Babylon/babylon.engine.ts

@@ -365,9 +365,6 @@
         private static _DELAYLOADSTATE_LOADING = 2;
         private static _DELAYLOADSTATE_NOTLOADED = 4;
 
-        private static _FOVMODE_VERTICAL_FIXED = 0;
-        private static _FOVMODE_HORIZONTAL_FIXED = 1;
-
         private static _TEXTUREFORMAT_ALPHA = 0;
         private static _TEXTUREFORMAT_LUMINANCE = 1;
         private static _TEXTUREFORMAT_LUMINANCE_ALPHA = 2;
@@ -448,7 +445,6 @@
         public cullBackFaces = true;
         public renderEvenInBackground = true;
         public scenes = new Array<Scene>();
-        public fovMode = Engine.FOVMODE_VERTICAL_FIXED;
 
         // Private Members
         public _gl: WebGLRenderingContext;