You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
160 lines
5.9 KiB
160 lines
5.9 KiB
using Spine;
|
|
using Spine.Unity;
|
|
using Spine.Unity.AttachmentTools;
|
|
using UnityEngine;
|
|
|
|
public class SpineTestMgr : MonoBehaviour
|
|
{
|
|
[SerializeField]
|
|
SkeletonAnimation skanimTest1;
|
|
[SerializeField]
|
|
MeshRenderer rendTest1;
|
|
[SerializeField]
|
|
SkeletonAnimation skanimTest2;
|
|
[SerializeField]
|
|
MeshRenderer rendTest2;
|
|
[SerializeField]
|
|
Color[] clrHairs1;
|
|
[SerializeField]
|
|
Color[] clrHairs2;
|
|
[SerializeField]
|
|
Color[] clrEyes;
|
|
[SerializeField]
|
|
Texture2D[] tx2dChanges1;
|
|
[SerializeField]
|
|
Texture2D[] tx2dChanges2;
|
|
int ihair1 = 0;
|
|
int ihair2 = 0;
|
|
int ieye = 0;
|
|
int icostume1 = 0;
|
|
int icostume2 = 0;
|
|
|
|
MaterialPropertyBlock mpbChange1;
|
|
MaterialPropertyBlock mpbChange2;
|
|
|
|
|
|
private void InitTest()
|
|
{
|
|
skanimTest1.skeleton.FindSlot("arm_R").SetColor(Color.gray);
|
|
skanimTest1.skeleton.FindSlot("acce1").SetColor(Color.gray);
|
|
skanimTest1.skeleton.FindSlot("acce2").SetColor(Color.gray);
|
|
skanimTest1.skeleton.FindSlot("mouse").SetColor(Color.gray);
|
|
skanimTest1.skeleton.FindSlot("eye_l").SetColor(Color.gray);
|
|
skanimTest1.skeleton.FindSlot("eye_h").SetColor(Color.gray);
|
|
skanimTest1.skeleton.FindSlot("head").SetColor(Color.gray);
|
|
skanimTest1.skeleton.FindSlot("body").SetColor(Color.gray);
|
|
skanimTest1.skeleton.FindSlot("finger").SetColor(Color.gray);
|
|
skanimTest1.skeleton.FindSlot("arm_L").SetColor(Color.gray);
|
|
skanimTest1.skeleton.FindSlot("leg_R").SetColor(Color.gray);
|
|
skanimTest1.skeleton.FindSlot("leg_L").SetColor(Color.gray);
|
|
skanimTest1.skeleton.FindSlot("back_acce").SetColor(Color.gray);
|
|
skanimTest1.skeleton.FindSlot("acce3").SetColor(Color.gray);
|
|
skanimTest1.skeleton.FindSlot("shadow").SetColor(Color.gray);
|
|
|
|
skanimTest1.skeleton.FindSlot("hair_h").SetColor(Color.gray);
|
|
skanimTest1.skeleton.FindSlot("hair_0").SetColor(Color.gray);
|
|
skanimTest1.skeleton.FindSlot("eyebrow").SetColor(Color.gray);
|
|
skanimTest1.skeleton.FindSlot("hair_d").SetColor(Color.gray);
|
|
skanimTest1.skeleton.FindSlot("hair_c").SetColor(Color.gray);
|
|
skanimTest1.skeleton.FindSlot("hair_b").SetColor(Color.gray);
|
|
skanimTest1.skeleton.FindSlot("hair_a").SetColor(Color.gray);
|
|
|
|
skanimTest1.skeleton.FindSlot("eye").SetColor(Color.gray);
|
|
|
|
|
|
|
|
skanimTest2.skeleton.FindSlot("arm_L").SetColor(Color.gray);
|
|
skanimTest2.skeleton.FindSlot("eye1_h").SetColor(Color.gray);
|
|
skanimTest2.skeleton.FindSlot("eye1").SetColor(Color.gray);
|
|
skanimTest2.skeleton.FindSlot("eye1_wt").SetColor(Color.gray);
|
|
skanimTest2.skeleton.FindSlot("hair_gra").SetColor(Color.gray);
|
|
skanimTest2.skeleton.FindSlot("hair_nn").SetColor(Color.gray);
|
|
skanimTest2.skeleton.FindSlot("eyebrow3").SetColor(Color.gray);
|
|
skanimTest2.skeleton.FindSlot("mouse1").SetColor(Color.gray);
|
|
skanimTest2.skeleton.FindSlot("head").SetColor(Color.gray);
|
|
skanimTest2.skeleton.FindSlot("body").SetColor(Color.gray);
|
|
skanimTest2.skeleton.FindSlot("finger").SetColor(Color.gray);
|
|
skanimTest2.skeleton.FindSlot("weapon").SetColor(Color.gray);
|
|
skanimTest2.skeleton.FindSlot("arm_R").SetColor(Color.gray);
|
|
skanimTest2.skeleton.FindSlot("leg_R").SetColor(Color.gray);
|
|
skanimTest2.skeleton.FindSlot("leg_L").SetColor(Color.gray);
|
|
skanimTest2.skeleton.FindSlot("hair_back_R").SetColor(Color.gray);
|
|
skanimTest2.skeleton.FindSlot("hair_back_L").SetColor(Color.gray);
|
|
skanimTest2.skeleton.FindSlot("shadow").SetColor(Color.gray);
|
|
|
|
mpbChange1 = new MaterialPropertyBlock();
|
|
mpbChange1.SetTexture("_MainTex", tx2dChanges1[0]);
|
|
rendTest1.SetPropertyBlock(mpbChange1);
|
|
|
|
mpbChange2 = new MaterialPropertyBlock();
|
|
mpbChange2.SetTexture("_MainTex", tx2dChanges2[0]);
|
|
rendTest2.SetPropertyBlock(mpbChange2);
|
|
}
|
|
|
|
public void BtnHair1()
|
|
{
|
|
ihair1++;
|
|
if (ihair1 >= clrHairs1.Length)
|
|
ihair1 = 0;
|
|
|
|
skanimTest1.skeleton.FindSlot("hair_0").SetColor(clrHairs1[ihair1]);
|
|
skanimTest1.skeleton.FindSlot("eyebrow").SetColor(clrHairs1[ihair1]);
|
|
skanimTest1.skeleton.FindSlot("hair_d").SetColor(clrHairs1[ihair1]);
|
|
skanimTest1.skeleton.FindSlot("hair_c").SetColor(clrHairs1[ihair1]);
|
|
skanimTest1.skeleton.FindSlot("hair_b").SetColor(clrHairs1[ihair1]);
|
|
skanimTest1.skeleton.FindSlot("hair_a").SetColor(clrHairs1[ihair1]);
|
|
|
|
skanimTest2.skeleton.FindSlot("hair_back_R").SetColor(clrHairs1[ihair1]);
|
|
skanimTest2.skeleton.FindSlot("hair_back_L").SetColor(clrHairs1[ihair1]);
|
|
skanimTest2.skeleton.FindSlot("hair_nn").SetColor(clrHairs1[ihair1]);
|
|
skanimTest2.skeleton.FindSlot("eyebrow3").SetColor(clrHairs1[ihair1]);
|
|
}
|
|
|
|
public void BtnHair2()
|
|
{
|
|
ihair2++;
|
|
if (ihair2 >= clrHairs2.Length)
|
|
ihair2 = 0;
|
|
skanimTest1.skeleton.FindSlot("hair_h").SetColor(clrHairs2[ihair2]);
|
|
skanimTest2.skeleton.FindSlot("hair_gra").SetColor(clrHairs2[ihair2]);
|
|
}
|
|
|
|
public void BtnEye()
|
|
{
|
|
ieye++;
|
|
if (ieye >= clrEyes.Length)
|
|
ieye = 0;
|
|
skanimTest1.skeleton.FindSlot("eye").SetColor(clrEyes[ieye]);
|
|
skanimTest2.skeleton.FindSlot("eye1").SetColor(clrEyes[ieye]);
|
|
}
|
|
|
|
public void BtnCostume()
|
|
{
|
|
icostume1++;
|
|
if (icostume1 >= tx2dChanges1.Length)
|
|
icostume1 = 0;
|
|
mpbChange1.SetTexture("_MainTex", tx2dChanges1[icostume1]);
|
|
rendTest1.SetPropertyBlock(mpbChange1);
|
|
|
|
icostume2++;
|
|
if (icostume2 >= tx2dChanges2.Length)
|
|
icostume2 = 0;
|
|
mpbChange2.SetTexture("_MainTex", tx2dChanges2[icostume2]);
|
|
rendTest2.SetPropertyBlock(mpbChange2);
|
|
}
|
|
|
|
public void BtnRelease()
|
|
{
|
|
//if (matTest != null)
|
|
// Resources.UnloadAsset(matTest);
|
|
}
|
|
|
|
|
|
|
|
|
|
void Start()
|
|
{
|
|
InitTest();
|
|
}
|
|
|
|
}
|