add single step rendering feature:

while (1):
    stepSimulation()
    pybullet.configureDebugVisualizer(pybullet.COV_ENABLE_SINGLE_STEP_RENDERING, 1)

disable single step using
pybullet.configureDebugVisualizer(pybullet.COV_ENABLE_SINGLE_STEP_RENDERING, 0)
This commit is contained in:
erwincoumans
2018-09-14 17:17:11 -07:00
parent d909448ee3
commit e6d74580c1
4 changed files with 11 additions and 1 deletions

View File

@@ -390,6 +390,13 @@ void OpenGLExampleBrowserVisualizerFlagCallback(int flag, bool enable)
{ {
gEnableRenderLoop = (enable!=0); gEnableRenderLoop = (enable!=0);
} }
if (flag == COV_ENABLE_SINGLE_STEP_RENDERING)
{
singleStepSimulation = true;
}
if (flag == COV_ENABLE_SHADOWS) if (flag == COV_ENABLE_SHADOWS)
{ {
useShadowMap = enable; useShadowMap = enable;

View File

@@ -1824,6 +1824,8 @@ void PhysicsServerCommandProcessor::setGuiHelper(struct GUIHelperInterface* guiH
guiHelper->createPhysicsDebugDrawer(m_data->m_dynamicsWorld); guiHelper->createPhysicsDebugDrawer(m_data->m_dynamicsWorld);
} else } else
{ {
//state loggers use guiHelper, so remove them before the guiHelper is deleted
deleteStateLoggers();
if (m_data->m_guiHelper && m_data->m_dynamicsWorld && m_data->m_dynamicsWorld->getDebugDrawer()) if (m_data->m_guiHelper && m_data->m_dynamicsWorld && m_data->m_dynamicsWorld->getDebugDrawer())
{ {

View File

@@ -793,7 +793,7 @@ enum b3ConfigureDebugVisualizerEnum
COV_ENABLE_DEPTH_BUFFER_PREVIEW, COV_ENABLE_DEPTH_BUFFER_PREVIEW,
COV_ENABLE_SEGMENTATION_MARK_PREVIEW, COV_ENABLE_SEGMENTATION_MARK_PREVIEW,
COV_ENABLE_PLANAR_REFLECTION, COV_ENABLE_PLANAR_REFLECTION,
COV_ENABLE_SINGLE_STEP_RENDERING,
}; };
enum b3AddUserDebugItemEnum enum b3AddUserDebugItemEnum

View File

@@ -9815,6 +9815,7 @@ initpybullet(void)
PyModule_AddIntConstant(m, "COV_ENABLE_DEPTH_BUFFER_PREVIEW", COV_ENABLE_DEPTH_BUFFER_PREVIEW); PyModule_AddIntConstant(m, "COV_ENABLE_DEPTH_BUFFER_PREVIEW", COV_ENABLE_DEPTH_BUFFER_PREVIEW);
PyModule_AddIntConstant(m, "COV_ENABLE_SEGMENTATION_MARK_PREVIEW", COV_ENABLE_SEGMENTATION_MARK_PREVIEW); PyModule_AddIntConstant(m, "COV_ENABLE_SEGMENTATION_MARK_PREVIEW", COV_ENABLE_SEGMENTATION_MARK_PREVIEW);
PyModule_AddIntConstant(m, "COV_ENABLE_PLANAR_REFLECTION", COV_ENABLE_PLANAR_REFLECTION); PyModule_AddIntConstant(m, "COV_ENABLE_PLANAR_REFLECTION", COV_ENABLE_PLANAR_REFLECTION);
PyModule_AddIntConstant(m, "COV_ENABLE_SINGLE_STEP_RENDERING", COV_ENABLE_SINGLE_STEP_RENDERING);
PyModule_AddIntConstant(m, "ER_TINY_RENDERER", ER_TINY_RENDERER); PyModule_AddIntConstant(m, "ER_TINY_RENDERER", ER_TINY_RENDERER);