2014-03-19 1 views
0

무대에 많은 정적 객체 - 장애물이 있습니다. 다음과 같이 내가 그들을 추가box2d 많은 정적 객체

b2BodyDef groundBodyDef; 
        groundBodyDef.position.Set(i/PTM_RATIO, j/PTM_RATIO); 

        b2Body *groundBody = world->CreateBody(&groundBodyDef); 
        b2PolygonShape groundEdge; 
        b2FixtureDef boxShapeDef; 
        boxShapeDef.shape = &groundEdge; 

        groundEdge.SetAsBox(64/PTM_RATIO, 64/PTM_RATIO); 
        groundBody->CreateFixture(&boxShapeDef); 

을 그리고 어떻게 그냥 콜로세움에 대한 간단한 사각형 여자 친구 정적 개체를 추가 할 수 있습니다 .. 결국 2000 년과 주변의 같은 객체가 응용 프로그램을 느리게 시작 밝혀?

+0

세계의 윤곽을 그리려면 b2EdgeChain 모양을 사용해야합니다. 하나의 몸체 만 사용하고 여러 모양 (조명기)을 사용하면 성능에 도움이 될 수 있습니다. – LearnCocos2D

+0

그래서 ... 조금 이해하지 못합니다. 여기서 원점은 (20, 20)과 끝 (40.40)으로하고 두 번째 사각형은 원점 (100,100)과 끝 (120,120)으로 정사각형을 만들어야합니다. 어떻게해야합니까? 그리고 많은 사각형이있을 것입니다 – user3272013

답변

0

화면을 벗어나는 시체를 제거하거나 다시 사용해야합니다. 예를 들어 사이드 스크롤링 게임에서 장애물이 화면 가장자리를 떠날 때 돌아 오지 않을 가능성이 높으므로 둘 중 하나를 제거하는 것이 안전합니다 (따라서 상자 2d는 충돌을 확인할 때 고려하지 않습니다. 또한 당신이 이기고, 당신의 방법으로 그들을 고려해야 만합니다.) 그들을 재사용해야합니다 - 당신은 그러한 몸의 위치를 ​​바꿀 수 있습니다, 그래서 그것은 다시 오른쪽에있게 될 것입니다.

어느 쪽이든, 몸을 많이 만들어서는 안됩니다. 이는 몸을 움직이는 확실하고 빠른 방법이기 때문에.

+0

화면의 영역에 있는지 여부에 관계없이이 모든 신체가 항상 나를 필요로한다면 무엇을해야합니까? 나는 단순히 움직임을 제한하기 위해 이러한 몸체가 필요하다. 정적 몸체를 추가하는 것과 같은 다른 방법이있을 수 있는가? – user3272013

+0

원래 질문을 더 자세히 편집 할 수 있습니까? 원하는 것은 무엇을하고 싶은지, 그리고 왜 그렇게 많은 시체가 필요한지? – Losiowaty