1
我是Box2D的新手,我試圖通過使用b2Contact來檢測對象(Ball)是否設法通過另一個對象(目標)。Box2D b2Contact傳感器無法檢測對象碰撞
對於我的Goal對象,我在聲明中實現了b2ContactListener,並重寫了BeginContact和EndContact函數。在代碼中,我試圖找出一些隨機單詞來查看BeginContact或EndContact函數是否被調用,但沒有任何結果。代碼如下:
void Goooal::BeginContact(b2Contact* contact)
{
std::cout << "AAAAAAAAAAAAA";
if (contact && contact->IsTouching())
{
std::cout << "BBBBBBBBBBBBBBB";
}
}
void Goooal::EndContact(b2Contact* contact)
{
std::cout << "CCCCCCCCCCCCCCCC";
}
從上面的代碼中,沒有輸出(AAA/BBB/CCC)都出來,我很相信我的球和目標已經通過相互傳遞。
傳感器聲明如下:
bodyFixtureD.isSensor = true;
我可以知道我在哪裏做錯了嗎?還是我需要爲我的球實施b2ContactListener?
你是對的!愚蠢的我。謝謝 :) –