[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [27976] branches/bge_eigen2/source/ gameengine/VideoTexture: Working on converting VideoTexture.

Mitchell Stokes mogurijin at gmail.com
Sat Apr 3 21:19:33 CEST 2010


Revision: 27976
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=27976
Author:   moguri
Date:     2010-04-03 21:19:32 +0200 (Sat, 03 Apr 2010)

Log Message:
-----------
Working on converting VideoTexture. It's not compiling right now, but it should after other modules have been worked on. Also, a few more addons might have to be defined.

Modified Paths:
--------------
    branches/bge_eigen2/source/gameengine/VideoTexture/ImageRender.cpp
    branches/bge_eigen2/source/gameengine/VideoTexture/ImageRender.h

Modified: branches/bge_eigen2/source/gameengine/VideoTexture/ImageRender.cpp
===================================================================
--- branches/bge_eigen2/source/gameengine/VideoTexture/ImageRender.cpp	2010-04-03 17:38:43 UTC (rev 27975)
+++ branches/bge_eigen2/source/gameengine/VideoTexture/ImageRender.cpp	2010-04-03 19:19:32 UTC (rev 27976)
@@ -121,28 +121,28 @@
     {
         // mirror mode, compute camera frustrum, position and orientation
         // convert mirror position and normal in world space
-        const MT_Matrix3x3 & mirrorObjWorldOri = m_mirror->GetSGNode()->GetWorldOrientation();
-        const MT_Point3 & mirrorObjWorldPos = m_mirror->GetSGNode()->GetWorldPosition();
-        const MT_Vector3 & mirrorObjWorldScale = m_mirror->GetSGNode()->GetWorldScaling();
-        MT_Point3 mirrorWorldPos = 
+        const BGE_Matrix3 & mirrorObjWorldOri = m_mirror->GetSGNode()->GetWorldOrientation();
+        const BGE_Vector3 & mirrorObjWorldPos = m_mirror->GetSGNode()->GetWorldPosition();
+        const BGE_Vector3 & mirrorObjWorldScale = m_mirror->GetSGNode()->GetWorldScaling();
+        BGE_Vector3 mirrorWorldPos = 
             mirrorObjWorldPos + mirrorObjWorldScale * (mirrorObjWorldOri * m_mirrorPos);
-        MT_Vector3 mirrorWorldZ = mirrorObjWorldOri * m_mirrorZ;
+        BGE_Vector3 mirrorWorldZ = mirrorObjWorldOri * m_mirrorZ;
         // get observer world position
-        const MT_Point3 & observerWorldPos = m_observer->GetSGNode()->GetWorldPosition();
+        const BGE_Vector3 & observerWorldPos = m_observer->GetSGNode()->GetWorldPosition();
         // get plane D term = mirrorPos . normal
-        MT_Scalar mirrorPlaneDTerm = mirrorWorldPos.dot(mirrorWorldZ);
+        BGE_Scalar mirrorPlaneDTerm = mirrorWorldPos.dot(mirrorWorldZ);
         // compute distance of observer to mirror = D - observerPos . normal
-        MT_Scalar observerDistance = mirrorPlaneDTerm - observerWorldPos.dot(mirrorWorldZ);
+        BGE_Scalar observerDistance = mirrorPlaneDTerm - observerWorldPos.dot(mirrorWorldZ);
         // if distance < 0.01 => observer is on wrong side of mirror, don't render
         if (observerDistance < 0.01f)
             return;
         // set camera world position = observerPos + normal * 2 * distance
-        MT_Point3 cameraWorldPos = observerWorldPos + (MT_Scalar(2.0)*observerDistance)*mirrorWorldZ;
+        BGE_Vector3 cameraWorldPos = observerWorldPos + (BGE_Scalar(2.0)*observerDistance)*mirrorWorldZ;
         m_camera->GetSGNode()->SetLocalPosition(cameraWorldPos);
         // set camera orientation: z=normal, y=mirror_up in world space, x= y x z
-        MT_Vector3 mirrorWorldY = mirrorObjWorldOri * m_mirrorY;
-        MT_Vector3 mirrorWorldX = mirrorObjWorldOri * m_mirrorX;
-        MT_Matrix3x3 cameraWorldOri(
+        BGE_Vector3 mirrorWorldY = mirrorObjWorldOri * m_mirrorY;
+        BGE_Vector3 mirrorWorldX = mirrorObjWorldOri * m_mirrorX;
+        BGE_Matrix3 cameraWorldOri(
             mirrorWorldX[0], mirrorWorldY[0], mirrorWorldZ[0],
             mirrorWorldX[1], mirrorWorldY[1], mirrorWorldZ[1], 
             mirrorWorldX[2], mirrorWorldY[2], mirrorWorldZ[2]);
@@ -150,12 +150,12 @@
         m_camera->GetSGNode()->UpdateWorldData(0.0);
         // compute camera frustrum:
         //   get position of mirror relative to camera: offset = mirrorPos-cameraPos
-        MT_Vector3 mirrorOffset = mirrorWorldPos - cameraWorldPos;
+        BGE_Vector3 mirrorOffset = mirrorWorldPos - cameraWorldPos;
         //   convert to camera orientation
         mirrorOffset = mirrorOffset * cameraWorldOri;
         //   scale mirror size to world scale: 
         //     get closest local axis for mirror Y and X axis and scale height and width by local axis scale
-        MT_Scalar x, y;
+        BGE_Scalar x, y;
         x = fabs(m_mirrorY[0]);
         y = fabs(m_mirrorY[1]);
         float height = (x > y) ? 
@@ -198,7 +198,7 @@
     {
         // frustrum was computed above
         // get frustrum matrix and set projection matrix
-		MT_Matrix4x4 projmat = m_rasterizer->GetFrustumMatrix(
+		BGE_Matrix4 projmat = m_rasterizer->GetFrustumMatrix(
 			frustrum.x1, frustrum.x2, frustrum.y1, frustrum.y2, frustrum.camnear, frustrum.camfar);
 
 		m_camera->SetProjectionMatrix(projmat);
@@ -213,7 +213,7 @@
 		float farfrust = m_camera->GetCameraFar();
         float aspect_ratio = 1.0f;
         Scene *blenderScene = m_scene->GetBlenderScene();
-		MT_Matrix4x4 projmat;
+		BGE_Matrix4 projmat;
 
 		// compute the aspect ratio from frame blender scene settings so that render to texture
         // works the same in Blender and in Blender player
@@ -247,8 +247,8 @@
 		m_camera->SetProjectionMatrix(projmat);
 	}
 
-	MT_Transform camtrans(m_camera->GetWorldToCamera());
-	MT_Matrix4x4 viewmat(camtrans);
+	BGE_Transform camtrans(m_camera->GetWorldToCamera());
+	BGE_Matrix4 viewmat(camtrans);
 	
 	m_rasterizer->SetViewMatrix(viewmat, m_camera->NodeGetWorldOrientation(), m_camera->NodeGetWorldPosition(), m_camera->GetCameraData()->m_perspective);
 	m_camera->SetModelviewMatrix(viewmat);

Modified: branches/bge_eigen2/source/gameengine/VideoTexture/ImageRender.h
===================================================================
--- branches/bge_eigen2/source/gameengine/VideoTexture/ImageRender.h	2010-04-03 17:38:43 UTC (rev 27975)
+++ branches/bge_eigen2/source/gameengine/VideoTexture/ImageRender.h	2010-04-03 19:19:32 UTC (rev 27976)
@@ -72,10 +72,10 @@
 	float m_clip;						// clipping distance
     float m_mirrorHalfWidth;            // mirror width in mirror space
     float m_mirrorHalfHeight;           // mirror height in mirror space
-    MT_Point3 m_mirrorPos;              // mirror center position in local space
-    MT_Vector3 m_mirrorZ;               // mirror Z axis in local space
-    MT_Vector3 m_mirrorY;               // mirror Y axis in local space
-    MT_Vector3 m_mirrorX;               // mirror X axis in local space
+    BGE_Vector3 m_mirrorPos;              // mirror center position in local space
+    BGE_Vector3 m_mirrorZ;               // mirror Z axis in local space
+    BGE_Vector3 m_mirrorY;               // mirror Y axis in local space
+    BGE_Vector3 m_mirrorX;               // mirror X axis in local space
     /// canvas
     RAS_ICanvas* m_canvas;
     /// rasterizer





More information about the Bf-blender-cvs mailing list