mirror of
https://github.com/EsotericSoftware/spine-runtimes.git
synced 2026-03-26 22:49:01 +08:00
Merge branch '3.7' of https://github.com/esotericsoftware/spine-runtimes into 3.7
This commit is contained in:
commit
bd4a7328a5
@ -89,23 +89,25 @@ void USpineSkeletonAnimationComponent::BeginPlay() {
|
|||||||
void USpineSkeletonAnimationComponent::TickComponent(float DeltaTime, ELevelTick TickType, FActorComponentTickFunction* ThisTickFunction) {
|
void USpineSkeletonAnimationComponent::TickComponent(float DeltaTime, ELevelTick TickType, FActorComponentTickFunction* ThisTickFunction) {
|
||||||
Super::Super::TickComponent(DeltaTime, TickType, ThisTickFunction);
|
Super::Super::TickComponent(DeltaTime, TickType, ThisTickFunction);
|
||||||
|
|
||||||
InternalTick(DeltaTime);
|
InternalTick(DeltaTime, true, TickType == LEVELTICK_ViewportsOnly);
|
||||||
}
|
}
|
||||||
|
|
||||||
void USpineSkeletonAnimationComponent::InternalTick(float DeltaTime, bool CallDelegates) {
|
void USpineSkeletonAnimationComponent::InternalTick(float DeltaTime, bool CallDelegates, bool Preview) {
|
||||||
CheckState();
|
CheckState();
|
||||||
|
|
||||||
if (state && bAutoPlaying) {
|
if (state && bAutoPlaying) {
|
||||||
if (lastPreviewAnimation != PreviewAnimation) {
|
if (Preview) {
|
||||||
if (PreviewAnimation != "") SetAnimation(0, PreviewAnimation, true);
|
if (lastPreviewAnimation != PreviewAnimation) {
|
||||||
else SetEmptyAnimation(0, 0);
|
if (PreviewAnimation != "") SetAnimation(0, PreviewAnimation, true);
|
||||||
lastPreviewAnimation = PreviewAnimation;
|
else SetEmptyAnimation(0, 0);
|
||||||
}
|
lastPreviewAnimation = PreviewAnimation;
|
||||||
|
}
|
||||||
|
|
||||||
if (lastPreviewSkin != PreviewSkin) {
|
if (lastPreviewSkin != PreviewSkin) {
|
||||||
if (PreviewSkin != "") SetSkin(PreviewSkin);
|
if (PreviewSkin != "") SetSkin(PreviewSkin);
|
||||||
else SetSkin("default");
|
else SetSkin("default");
|
||||||
lastPreviewSkin = PreviewSkin;
|
lastPreviewSkin = PreviewSkin;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
state->update(DeltaTime);
|
state->update(DeltaTime);
|
||||||
state->apply(*skeleton);
|
state->apply(*skeleton);
|
||||||
|
|||||||
@ -258,7 +258,7 @@ void USpineSkeletonComponent::TickComponent (float DeltaTime, ELevelTick TickTyp
|
|||||||
InternalTick(DeltaTime);
|
InternalTick(DeltaTime);
|
||||||
}
|
}
|
||||||
|
|
||||||
void USpineSkeletonComponent::InternalTick(float DeltaTime, bool CallDelegates) {
|
void USpineSkeletonComponent::InternalTick(float DeltaTime, bool CallDelegates, bool Preview) {
|
||||||
CheckState();
|
CheckState();
|
||||||
|
|
||||||
if (skeleton) {
|
if (skeleton) {
|
||||||
|
|||||||
@ -260,10 +260,10 @@ public:
|
|||||||
UPROPERTY(BlueprintAssignable, Category="Components|Spine|Animation")
|
UPROPERTY(BlueprintAssignable, Category="Components|Spine|Animation")
|
||||||
FSpineAnimationDisposeDelegate AnimationDispose;
|
FSpineAnimationDisposeDelegate AnimationDispose;
|
||||||
|
|
||||||
UPROPERTY(Transient, EditAnywhere, Category=Spine)
|
UPROPERTY(EditAnywhere, Category=Spine)
|
||||||
FString PreviewAnimation;
|
FString PreviewAnimation;
|
||||||
|
|
||||||
UPROPERTY(Transient, EditAnywhere, Category=Spine)
|
UPROPERTY(EditAnywhere, Category=Spine)
|
||||||
FString PreviewSkin;
|
FString PreviewSkin;
|
||||||
|
|
||||||
// used in C event callback. Needs to be public as we can't call
|
// used in C event callback. Needs to be public as we can't call
|
||||||
@ -271,7 +271,7 @@ public:
|
|||||||
void GCTrackEntry(UTrackEntry* entry) { trackEntries.Remove(entry); }
|
void GCTrackEntry(UTrackEntry* entry) { trackEntries.Remove(entry); }
|
||||||
protected:
|
protected:
|
||||||
virtual void CheckState () override;
|
virtual void CheckState () override;
|
||||||
virtual void InternalTick(float DeltaTime, bool CallDelegates = true) override;
|
virtual void InternalTick(float DeltaTime, bool CallDelegates = true, bool Preview = false) override;
|
||||||
virtual void DisposeState () override;
|
virtual void DisposeState () override;
|
||||||
|
|
||||||
spine::AnimationState* state;
|
spine::AnimationState* state;
|
||||||
|
|||||||
@ -133,7 +133,7 @@ public:
|
|||||||
|
|
||||||
protected:
|
protected:
|
||||||
virtual void CheckState ();
|
virtual void CheckState ();
|
||||||
virtual void InternalTick(float DeltaTime, bool CallDelegates = true);
|
virtual void InternalTick(float DeltaTime, bool CallDelegates = true, bool Preview = false);
|
||||||
virtual void DisposeState ();
|
virtual void DisposeState ();
|
||||||
|
|
||||||
spine::Skeleton* skeleton;
|
spine::Skeleton* skeleton;
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user