Revision: 20388
          
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=20388
Author:   campbellbarton
Date:     2009-05-25 01:43:10 +0200 (Mon, 25 May 2009)

Log Message:
-----------
- BGE Py API, any py function/attribute that took a KX_GameObject would not 
accept a KX_Light or KX_Camera (bad oversight on my part)
- Typo in occlusion variable init "m_buffer == NULL;" -> "m_buffer = NULL;"

CcdPhysicsEnvironment.cpp and CcdPhysicsController.cpp had too many warnings, 
fixed most of them.

Modified Paths:
--------------
    trunk/blender/source/gameengine/Ketsji/KX_GameObject.cpp
    trunk/blender/source/gameengine/Physics/Bullet/CcdPhysicsController.cpp
    trunk/blender/source/gameengine/Physics/Bullet/CcdPhysicsEnvironment.cpp

Modified: trunk/blender/source/gameengine/Ketsji/KX_GameObject.cpp
===================================================================
--- trunk/blender/source/gameengine/Ketsji/KX_GameObject.cpp    2009-05-24 
23:12:38 UTC (rev 20387)
+++ trunk/blender/source/gameengine/Ketsji/KX_GameObject.cpp    2009-05-24 
23:43:10 UTC (rev 20388)
@@ -49,6 +49,8 @@
 #include "RAS_IPolygonMaterial.h"
 #include "KX_BlenderMaterial.h"
 #include "KX_GameObject.h"
+#include "KX_Camera.h" // only for their ::Type
+#include "KX_Light.h"  // only for their ::Type
 #include "RAS_MeshObject.h"
 #include "KX_MeshProxy.h"
 #include "KX_PolyProxy.h"
@@ -2757,6 +2759,7 @@
        }
 }
 
+
 bool ConvertPythonToGameObject(PyObject * value, KX_GameObject **object, bool 
py_none_ok, const char *error_prefix)
 {
        if (value==NULL) {
@@ -2787,7 +2790,10 @@
                }
        }
        
