You've already forked UnrealEngineUWP
mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
Merge Release-Engine-Staging to Main @ CL# 14467590
This represents UE4/Main @ 14432125 + some cherrypick fixes [CL 14468207 by Marc Audy in ue5-main branch]
This commit is contained in:
@@ -13,6 +13,7 @@ FPhysicsAssetEditorAnimInstanceProxy::FPhysicsAssetEditorAnimInstanceProxy()
|
||||
: TargetActor(nullptr)
|
||||
, HandleActor(nullptr)
|
||||
, HandleJoint(nullptr)
|
||||
, FloorActor(nullptr)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -21,6 +22,7 @@ FPhysicsAssetEditorAnimInstanceProxy::FPhysicsAssetEditorAnimInstanceProxy(UAnim
|
||||
, TargetActor(nullptr)
|
||||
, HandleActor(nullptr)
|
||||
, HandleJoint(nullptr)
|
||||
, FloorActor(nullptr)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -39,6 +41,8 @@ void FPhysicsAssetEditorAnimInstanceProxy::Initialize(UAnimInstance* InAnimInsta
|
||||
{
|
||||
SolverIterations = PhysicsAsset->SolverIterations;
|
||||
}
|
||||
|
||||
FloorActor = nullptr;
|
||||
#endif
|
||||
}
|
||||
|
||||
@@ -179,3 +183,35 @@ void FPhysicsAssetEditorAnimInstanceProxy::UpdateDriveSettings(bool bLinearSoft,
|
||||
#endif
|
||||
}
|
||||
|
||||
void FPhysicsAssetEditorAnimInstanceProxy::CreateSimulationFloor(FBodyInstance* FloorBodyInstance, const FTransform& Transform)
|
||||
{
|
||||
#if WITH_CHAOS && !PHYSICS_INTERFACE_PHYSX
|
||||
using namespace Chaos;
|
||||
|
||||
DestroySimulationFloor();
|
||||
|
||||
ImmediatePhysics::FSimulation* Simulation = RagdollNode.GetSimulation();
|
||||
if (Simulation != nullptr)
|
||||
{
|
||||
FloorActor = Simulation->CreateKinematicActor(FloorBodyInstance, Transform);
|
||||
if (FloorActor != nullptr)
|
||||
{
|
||||
Simulation->AddToCollidingPairs(FloorActor);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
void FPhysicsAssetEditorAnimInstanceProxy::DestroySimulationFloor()
|
||||
{
|
||||
#if WITH_CHAOS && !PHYSICS_INTERFACE_PHYSX
|
||||
using namespace Chaos;
|
||||
ImmediatePhysics::FSimulation* Simulation = RagdollNode.GetSimulation();
|
||||
if ((Simulation != nullptr) && (FloorActor != nullptr))
|
||||
{
|
||||
Simulation->DestroyActor(FloorActor);
|
||||
FloorActor = nullptr;
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user