[unity] Add initial flip to SkeletonRenderer. Initialized similar to initial skin and initial animation.

This commit is contained in:
pharan 2017-05-10 04:02:12 +08:00
parent 4633c903d3
commit 8e138b56e0
2 changed files with 16 additions and 1 deletions

View File

@ -44,6 +44,7 @@ namespace Spine.Unity.Editor {
protected static bool showBoneNames, showPaths, showShapes, showConstraints = true;
protected SerializedProperty skeletonDataAsset, initialSkinName;
protected SerializedProperty initialFlipX, initialFlipY;
protected SerializedProperty singleSubmesh, separatorSlotNames, clearStateOnDisable, immutableTriangles;
protected SerializedProperty normals, tangents, meshes, zSpacing, pmaVertexColors, tintBlack; // MeshGenerator settings
protected SpineInspectorUtility.SerializedSortingProperties sortingProperties;
@ -91,6 +92,8 @@ namespace Spine.Unity.Editor {
var so = this.serializedObject;
skeletonDataAsset = so.FindProperty("skeletonDataAsset");
initialSkinName = so.FindProperty("initialSkinName");
initialFlipX = so.FindProperty("initialFlipX");
initialFlipY = so.FindProperty("initialFlipY");
normals = so.FindProperty("calculateNormals");
tangents = so.FindProperty("calculateTangents");
meshes = so.FindProperty("renderMeshes");
@ -172,7 +175,8 @@ namespace Spine.Unity.Editor {
}
if (valid)
EditorGUILayout.PropertyField(initialSkinName);
EditorGUILayout.PropertyField(initialSkinName);
} else {
var component = (SkeletonRenderer)target;
@ -238,6 +242,13 @@ namespace Spine.Unity.Editor {
EditorGUI.BeginChangeCheck();
if (advancedFoldout = EditorGUILayout.Foldout(advancedFoldout, "Advanced")) {
using (new SpineInspectorUtility.IndentScope()) {
using (new EditorGUILayout.HorizontalScope()) {
initialFlipX.boolValue = EditorGUILayout.ToggleLeft(initialFlipX.displayName, initialFlipX.boolValue, GUILayout.Width(120f));
initialFlipY.boolValue = EditorGUILayout.ToggleLeft(initialFlipY.displayName, initialFlipY.boolValue, GUILayout.Width(120f));
EditorGUILayout.Space();
}
EditorGUILayout.Space();
using (new SpineInspectorUtility.LabelWidthScope()) {
// Optimization options

View File

@ -46,6 +46,7 @@ namespace Spine.Unity {
public SkeletonDataAsset skeletonDataAsset;
public SkeletonDataAsset SkeletonDataAsset { get { return skeletonDataAsset; } } // ISkeletonComponent
public string initialSkinName;
public bool initialFlipX, initialFlipY;
#region Advanced
// Submesh Separation
@ -187,6 +188,9 @@ namespace Spine.Unity {
if (!string.IsNullOrEmpty(initialSkinName) && !string.Equals(initialSkinName, "default", System.StringComparison.Ordinal))
skeleton.SetSkin(initialSkinName);
skeleton.flipX = initialFlipX;
skeleton.flipY = initialFlipY;
separatorSlots.Clear();
for (int i = 0; i < separatorSlotNames.Length; i++)
separatorSlots.Add(skeleton.FindSlot(separatorSlotNames[i]));