Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[Box2D] Jak sprawdzić czy jest kontakt?

Ostatnio zmodyfikowano 2013-01-01 14:11
Autor Wiadomość
ridic14
Temat założony przez niniejszego użytkownika
» 2012-12-31 19:26:26
No.. jest?
P-72565
Mrovqa
» 2012-12-31 19:39:59
Więc
Sprawdzaj czy wskaźniki są !=NULL zanim cokolwiek z nimi zrobisz dalej.
P-72569
ridic14
Temat założony przez niniejszego użytkownika
» 2012-12-31 19:49:46
Nie rozumiem tych twórców box2d, idealnie sprawdza ich kod kolizje a nie zrobili jakiegoś bool'a do mówienia o tym czy jakaś kolizja jest...
tak taż nie trybi
C/C++
for( b2ContactEdge * ce = bullet->GetContactList(); ce; ce = ce->next )
{
    if( ce->contact != NULL )
    {
        b2Contact * c = ce->contact;
        if( c != NULL )
        {
            endit = c->GetFixtureA()->GetBody()->IsBullet();
            std::cout << endit << std::endl;
        }
    }
}
P-72572
Mrovqa
» 2012-12-31 21:16:36
Nie pisałem jeszcze w Box2D, ale:
c->GetFixtureA()->GetBody()->IsBullet();
każde
->
 to jest przecież odwołanie się poprzez wskaźnik.
P-72576
ridic14
Temat założony przez niniejszego użytkownika
» 2013-01-01 14:11:01
C/C++
//Błąd:
bullets.erase( bullets.begin() + i - 1 );
//Poprawnie:
bullets.erase( bullets.begin() + i );

Głupi błąd a znalezienie go zabrało mi dwa dni :?
P-72590
1 « 2 »
Poprzednia strona Strona 2 z 2