diff --git a/spine-ue4/Content/GettingStarted/Blueprints/SpineboyHover_Blueprint.uasset b/spine-ue4/Content/GettingStarted/Blueprints/SpineboyHover_Blueprint.uasset new file mode 100644 index 000000000..538380cc3 Binary files /dev/null and b/spine-ue4/Content/GettingStarted/Blueprints/SpineboyHover_Blueprint.uasset differ diff --git a/spine-ue4/Plugins/SpinePlugin/Source/SpinePlugin/Private/SpineBoneDriverComponent.cpp b/spine-ue4/Plugins/SpinePlugin/Source/SpinePlugin/Private/SpineBoneDriverComponent.cpp index 6e4914d98..320322dfb 100644 --- a/spine-ue4/Plugins/SpinePlugin/Source/SpinePlugin/Private/SpineBoneDriverComponent.cpp +++ b/spine-ue4/Plugins/SpinePlugin/Source/SpinePlugin/Private/SpineBoneDriverComponent.cpp @@ -40,7 +40,7 @@ void USpineBoneDriverComponent::BeginPlay () { } void USpineBoneDriverComponent::BeforeUpdateWorldTransform(USpineSkeletonComponent* skeleton) { - if (skeleton == lastBoundComponent) { + if (skeleton == lastBoundComponent && skeleton) { if (UseComponentTransform) { skeleton->SetBoneWorldPosition(BoneName, GetComponentLocation()); } @@ -56,7 +56,7 @@ void USpineBoneDriverComponent::TickComponent (float DeltaTime, ELevelTick TickT if (Target) { USpineSkeletonComponent* skeleton = static_cast(Target->GetComponentByClass(USpineSkeletonComponent::StaticClass())); - if (skeleton != lastBoundComponent) { + if (skeleton != lastBoundComponent && skeleton) { // if (lastBoundComponent) lastBoundComponent->BeforeUpdateWorldTransform.RemoveAll(this); if (!skeleton->BeforeUpdateWorldTransform.GetAllObjects().Contains(this)) skeleton->BeforeUpdateWorldTransform.AddDynamic(this, &USpineBoneDriverComponent::BeforeUpdateWorldTransform);