diff --git a/spine-cpp/spine-cpp/include/spine/spine.h b/spine-cpp/spine-cpp/include/spine/spine.h index 8271eb941..f6f6cfa12 100644 --- a/spine-cpp/spine-cpp/include/spine/spine.h +++ b/spine-cpp/spine-cpp/include/spine/spine.h @@ -55,11 +55,12 @@ #include #include #include -#include #include +#include #include #include #include +#include #include #include #include @@ -73,15 +74,17 @@ #include #include #include -#include +#include #include +#include #include #include #include +#include +#include #include #include #include -#include #include #include #include @@ -98,11 +101,9 @@ #include #include #include -#include #include #include #include -#include #include #include #include diff --git a/spine-ue4/Plugins/SpinePlugin/Source/SpinePlugin/Private/SpineSkeletonAnimationComponent.cpp b/spine-ue4/Plugins/SpinePlugin/Source/SpinePlugin/Private/SpineSkeletonAnimationComponent.cpp index edcbdf536..b9be57e1b 100644 --- a/spine-ue4/Plugins/SpinePlugin/Source/SpinePlugin/Private/SpineSkeletonAnimationComponent.cpp +++ b/spine-ue4/Plugins/SpinePlugin/Source/SpinePlugin/Private/SpineSkeletonAnimationComponent.cpp @@ -110,6 +110,7 @@ void USpineSkeletonAnimationComponent::InternalTick(float DeltaTime, bool CallDe state->update(DeltaTime); state->apply(*skeleton); if (CallDelegates) BeforeUpdateWorldTransform.Broadcast(this); + skeleton->update(DeltaTime); skeleton->updateWorldTransform(); if (CallDelegates) AfterUpdateWorldTransform.Broadcast(this); } @@ -191,7 +192,7 @@ void USpineSkeletonAnimationComponent::SetPlaybackTime(float InPlaybackTime, boo if (bCallDelegates) { BeforeUpdateWorldTransform.Broadcast(this); } - skeleton->updateWorldTransform(); + skeleton->updateWorldTransform(Physics_Update); if (bCallDelegates) { AfterUpdateWorldTransform.Broadcast(this); } diff --git a/spine-ue4/Plugins/SpinePlugin/Source/SpinePlugin/Private/SpineWidget.cpp b/spine-ue4/Plugins/SpinePlugin/Source/SpinePlugin/Private/SpineWidget.cpp index dc0a6e70d..48da5d178 100644 --- a/spine-ue4/Plugins/SpinePlugin/Source/SpinePlugin/Private/SpineWidget.cpp +++ b/spine-ue4/Plugins/SpinePlugin/Source/SpinePlugin/Private/SpineWidget.cpp @@ -134,7 +134,7 @@ void USpineWidget::Tick(float DeltaTime, bool CallDelegates) { state->update(DeltaTime); state->apply(*skeleton); if (CallDelegates) BeforeUpdateWorldTransform.Broadcast(this); - skeleton->updateWorldTransform(); + skeleton->updateWorldTransform(Physics_Update); if (CallDelegates) AfterUpdateWorldTransform.Broadcast(this); } } @@ -169,7 +169,7 @@ void USpineWidget::CheckState() { state->setListener(callbackWidget); trackEntries.Empty(); skeleton->setToSetupPose(); - skeleton->updateWorldTransform(); + skeleton->updateWorldTransform(Physics_Update); slateWidget->SetData(this); } } @@ -270,10 +270,10 @@ bool USpineWidget::SetAttachment(const FString slotName, const FString attachmen return false; } -void USpineWidget::UpdateWorldTransform() { +void USpineWidget::UpdateWorldTransform(spine::Physics physics) { CheckState(); if (skeleton) { - skeleton->updateWorldTransform(); + skeleton->updateWorldTransform(physics); } } @@ -414,7 +414,7 @@ void USpineWidget::SetPlaybackTime(float InPlaybackTime, bool bCallDelegates) { if (bCallDelegates) { BeforeUpdateWorldTransform.Broadcast(this); } - skeleton->updateWorldTransform(); + skeleton->updateWorldTransform(Physics_Update); if (bCallDelegates) { AfterUpdateWorldTransform.Broadcast(this); } diff --git a/spine-ue4/Plugins/SpinePlugin/Source/SpinePlugin/Public/SpineWidget.h b/spine-ue4/Plugins/SpinePlugin/Source/SpinePlugin/Public/SpineWidget.h index 2836a484a..8a38e4705 100644 --- a/spine-ue4/Plugins/SpinePlugin/Source/SpinePlugin/Public/SpineWidget.h +++ b/spine-ue4/Plugins/SpinePlugin/Source/SpinePlugin/Public/SpineWidget.h @@ -103,7 +103,7 @@ public: bool SetAttachment(const FString slotName, const FString attachmentName); UFUNCTION(BlueprintCallable, Category = "Components|Spine|Skeleton") - void UpdateWorldTransform(); + void UpdateWorldTransform(spine::Physics physics); UFUNCTION(BlueprintCallable, Category = "Components|Spine|Skeleton") void SetToSetupPose();