-       if (PyObject_TypeCheck(value, &KX_GameObject::Type)) {
+       if (    PyObject_TypeCheck(value, &KX_GameObject::Type) ||
+                       PyObject_TypeCheck(value, &KX_LightObject::Type)        
||
+                       PyObject_TypeCheck(value, &KX_Camera::Type)     )
+       {
                *object = static_cast<KX_GameObject*>BGE_PROXY_REF(value);
                
                /* sets the error */

Modified: 
trunk/blender/source/gameengine/Physics/Bullet/CcdPhysicsController.cpp
===================================================================
--- trunk/blender/source/gameengine/Physics/Bullet/CcdPhysicsController.cpp     
2009-05-24 23:12:38 UTC (rev 20387)
+++ trunk/blender/source/gameengine/Physics/Bullet/CcdPhysicsController.cpp     
2009-05-24 23:43:10 UTC (rev 20388)
@@ -185,12 +185,12 @@
                rbci.m_restitution = m_cci.m_restitution;
 
                
-               int nodecount = 0;
+
                
-               int numtriangles = 1;
                
+               
                btVector3 p(0,0,0);// = getOrigin();
-               btScalar h = 1.f;
+
                
                btSoftRigidDynamicsWorld* softDynaWorld = 
(btSoftRigidDynamicsWorld*)m_cci.m_physicsEnv->getDynamicsWorld();
 
@@ -794,7 +794,7 @@
                        
m_object->setCollisionFlags(m_object->getCollisionFlags() | 
btCollisionObject::CF_KINEMATIC_OBJECT);
                }
 
-               btRigidBody* body = GetRigidBody();
+               // btRigidBody* body = GetRigidBody(); // not used anymore
 
                btVector3 dloc(dlocX,dlocY,dlocZ);
                btTransform xform = m_object->getWorldTransform();
@@ -1388,8 +1388,6 @@
        /* Convert blender geometry into bullet mesh, need these vars for 
mapping */
        vector<bool> vert_tag_array(numverts, false);
        unsigned int tot_bt_verts= 0;
-       unsigned int orig_index;
-       int i;
 
        if (polytope)
        {
@@ -1609,9 +1607,7 @@
 btCollisionShape* CcdShapeConstructionInfo::CreateBulletShape(btScalar margin)
 {
        btCollisionShape* collisionShape = 0;
-       btTriangleMeshShape* concaveShape = 0;
-       btCompoundShape* compoundShape = 0;
-       CcdShapeConstructionInfo* nextShapeInfo;
+       btCompoundShape* compoundShape = 0;     
 
        if (m_shapeType == PHY_SHAPE_PROXY && m_shapeProxy != NULL)
                return m_shapeProxy->CreateBulletShape(margin);
@@ -1684,7 +1680,7 @@
                                        collisionMeshData->m_weldingThreshold = 
m_weldingThreshold1;
                                        bool removeDuplicateVertices=true;
                                        // m_vertexArray not in multiple of 3 
anymore, use m_triFaceArray
-                                       for(int i=0; i<m_triFaceArray.size(); 
i+=3) {
+                                       for(unsigned int i=0; 
i<m_triFaceArray.size(); i+=3) {
                                                btScalar *bt = 
&m_vertexArray[3*m_triFaceArray[i]];
                                                btVector3 v1(bt[0], bt[1], 
bt[2]);
                                                bt = 
&m_vertexArray[3*m_triFaceArray[i+1]];

Modified: 
trunk/blender/source/gameengine/Physics/Bullet/CcdPhysicsEnvironment.cpp
===================================================================
--- trunk/blender/source/gameengine/Physics/Bullet/CcdPhysicsEnvironment.cpp    
2009-05-24 23:12:38 UTC (rev 20387)
+++ trunk/blender/source/gameengine/Physics/Bullet/CcdPhysicsEnvironment.cpp    
2009-05-24 23:43:10 UTC (rev 20388)
@@ -1003,7 +1003,7 @@
 
        virtual btScalar addSingleResult(btCollisionWorld::LocalRayResult& 
rayResult,bool normalInWorldSpace)
        {
-               CcdPhysicsController* curHit = 
static_cast<CcdPhysicsController*>(rayResult.m_collisionObject->getUserPointer());
+               //CcdPhysicsController* curHit = 
static_cast<CcdPhysicsController*>(rayResult.m_collisionObject->getUserPointer());
                // save shape information as 
ClosestRayResultCallback::AddSingleResult() does not do it
                if (rayResult.m_localShapeInfo)
                {
@@ -1021,10 +1021,6 @@
 
 PHY_IPhysicsController* 
CcdPhysicsEnvironment::rayTest(PHY_IRayCastFilterCallback &filterCallback, 
float fromX,float fromY,float fromZ, float toX,float toY,float toZ)
 {
-
-
-       float minFraction = 1.f;
-
        btVector3 rayFrom(fromX,fromY,fromZ);
        btVector3 rayTo(toX,toY,toZ);
 
@@ -1174,7 +1170,7 @@
        {
                m_initialized=false;
                m_occlusion = false;
-               m_buffer == NULL;
+               m_buffer = NULL;
                m_bufferSize = 0;
        }
        // multiplication of column major matrices: m=m1*m2
@@ -1282,8 +1278,7 @@
        static bool     project(btVector4* p,int n)
        {
                for(int i=0;i<n;++i)
-               {
-                       const btScalar iw=1/p[i][3];
+               {                       
                        p[i][2]=1/p[i][3];
                        p[i][0]*=p[i][2];
                        p[i][1]*=p[i][2];
@@ -1601,7 +1596,7 @@
                                                                        6,5,1,2,
                                                                        7,6,2,3,
                                                                        
5,4,0,1};
-               for(int i=0;i<(sizeof(d)/sizeof(d[0]));)
+               for(unsigned int i=0;i<(sizeof(d)/sizeof(d[0]));)
                {
                        const btVector4 p[]={   x[d[i++]],
                                                                        
x[d[i++]],
@@ -1954,9 +1949,6 @@
 
 void   CcdPhysicsEnvironment::CallbackTriggers()
 {
-       
-       CcdPhysicsController* ctrl0=0,*ctrl1=0;
-
        if (m_triggerCallbacks[PHY_OBJECT_RESPONSE] || (m_debugDrawer && 
(m_debugDrawer->getDebugMode() & btIDebugDraw::DBG_DrawContactPoints)))
        {
                //walk over all overlapping pairs, and if one of the involved 
bodies is registered for trigger callback, perform callback


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

Reply via email to