mirror of
https://github.com/EsotericSoftware/spine-runtimes.git
synced 2026-03-26 22:49:01 +08:00
Initialize skeleton on start.
This commit is contained in:
parent
56ec15c0f4
commit
5070b21341
@ -29,9 +29,12 @@ public class tk2dSpineSkeleton : MonoBehaviour, tk2dRuntime.ISpriteCollectionFor
|
|||||||
vertexPositions = new float[8];
|
vertexPositions = new float[8];
|
||||||
}
|
}
|
||||||
|
|
||||||
void Update () {
|
void Start () {
|
||||||
SkeletonData skeletonData = (skeletonDataAsset != null) ? skeletonDataAsset.GetSkeletonData() : null;
|
Initialize();
|
||||||
|
}
|
||||||
|
|
||||||
|
void Update () {
|
||||||
|
SkeletonData skeletonData = skeletonDataAsset == null ? null : skeletonDataAsset.GetSkeletonData();
|
||||||
if (skeletonData == null) {
|
if (skeletonData == null) {
|
||||||
Clear();
|
Clear();
|
||||||
return;
|
return;
|
||||||
@ -46,6 +49,7 @@ public class tk2dSpineSkeleton : MonoBehaviour, tk2dRuntime.ISpriteCollectionFor
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void Clear() {
|
private void Clear() {
|
||||||
|
Debug.Log("clear?!");
|
||||||
GetComponent<MeshFilter>().mesh = null;
|
GetComponent<MeshFilter>().mesh = null;
|
||||||
DestroyImmediate(mesh);
|
DestroyImmediate(mesh);
|
||||||
mesh = null;
|
mesh = null;
|
||||||
@ -161,14 +165,12 @@ public class tk2dSpineSkeleton : MonoBehaviour, tk2dRuntime.ISpriteCollectionFor
|
|||||||
|
|
||||||
private void UpdateAnimation() {
|
private void UpdateAnimation() {
|
||||||
// Check if we need to stop current animation
|
// Check if we need to stop current animation
|
||||||
if(state.Animation != null && animationName == null) {
|
if (state.Animation != null && animationName == null) {
|
||||||
state.ClearAnimation();
|
state.ClearAnimation();
|
||||||
}
|
} else if (state.Animation == null || animationName != state.Animation.Name) {
|
||||||
|
// Check for different animation name or animation end
|
||||||
// Check for different animation name or animation end
|
|
||||||
else if(state.Animation == null || animationName != state.Animation.Name) {
|
|
||||||
Spine.Animation animation = skeleton.Data.FindAnimation(animationName);
|
Spine.Animation animation = skeleton.Data.FindAnimation(animationName);
|
||||||
if(animation != null) state.SetAnimation(animation,loop);
|
if (animation != null) state.SetAnimation(animation,loop);
|
||||||
}
|
}
|
||||||
|
|
||||||
state.Loop = loop;
|
state.Loop = loop;
|
||||||
|
|||||||
Binary file not shown.
@ -18,9 +18,9 @@ public class tk2dSpineboy : MonoBehaviour {
|
|||||||
/*
|
/*
|
||||||
*/
|
*/
|
||||||
void Update() {
|
void Update() {
|
||||||
if(skeleton.loop) return;
|
if (skeleton.loop) return;
|
||||||
|
|
||||||
if(skeleton.state.Time >= skeleton.state.Animation.Duration - 0.25) {
|
if (skeleton.state.Animation != null && skeleton.state.Time >= skeleton.state.Animation.Duration - 0.25) {
|
||||||
skeleton.animationName = "walk";
|
skeleton.animationName = "walk";
|
||||||
skeleton.loop = true;
|
skeleton.loop = true;
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user