アニメーションによる Blend Physics の負荷軽減のために、スケルタルメッシュの Physics を AsyncScene に設定したいのですが、AsyncScene のスケルタルメッシュと SyncScene のスタティックメッシュが衝突しなくなってしまいました。
SyncScene と AsyncScene で Physics Scene が別れているからだと思いますが、何か良い方法は御座いますでしょうか?
また、ProjectSettings > Physics > EnableShapeSharing を有効化すると、下記のコードの check(OwningPxRididActor) で Assert するようです。
ご教授の程、よろしくお願いいたします。
Engine/Source/Runtime/Engine/Private/PhysicsEngine/PhysicsInterfacePhysX.cpp: 1142
FTransform FPhysicsInterface_PhysX::GetTransform(const FPhysicsShapeHandle_PhysX& InShape)
{
if(InShape.IsValid())
{
PxRigidActor* OwningPxRigidActor = InShape.Shape->getActor();
check(OwningPxRigidActor);
FBodyInstance* BodyInst = FPhysxUserData::Get(OwningPxRigidActor->userData);
if(BodyInst && BodyInst->ActorHandle.IsValid())
{
return GetLocalTransform(InShape) * GetTransform_AssumesLocked(BodyInst->ActorHandle);
}
}
return FTransform::Identity;
}