INNER CODE UNIT · C++
rigidObj2
vectozavr/3dzavr · engine/World.cpp:57
auto rigidObj2 = obj2->getComponent<RigidObject>();
if(!rigidObj2) {
return;
}
std::pair<bool, Simplex> gjk = rigidObj1->checkGJKCollision(rigidObj2);
if (!gjk.first) {
return; // no collision
}
CollisionPoint epa = rigidObj1->EPA(gjk.second, rigidObj2);
RigidObject::SolveCollision(epa, rigidObj1, rigidObj2);
if (rigidObj1->collisionCallBack() != nullptr) {
rigidObj1->collisionCallBack()(epa, rigidObj1, rigidObj2);
}
if (rigidObj2->collisionCallBack() != nullptr) {
rigidObj2->collisionCallBack()(epa, rigidObj2, rigidObj1);