fixed memory leaks in ForkLiftDemo/VehicleDemo
Thanks to mi076 for report+fix: http://bulletphysics.com/Bullet/phpBB3/viewtopic.php?f=9&t=2652 Minor syntax error fix in a Jamfile
This commit is contained in:
@@ -114,6 +114,7 @@ m_indexVertexArrays(0),
|
||||
m_vertices(0)
|
||||
{
|
||||
m_vehicle = 0;
|
||||
m_wheelShape = 0;
|
||||
m_cameraPosition = btVector3(30,30,30);
|
||||
m_useDefaultCamera = false;
|
||||
setTexturing(true);
|
||||
@@ -167,6 +168,8 @@ void ForkLiftDemo::termPhysics()
|
||||
|
||||
delete m_vehicle;
|
||||
|
||||
delete m_wheelShape;
|
||||
|
||||
//delete solver
|
||||
delete m_constraintSolver;
|
||||
|
||||
@@ -255,6 +258,7 @@ tr.setOrigin(btVector3(0,-10,0));
|
||||
m_carChassis = localCreateRigidBody(800,tr,compound);//chassisShape);
|
||||
//m_carChassis->setDamping(0.2,0.2);
|
||||
|
||||
m_wheelShape = new btCylinderShapeX(btVector3(wheelWidth,wheelRadius,wheelRadius));
|
||||
|
||||
{
|
||||
btCollisionShape* liftShape = new btBoxShape(btVector3(0.5f,2.0f,0.05f));
|
||||
@@ -419,7 +423,6 @@ void ForkLiftDemo::renderme()
|
||||
btScalar m[16];
|
||||
int i;
|
||||
|
||||
btCylinderShapeX wheelShape(btVector3(wheelWidth,wheelRadius,wheelRadius));
|
||||
btVector3 wheelColor(1,0,0);
|
||||
|
||||
btVector3 worldBoundsMin,worldBoundsMax;
|
||||
@@ -433,7 +436,7 @@ void ForkLiftDemo::renderme()
|
||||
m_vehicle->updateWheelTransform(i,true);
|
||||
//draw wheels (cylinders)
|
||||
m_vehicle->getWheelInfo(i).m_worldTransform.getOpenGLMatrix(m);
|
||||
m_shapeDrawer->drawOpenGL(m,&wheelShape,wheelColor,getDebugMode(),worldBoundsMin,worldBoundsMax);
|
||||
m_shapeDrawer->drawOpenGL(m,m_wheelShape,wheelColor,getDebugMode(),worldBoundsMin,worldBoundsMax);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -69,6 +69,7 @@ class ForkLiftDemo : public GlutDemoApplication
|
||||
btRaycastVehicle::btVehicleTuning m_tuning;
|
||||
btVehicleRaycaster* m_vehicleRayCaster;
|
||||
btRaycastVehicle* m_vehicle;
|
||||
btCollisionShape* m_wheelShape;
|
||||
|
||||
float m_cameraHeight;
|
||||
|
||||
|
||||
@@ -94,6 +94,7 @@ m_indexVertexArrays(0),
|
||||
m_vertices(0)
|
||||
{
|
||||
m_vehicle = 0;
|
||||
m_wheelShape = 0;
|
||||
m_cameraPosition = btVector3(30,30,30);
|
||||
}
|
||||
|
||||
@@ -132,6 +133,8 @@ VehicleDemo::~VehicleDemo()
|
||||
|
||||
delete m_vehicle;
|
||||
|
||||
delete m_wheelShape;
|
||||
|
||||
//delete solver
|
||||
delete m_constraintSolver;
|
||||
|
||||
@@ -324,6 +327,7 @@ const float TRIANGLE_SIZE=20.f;
|
||||
m_carChassis = localCreateRigidBody(800,tr,compound);//chassisShape);
|
||||
//m_carChassis->setDamping(0.2,0.2);
|
||||
|
||||
m_wheelShape = new btCylinderShapeX(btVector3(wheelWidth,wheelRadius,wheelRadius));
|
||||
|
||||
clientResetScene();
|
||||
|
||||
@@ -400,7 +404,7 @@ void VehicleDemo::renderme()
|
||||
btScalar m[16];
|
||||
int i;
|
||||
|
||||
btCylinderShapeX wheelShape(btVector3(wheelWidth,wheelRadius,wheelRadius));
|
||||
|
||||
btVector3 wheelColor(1,0,0);
|
||||
|
||||
btVector3 worldBoundsMin,worldBoundsMax;
|
||||
@@ -414,7 +418,7 @@ void VehicleDemo::renderme()
|
||||
m_vehicle->updateWheelTransform(i,true);
|
||||
//draw wheels (cylinders)
|
||||
m_vehicle->getWheelInfo(i).m_worldTransform.getOpenGLMatrix(m);
|
||||
m_shapeDrawer->drawOpenGL(m,&wheelShape,wheelColor,getDebugMode(),worldBoundsMin,worldBoundsMax);
|
||||
m_shapeDrawer->drawOpenGL(m,m_wheelShape,wheelColor,getDebugMode(),worldBoundsMin,worldBoundsMax);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -48,6 +48,7 @@ class VehicleDemo : public GlutDemoApplication
|
||||
btRaycastVehicle::btVehicleTuning m_tuning;
|
||||
btVehicleRaycaster* m_vehicleRayCaster;
|
||||
btRaycastVehicle* m_vehicle;
|
||||
btCollisionShape* m_wheelShape;
|
||||
|
||||
float m_cameraHeight;
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@ SubDir TOP src BulletMultiThreaded ;
|
||||
|
||||
#IncludeDir src/BulletMultiThreaded ;
|
||||
|
||||
Library bulletmultithreaded : [ Wildcard . : */.h *.cpp ] [ Wildcard SpuNarrowPhaseCollisionTask : *.h *.cpp ] [ Wildcard SpuSolverTask : *.h *.cpp ] : noinstall ;
|
||||
Library bulletmultithreaded : [ Wildcard . : *.h *.cpp ] [ Wildcard SpuNarrowPhaseCollisionTask : *.h *.cpp ] [ Wildcard SpuSolverTask : *.h *.cpp ] : noinstall ;
|
||||
CFlags bulletmultithreaded : [ FIncludes $(TOP)/src/BulletMultiThreaded ] [ FIncludes $(TOP)/src/BulletMultiThreaded/vectormath/scalar/cpp ] ;
|
||||
LibDepends bulletmultithreaded : ;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user