From 73f2407f9d62066ffa8186bbc820e29c3e8e6b6c Mon Sep 17 00:00:00 2001 From: Dgizusse Date: Wed, 15 May 2013 12:12:07 -0400 Subject: [PATCH] - Fixed source textures being included in the build along the atlas. ***NOT BACKWARD COMPATIBLE*** --- spine-tk2d/Code/tk2dSpineSkeleton.cs | 8 ++--- spine-tk2d/Code/tk2dSpineSkeletonDataAsset.cs | 8 +++-- .../tk2dSpineSkeletonDataAssetInspector.cs | 34 +++++++++++++++--- spine-tk2d/Example/Example.unity | Bin 17944 -> 17960 bytes .../Skeleton/SpineboySkeletonAsset.asset | Bin 4240 -> 4244 bytes 5 files changed, 39 insertions(+), 11 deletions(-) diff --git a/spine-tk2d/Code/tk2dSpineSkeleton.cs b/spine-tk2d/Code/tk2dSpineSkeleton.cs index 823d3eccd..e6ec81750 100644 --- a/spine-tk2d/Code/tk2dSpineSkeleton.cs +++ b/spine-tk2d/Code/tk2dSpineSkeleton.cs @@ -138,10 +138,10 @@ public class tk2dSpineSkeleton : MonoBehaviour, tk2dRuntime.ISpriteCollectionFor mesh.uv = uvs; mesh.triangles = triangles; - if (skeletonDataAsset.sprites.normalGenerationMode != tk2dSpriteCollection.NormalGenerationMode.None) { + if (skeletonDataAsset.normalGenerationMode != tk2dSpriteCollection.NormalGenerationMode.None) { mesh.RecalculateNormals(); - if (skeletonDataAsset.sprites.normalGenerationMode == tk2dSpriteCollection.NormalGenerationMode.NormalsAndTangents) { + if (skeletonDataAsset.normalGenerationMode == tk2dSpriteCollection.NormalGenerationMode.NormalsAndTangents) { Vector4[] tangents = new Vector4[mesh.normals.Length]; for (int t = 0; t < tangents.Length; ++t) { tangents[t] = new Vector4(1, 0, 0, 1); @@ -150,7 +150,7 @@ public class tk2dSpineSkeleton : MonoBehaviour, tk2dRuntime.ISpriteCollectionFor } } - renderer.sharedMaterial = skeletonDataAsset.sprites.spriteCollection.inst.materials[0]; + renderer.sharedMaterial = skeletonDataAsset.spritesData.inst.materials[0]; } /* @@ -203,7 +203,7 @@ public class tk2dSpineSkeleton : MonoBehaviour, tk2dRuntime.ISpriteCollectionFor } public bool UsesSpriteCollection(tk2dSpriteCollectionData spriteCollection) { - return skeletonDataAsset.sprites.spriteCollection == spriteCollection; + return skeletonDataAsset.spritesData == spriteCollection; } public void ForceBuild() { diff --git a/spine-tk2d/Code/tk2dSpineSkeletonDataAsset.cs b/spine-tk2d/Code/tk2dSpineSkeletonDataAsset.cs index ddba8b969..b5b5f3ab7 100644 --- a/spine-tk2d/Code/tk2dSpineSkeletonDataAsset.cs +++ b/spine-tk2d/Code/tk2dSpineSkeletonDataAsset.cs @@ -9,7 +9,9 @@ public class tk2dSpineSkeletonDataAsset : ScriptableObject { /* */ - public tk2dSpriteCollection sprites; + public tk2dSpriteCollectionData spritesData; + public tk2dSpriteCollection.NormalGenerationMode normalGenerationMode = tk2dSpriteCollection.NormalGenerationMode.None; + public TextAsset skeletonJSON; public float scale = 1; @@ -42,7 +44,7 @@ public class tk2dSpineSkeletonDataAsset : ScriptableObject { /* */ private void MakeSkeletonAndAnimationData() { - if(sprites == null) { + if(spritesData == null) { Debug.LogWarning("Sprite collection not set for skeleton data asset: " + name,this); return; } @@ -52,7 +54,7 @@ public class tk2dSpineSkeletonDataAsset : ScriptableObject { return; } - SkeletonJson json = new SkeletonJson(new tk2dSpineAttachmentLoader(sprites.spriteCollection)); + SkeletonJson json = new SkeletonJson(new tk2dSpineAttachmentLoader(spritesData)); json.Scale = scale; try { diff --git a/spine-tk2d/Editor/tk2dSpineSkeletonDataAssetInspector.cs b/spine-tk2d/Editor/tk2dSpineSkeletonDataAssetInspector.cs index 286007fcc..cc97f67ce 100644 --- a/spine-tk2d/Editor/tk2dSpineSkeletonDataAssetInspector.cs +++ b/spine-tk2d/Editor/tk2dSpineSkeletonDataAssetInspector.cs @@ -10,18 +10,29 @@ public class tk2dSpineSkeletonDataAssetInspector : Editor { /* */ - private SerializedProperty sprites; private SerializedProperty skeletonJSON; private SerializedProperty scale; private SerializedProperty fromAnimation; private SerializedProperty toAnimation; private SerializedProperty duration; private bool showAnimationStateData = true; - + + private tk2dSpriteCollection sprites; + /* */ void OnEnable () { - sprites = serializedObject.FindProperty("sprites"); + + tk2dSpineSkeletonDataAsset skeletonDataAsset = target as tk2dSpineSkeletonDataAsset; + + if (skeletonDataAsset != null) { + tk2dSpriteCollectionData spritesData = skeletonDataAsset.spritesData; + + if (spritesData != null) { + sprites = AssetDatabase.LoadAssetAtPath( AssetDatabase.GUIDToAssetPath(spritesData.spriteCollectionGUID), typeof(tk2dSpriteCollection) ) as tk2dSpriteCollection; + } + } + skeletonJSON = serializedObject.FindProperty("skeletonJSON"); scale = serializedObject.FindProperty("scale"); fromAnimation = serializedObject.FindProperty("fromAnimation"); @@ -37,7 +48,22 @@ public class tk2dSpineSkeletonDataAssetInspector : Editor { tk2dSpineSkeletonDataAsset asset = target as tk2dSpineSkeletonDataAsset; EditorGUIUtility.LookLikeInspector(); - EditorGUILayout.PropertyField(sprites); + sprites = EditorGUILayout.ObjectField("Sprites", sprites, typeof(tk2dSpriteCollection), false) as tk2dSpriteCollection; + + if (sprites != null) { + SerializedProperty spritesData = serializedObject.FindProperty("spritesData"); + spritesData.objectReferenceValue = sprites.spriteCollection; + + SerializedProperty normalGenerationMode = serializedObject.FindProperty("normalGenerationMode"); + normalGenerationMode.enumValueIndex = (int)sprites.normalGenerationMode; + } else { + SerializedProperty spritesData = serializedObject.FindProperty("spritesData"); + spritesData.objectReferenceValue = null; + + SerializedProperty normalGenerationMode = serializedObject.FindProperty("normalGenerationMode"); + normalGenerationMode.enumValueIndex = (int)tk2dSpriteCollection.NormalGenerationMode.None; + } + EditorGUILayout.PropertyField(skeletonJSON); EditorGUILayout.PropertyField(scale); diff --git a/spine-tk2d/Example/Example.unity b/spine-tk2d/Example/Example.unity index 984945f60b93952d0afa6e755eed86a4fdc27654..5c7df9b62574148f6f1343923dc48ad25e46cac8 100644 GIT binary patch delta 62 zcmbQy!?>b{QJR6lk%581O#?`90@(^cn!!ZRP|qmMaHF)839C0;qEJ?IuC@v_< zEJ-Z}aVBqM&Xmi{D`CjXFUn2KaZk-lElMoO%+K@9Pf2B90h%E`c_WMPWGNOUMv2L` zEb5GslkYRDGfGYFWl?672FmF$%1pk`s>~=mnVC(QQ4XxyicNq~9xSRbIiF2=@@7_% z$;;UI7?mb(Vbx+(2Fs{`)vLnQtARz;!RoiLLDXwb-pZ!Vs5SX6&}8k&jO@ycI$-q{ z?EH+nU{*A{0OOR&IqYfzy`u3C<9>f|Y4=@vj&Yvd{>_Wn9XTe;2$(PfJu%r|z!3mi CCQiKo delta 286 zcmbQDI6+aGfq{J$1B1W>1_lOBAPuA#7)CrXCdBBSEucWhFV+1UgbmB4b!VBIQMb*q9^ zsDX8>gLP{Fb*nRKP8MTVX4IN&1thgWIt9{l@)JuS*0KQor2`aHW}Gm2DZ84$ee*RF jU*3@NUK)Gqw06X&h|Raz9XTcoa9B>35ipq?BH#c3f0R(P