[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [15590] trunk/blender/source/gameengine/ Ketsji: BGE bug fix (good for 2.47): radar and near sensor did not filter correctly the collisioning objects based on ACTOR flag when the parent object was added dynamically .
Benoit Bolsee
benoit.bolsee at online.be
Tue Jul 15 20:57:10 CEST 2008
Revision: 15590
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=15590
Author: ben2610
Date: 2008-07-15 20:57:10 +0200 (Tue, 15 Jul 2008)
Log Message:
-----------
BGE bug fix (good for 2.47): radar and near sensor did not filter correctly the collisioning objects based on ACTOR flag when the parent object was added dynamically. This could result in a very big performance decrease.
Modified Paths:
--------------
trunk/blender/source/gameengine/Ketsji/KX_NearSensor.cpp
trunk/blender/source/gameengine/Ketsji/KX_RadarSensor.cpp
Modified: trunk/blender/source/gameengine/Ketsji/KX_NearSensor.cpp
===================================================================
--- trunk/blender/source/gameengine/Ketsji/KX_NearSensor.cpp 2008-07-15 18:12:08 UTC (rev 15589)
+++ trunk/blender/source/gameengine/Ketsji/KX_NearSensor.cpp 2008-07-15 18:57:10 UTC (rev 15590)
@@ -135,9 +135,6 @@
void KX_NearSensor::ReParent(SCA_IObject* parent)
{
-
- SCA_ISensor::ReParent(parent);
-
m_client_info->m_gameobject = static_cast<KX_GameObject*>(parent);
m_client_info->m_sensors.push_back(this);
@@ -151,6 +148,7 @@
*/
((KX_GameObject*)GetParent())->GetSGNode()->ComputeWorldTransforms(NULL);
SynchronizeTransform();
+ SCA_ISensor::ReParent(parent);
}
Modified: trunk/blender/source/gameengine/Ketsji/KX_RadarSensor.cpp
===================================================================
--- trunk/blender/source/gameengine/Ketsji/KX_RadarSensor.cpp 2008-07-15 18:12:08 UTC (rev 15589)
+++ trunk/blender/source/gameengine/Ketsji/KX_RadarSensor.cpp 2008-07-15 18:57:10 UTC (rev 15590)
@@ -92,6 +92,10 @@
if (replica->m_physCtrl)
{
replica->m_physCtrl = replica->m_physCtrl->GetReplica();
+ if (replica->m_physCtrl)
+ {
+ replica->m_physCtrl->setNewClientInfo(replica->m_client_info);
+ }
}
//todo: make sure replication works fine!
More information about the Bf-blender-cvs
mailing list