Browse Source

* Fixed viewport location bug in RenderManager

git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@7461 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
sha..rd 14 năm trước cách đây
mục cha
commit
bef4a77169
1 tập tin đã thay đổi với 12 bổ sung8 xóa
  1. 12 8
      engine/src/core/com/jme3/renderer/RenderManager.java

+ 12 - 8
engine/src/core/com/jme3/renderer/RenderManager.java

@@ -611,15 +611,19 @@ public class RenderManager {
             cam.clearViewportChanged();
             prevCam = cam;
 
-
-//            float translateX = viewWidth == viewX ? 0 : -(viewWidth + viewX) / (viewWidth - viewX);
-//            float translateY = viewHeight == viewY ? 0 : -(viewHeight + viewY) / (viewHeight - viewY);
-//            float scaleX = viewWidth == viewX ? 1f : 2f / (viewWidth - viewX);
-//            float scaleY = viewHeight == viewY ? 1f : 2f / (viewHeight - viewY);
+            float translateX = viewWidth == viewX ? 0 : -(viewWidth + viewX) / (viewWidth - viewX);
+            float translateY = viewHeight == viewY ? 0 : -(viewHeight + viewY) / (viewHeight - viewY);
+            float scaleX = viewWidth == viewX ? 1f : 2f / (viewWidth - viewX);
+            float scaleY = viewHeight == viewY ? 1f : 2f / (viewHeight - viewY);
+            
             orthoMatrix.loadIdentity();
-            orthoMatrix.setTranslation(-1f, -1f, 0f);
-            orthoMatrix.setScale(2f / cam.getWidth(), 2f / cam.getHeight(), 0f);
-            System.out.println(orthoMatrix);
+            orthoMatrix.setTranslation(translateX, translateY, 0);
+            orthoMatrix.setScale(scaleX, scaleY, 1); 
+            
+            //orthoMatrix.loadIdentity();
+            //orthoMatrix.setTranslation(-1f, -1f, 0f);
+            //orthoMatrix.setScale(2f / cam.getWidth(), 2f / cam.getHeight(), 0f);
+            //System.out.println(orthoMatrix);
         }
     }