PhysX3.4 - Exception on collision
OsirisDeveloper opened this issue · 1 comments
Hi, I just added PhysX to my game and trying to resolve collisions, unfortunately, I have a crash on the contact of 2 dynamic objects here:
` struct PxCollisionBitMap
{
PX_INLINE PxCollisionBitMap() : enable(true) {}
bool operator()() const { return enable; }
bool& operator= (const bool &v) { enable = v; return enable; }
private:
bool enable;
};
`
Callstack:
Totem3IACW2_Battle.exe!`anonymous namespace'::PxCollisionBitMap::operator()() Line 52 C++
Totem3IACW2_Battle.exe!physx::PxDefaultSimulationFilterShader(unsigned int attributes0, physx::PxFilterData filterData0, unsigned int attributes1, physx::PxFilterData filterData1, physx::PxFlags<enum physx::PxPairFlag::Enum,unsigned short> & pairFlags, const void * constantBlock, unsigned int constantBlockSize) Line 284 C++
PhysX3DEBUG_x86.dll!physx::Sc::NPhaseCore::runFilterShader(const physx::Sc::ElementSim & e0, const physx::Sc::ElementSim & e1, unsigned int & attr0, physx::PxFilterData & filterData0, unsigned int & attr1, physx::PxFilterData & filterData1, physx::PxFilterInfo & filterInfo) Line 1166 C++
PhysX3DEBUG_x86.dll!physx::Sc::NPhaseCore::runFilter(const physx::Sc::ElementSim & e0, const physx::Sc::ElementSim & e1, unsigned int filterPairIndex, bool doCallbacks) Line 1200 C++
PhysX3DEBUG_x86.dll!physx::Sc::NPhaseCore::filterRbCollisionPairSecondStage(const physx::Sc::ShapeSim & s0, const physx::Sc::ShapeSim & s1, const physx::Sc::BodySim * b0, const physx::Sc::BodySim * b1, unsigned int filterPairIndex, bool runCallbacks) Line 1271 C++
PhysX3DEBUG_x86.dll!physx::Sc::NPhaseCore::filterRbCollisionPair(const physx::Sc::ShapeSim & s0, const physx::Sc::ShapeSim & s1, unsigned int filterPairIndex, unsigned int & isTriggerPair, bool runCallbacks) Line 1362 C++
PhysX3DEBUG_x86.dll!physx::Sc::NPhaseCore::onOverlapFilter(physx::Sc::ElementSim * volume0, physx::Sc::ElementSim * volume1) Line 204 C++
PhysX3DEBUG_x86.dll!OverlapFilterTask::runInternal() Line 6344 C++
PhysX3DEBUG_x86.dll!physx::Cm::Task::run() Line 67 C++
Can you direct me what can I check to resolve this? It just looks like here:
// Collision Group if (!gCollisionTable[filterData0.word0][filterData1.word0]()) { return PxFilterFlag::eSUPPRESS; }
word0 == 65537
It looks like this is still in action with export from Max:
https://devtalk.nvidia.com/default/topic/813601/other-tools/physx-plug-in-version-3-02-01024-04200-for-3dstudio-max-2015-issue-/