Beispiel #1
0
PhysicWorld::PhysicWorld(const WorldInfo info)
{

	m_collisionConfiguration = new btDefaultCollisionConfiguration();
	m_dispatcher = new btCollisionDispatcher(m_collisionConfiguration);

	m_overlappingPairCache = new btAxisSweep3(info.getMin()->toBtVector3(),info.getMax()->toBtVector3());

	#if SLIDER_DEMO_USE_ODE_SOLVER
	m_constraintSolver = new btOdeQuickstepConstraintSolver();
	#else
		m_constraintSolver = new btSequentialImpulseConstraintSolver();
	#endif
	m_dynamicsWorld = new btDiscreteDynamicsWorld(m_dispatcher,m_overlappingPairCache,m_constraintSolver,m_collisionConfiguration);
	//	wp->getSolverInfo().m_numIterations = 20; // default is 10
	this->m_gravite = info.getGravity()->toBtVector3();
	m_dynamicsWorld->setGravity(this->m_gravite);
}