Example #1
0
		//-------------------------------------------------------------
	//Crea un body estático con un fixture triangular centrado en el origen
	//-------------------------------------------------------------
	b2Body* PhysicManager::CreateTriangularStaticBody(b2Vec2 center, float h){
			
		b2Body* body= CreateStaticBody();
		b2FixtureDef tri=CreateTriangularFixtureDef(center,h,0.0f,0.0f,0.0f);
		body->CreateFixture(&tri);
		return body;
	}
Example #2
0
	//-------------------------------------------------------------
	//Crea un body estático con un fixture circular centrado en el origen
	//-------------------------------------------------------------
	b2Body* PhysicManager::CreateCircularStaticBody(float radius){
			
		b2Body* body= CreateStaticBody();
		b2FixtureDef cir=CreateCircularFixtureDef(radius,0.0f,0.0f,0.0f);
		body->CreateFixture(&cir);
		return body;
	}
Example #3
0
b2World::b2World(const b2AABB& worldAABB, const b2Vec2& gravity, bool doSleep)
{
	m_destructionListener = NULL;
	m_boundaryListener = NULL;
	m_contactFilter = &b2_defaultFilter;
	m_contactListener = NULL;
	m_debugDraw = NULL;

	m_bodyList = NULL;
	m_contactList = NULL;
	m_jointList = NULL;

	m_bodyCount = 0;
	m_contactCount = 0;
	m_jointCount = 0;

	m_allowSleep = doSleep;
	m_gravity = gravity;

	m_lock = false;

	m_contactManager.m_world = this;
	void* mem = b2Alloc(sizeof(b2BroadPhase));
	m_broadPhase = new (mem) b2BroadPhase(worldAABB, &m_contactManager);

	b2BodyDef bd;
	m_groundBody = CreateStaticBody(&bd);
}
Example #4
0
	//-------------------------------------------------------------
	//Crea un body estático con un fixture rectangular centrado en el origen
	//-------------------------------------------------------------
	b2Body* PhysicManager::CreateRectangularStaticBody(float sizeX, float sizeY,float density, float friction, float restitution){
		
		b2Body* body= CreateStaticBody();
		b2FixtureDef box=CreateRectangularFixtureDef(sizeX,sizeY,density,friction,restitution);
		body->CreateFixture(&box);
		return body;
	}
Example #5
0
b2Body* Game::CreateRectangularStaticBody(b2World *phyWorld, float sizeX, float sizeY){
    b2Body* body = CreateStaticBody(phyWorld);
    b2FixtureDef box = CreateRectangularFixtureDef(sizeX,sizeY,0.0f,0.5f,0.5f);
    body->CreateFixture(&box);

    return body;
}