Implementation of virtual void CommonRenderInterface::removeGraphicsInstance(int instanceUid)
for GLInstancingRenderer (OpenGL3+) and SimpleOpenGL2Renderer (OpenGL2) Refactored the add/remove object pool in Bullet3Common/b3ResizablePool.h Added CommonRigidBodyBase::deleteRigidBody, also removing its graphics instance.
This commit is contained in:
@@ -241,6 +241,12 @@ void OpenGLGuiHelper::removeAllGraphicsInstances()
|
||||
m_data->m_glApp->m_renderer->removeAllInstances();
|
||||
}
|
||||
|
||||
void OpenGLGuiHelper::removeGraphicsInstance(int graphicsUid)
|
||||
{
|
||||
m_data->m_glApp->m_renderer->removeGraphicsInstance(graphicsUid);
|
||||
}
|
||||
|
||||
|
||||
void OpenGLGuiHelper::createCollisionShapeGraphicsObject(btCollisionShape* collisionShape)
|
||||
{
|
||||
//already has a graphics object?
|
||||
@@ -587,7 +593,7 @@ void OpenGLGuiHelper::autogenerateGraphicsObjects(btDiscreteDynamicsWorld* rbWor
|
||||
btCollisionObject* colObj = rbWorld->getCollisionObjectArray()[i];
|
||||
sortedObjects.push_back(colObj);
|
||||
}
|
||||
sortedObjects.quickSort(shapePointerCompareFunc);
|
||||
//sortedObjects.quickSort(shapePointerCompareFunc);
|
||||
for (int i=0;i<sortedObjects.size();i++)
|
||||
{
|
||||
btCollisionObject* colObj = sortedObjects[i];
|
||||
|
||||
@@ -25,7 +25,8 @@ struct OpenGLGuiHelper : public GUIHelperInterface
|
||||
virtual int registerGraphicsShape(const float* vertices, int numvertices, const int* indices, int numIndices,int primitiveType, int textureId);
|
||||
virtual int registerGraphicsInstance(int shapeIndex, const float* position, const float* quaternion, const float* color, const float* scaling);
|
||||
virtual void removeAllGraphicsInstances();
|
||||
|
||||
virtual void removeGraphicsInstance(int graphicsUid);
|
||||
|
||||
virtual void createCollisionShapeGraphicsObject(btCollisionShape* collisionShape);
|
||||
|
||||
virtual void syncPhysicsToGraphics(const btDiscreteDynamicsWorld* rbWorld);
|
||||
|
||||
Reference in New Issue
Block a user