Revision: 20771
          
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=20771
Author:   dfelinto
Date:     2009-06-10 00:56:43 +0200 (Wed, 10 Jun 2009)

Log Message:
-----------
fix for bug #18898: GE perspective 3D View not working properly (missing LENS)

note: I'm not changing GamePlayer files. There is no such a thing as 3D view 
camera in gameplayer (override_camera).

Modified Paths:
--------------
    trunk/blender/source/gameengine/BlenderRoutines/BL_KetsjiEmbedStart.cpp
    trunk/blender/source/gameengine/Ketsji/KX_KetsjiEngine.cpp
    trunk/blender/source/gameengine/Ketsji/KX_KetsjiEngine.h

Modified: 
trunk/blender/source/gameengine/BlenderRoutines/BL_KetsjiEmbedStart.cpp
===================================================================
--- trunk/blender/source/gameengine/BlenderRoutines/BL_KetsjiEmbedStart.cpp     
2009-06-09 21:29:59 UTC (rev 20770)
+++ trunk/blender/source/gameengine/BlenderRoutines/BL_KetsjiEmbedStart.cpp     
2009-06-09 22:56:43 UTC (rev 20771)
@@ -326,6 +326,7 @@
                                
ketsjiengine->SetCameraOverrideProjectionMatrix(projmat);
                                
ketsjiengine->SetCameraOverrideViewMatrix(viewmat);
                                
ketsjiengine->SetCameraOverrideClipping(v3d->near, v3d->far);
+                               ketsjiengine->SetCameraOverrideLens(v3d->lens);
                        }
                        
                        // create a scene converter, create and convert the 
startingscene

Modified: trunk/blender/source/gameengine/Ketsji/KX_KetsjiEngine.cpp
===================================================================
--- trunk/blender/source/gameengine/Ketsji/KX_KetsjiEngine.cpp  2009-06-09 
21:29:59 UTC (rev 20770)
+++ trunk/blender/source/gameengine/Ketsji/KX_KetsjiEngine.cpp  2009-06-09 
22:56:43 UTC (rev 20771)
@@ -1078,6 +1078,11 @@
        m_overrideCamFar = far;
 }
 
+void KX_KetsjiEngine::SetCameraOverrideLens(float lens)
+{
+       m_overrideCamLens = lens;
+}
+
 void KX_KetsjiEngine::GetSceneViewport(KX_Scene *scene, KX_Camera* cam, 
RAS_Rect& area, RAS_Rect& viewport)
 {
        // In this function we make sure the rasterizer settings are upto
@@ -1351,6 +1356,8 @@
                KX_Camera* activecam = NULL;
 
                RAS_CameraData camdata = RAS_CameraData();
+               if (override_camera) camdata.m_lens = m_overrideCamLens;
+
                activecam = new KX_Camera(scene,KX_Scene::m_callbacks,camdata);
                activecam->SetName("__default__cam__");
        

Modified: trunk/blender/source/gameengine/Ketsji/KX_KetsjiEngine.h
===================================================================
--- trunk/blender/source/gameengine/Ketsji/KX_KetsjiEngine.h    2009-06-09 
21:29:59 UTC (rev 20770)
+++ trunk/blender/source/gameengine/Ketsji/KX_KetsjiEngine.h    2009-06-09 
22:56:43 UTC (rev 20771)
@@ -129,6 +129,7 @@
        MT_CmMatrix4x4  m_overrideCamViewMat;
        float                   m_overrideCamNear;
        float                   m_overrideCamFar;
+       float                   m_overrideCamLens;
 
        bool m_stereo;
        int m_curreye;
@@ -253,6 +254,7 @@
        void SetCameraOverrideProjectionMatrix(const MT_CmMatrix4x4& mat);
        void SetCameraOverrideViewMatrix(const MT_CmMatrix4x4& mat);
        void SetCameraOverrideClipping(float near, float far);
+       void SetCameraOverrideLens(float lens);
        
        /**
         * Sets display of all frames.


_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to