Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKester Maddock <Christopher.Maddock.1@uni.massey.ac.nz>2005-03-25 13:33:39 +0300
committerKester Maddock <Christopher.Maddock.1@uni.massey.ac.nz>2005-03-25 13:33:39 +0300
commitc844aa265ad4eb50ad0e18661470fa6092052728 (patch)
treec4a778ab1227e4266022fd076e8a0cb709badd13 /source/gameengine/Converter/KX_ConvertSensors.cpp
parent3dd17cec3bcaa3885e14630e6a71a8486e9b2697 (diff)
Big patches:
Erwin Coumans: Abstract the physics engine Charlie C: Joystick fixes Me: Moved the ray cast (shadows, mouse sensor & ray sensor)
Diffstat (limited to 'source/gameengine/Converter/KX_ConvertSensors.cpp')
-rw-r--r--source/gameengine/Converter/KX_ConvertSensors.cpp24
1 files changed, 20 insertions, 4 deletions
diff --git a/source/gameengine/Converter/KX_ConvertSensors.cpp b/source/gameengine/Converter/KX_ConvertSensors.cpp
index 396d633043c..450f4c0b523 100644
--- a/source/gameengine/Converter/KX_ConvertSensors.cpp
+++ b/source/gameengine/Converter/KX_ConvertSensors.cpp
@@ -79,6 +79,7 @@ probably misplaced */
#include "KX_BlenderKeyboardDevice.h"
#include "KX_BlenderGL.h"
#include "RAS_ICanvas.h"
+#include "PHY_IPhysicsEnvironment.h"
#include "KX_KetsjiEngine.h"
#include "KX_BlenderSceneConverter.h"
@@ -374,11 +375,23 @@ void BL_ConvertSensors(struct Object* blenderobject,
// this sumoObject is not deleted by a gameobj, so delete it ourself
// later (memleaks)!
- //SM_Object* sumoObj = new SM_Object(shape,NULL,NULL,NULL);
- //sumoObj->setMargin(blendernearsensor->dist);
- //sumoObj->setPosition(gameobj->NodeGetWorldPosition());
+ float radius = blendernearsensor->dist;
+ PHY__Vector3 pos;
+ const MT_Vector3& wpos = gameobj->NodeGetWorldPosition();
+ pos[0] = wpos[0];
+ pos[1] = wpos[1];
+ pos[2] = wpos[2];
+ pos[3] = 0.f;
bool bFindMaterial = false;
- gamesensor = new KX_NearSensor(eventmgr,gameobj,blendernearsensor->dist,blendernearsensor->resetdist,bFindMaterial,nearpropertyname,kxscene);
+ PHY_IPhysicsController* physCtrl = kxscene->GetPhysicsEnvironment()->CreateSphereController(radius,pos);
+
+ gamesensor = new KX_NearSensor(eventmgr,gameobj,
+ blendernearsensor->dist,
+ blendernearsensor->resetdist,
+ bFindMaterial,
+ nearpropertyname,kxscene,
+ physCtrl
+ );
}
break;
@@ -551,9 +564,12 @@ void BL_ConvertSensors(struct Object* blenderobject,
MT_Scalar largemargin = 0.0;
bool bFindMaterial = false;
+ PHY_IPhysicsController* ctrl = kxscene->GetPhysicsEnvironment()->CreateConeController(coneradius,coneheight);
+
gamesensor = new KX_RadarSensor(
eventmgr,
gameobj,
+ ctrl,
coneradius,
coneheight,
radaraxis,