[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [20122] trunk/blender/source/gameengine/ Ketsji/KX_Dome.cpp: BGE Dome: Allowing FOV different from 180?\194? \186 for Truncated Domes

Dalai Felinto dfelinto at gmail.com
Sat May 9 23:04:05 CEST 2009


Revision: 20122
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=20122
Author:   dfelinto
Date:     2009-05-09 23:04:03 +0200 (Sat, 09 May 2009)

Log Message:
-----------
BGE Dome: Allowing FOV different from 180?\194?\186 for Truncated Domes

*) a small note:

In the end it turned out that we have upright and downright domes out there.
So I may rearrange the order of the gui later:
(1 = fisheye, 2 = truncated up, 3 = truncated down, 4 = envmap, 5 = spherical panoramic)

I don't plan to do a doVersion() for that, so if you are using it already keep in mind that the modes may change before 249 final release.

Modified Paths:
--------------
    trunk/blender/source/gameengine/Ketsji/KX_Dome.cpp

Modified: trunk/blender/source/gameengine/Ketsji/KX_Dome.cpp
===================================================================
--- trunk/blender/source/gameengine/Ketsji/KX_Dome.cpp	2009-05-09 18:18:04 UTC (rev 20121)
+++ trunk/blender/source/gameengine/Ketsji/KX_Dome.cpp	2009-05-09 21:04:03 UTC (rev 20122)
@@ -125,15 +125,24 @@
 			m_numfaces = 6;
 			break;
 		default: //DOME_TRUNCATED_DOWN and DOME_TRUNCATED_UP
-			cubetop.resize(1);
-			cubebottom.resize(1);
-			cubeleft.resize(2);
-			cuberight.resize(2);
+			if (m_angle <= 180){
+				cubetop.resize(1);
+				cubebottom.resize(1);
+				cubeleft.resize(2);
+				cuberight.resize(2);
 
-			m_angle = 180;
-			CreateMeshDome180();
-			m_numfaces = 4;
-			break;
+				CreateMeshDome180();
+				m_numfaces = 4;
+			}else if (m_angle > 180){
+				cubetop.resize(2);
+				cubebottom.resize(2);
+				cubeleft.resize(2);
+				cubefront.resize(2);
+				cuberight.resize(2);
+
+				CreateMeshDome250();
+				m_numfaces = 5;
+			} break;
 	}
 
 	m_numimages =(warp.usemesh?m_numfaces+1:m_numfaces);
@@ -1485,9 +1494,9 @@
 	MT_Scalar c = cos(deg45);
 	MT_Scalar s = sin(deg45);
 
-	if ((m_mode == DOME_FISHEYE && m_angle <= 180)
+	if (m_angle <= 180 && (m_mode == DOME_FISHEYE 
 		|| m_mode == DOME_TRUNCATED_UP 
-		|| m_mode == DOME_TRUNCATED_DOWN){
+		|| m_mode == DOME_TRUNCATED_DOWN)){
 
 		m_locRot[0] = MT_Matrix3x3( // 90\xBA - Top
 						c, -s, 0.0,
@@ -1509,7 +1518,9 @@
 						0.0, 1.0, 0.0,
 						s, 0.0, c);
 
-	} else if ((m_mode == DOME_FISHEYE && m_angle > 180) || m_mode == DOME_ENVMAP){
+	} else if (m_mode == DOME_ENVMAP || (m_angle > 180 && (m_mode == DOME_FISHEYE
+		|| m_mode == DOME_TRUNCATED_UP 
+		|| m_mode == DOME_TRUNCATED_DOWN))){
 
 		m_locRot[0] = MT_Matrix3x3( // 90\xBA - Top
 						 1.0, 0.0, 0.0,





More information about the Bf-blender-cvs mailing list