| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- using UnityEngine;
- using UnityEditor;
- using System.Collections;
- [CustomEditor(typeof(Sprite3D))]
- public class Sprite3DEditor : Editor
- {
- public override void OnInspectorGUI()
- {
- serializedObject.Update();
- Sprite3D sprite = (Sprite3D)target;
- EditorGUILayout.BeginVertical();
- //sprite.GenerateMesh();
- sprite.useAtlas = EditorGUILayout.Toggle("使用手动生成的Atlas", sprite.useAtlas);
- if(sprite.useAtlas)
- {
- sprite.atlas = (AtlasInfo)EditorGUILayout.ObjectField("Atlas", sprite.atlas, typeof(AtlasInfo), false);
- sprite.spriteName = EditorGUILayout.TextField("SpriteName", sprite.spriteName);
- }
- else
- {
- sprite.texture = (Texture2D)EditorGUILayout.ObjectField("Texture", sprite.texture, typeof(Texture2D), false);
- sprite.autoAtlasTag = EditorGUILayout.TextField("Tag", sprite.autoAtlasTag);
- sprite.compress = EditorGUILayout.Toggle("Compress Texture", sprite.compress);
- sprite.padding = Mathf.Max(EditorGUILayout.IntField("Padding", sprite.padding), 0);
- }
- sprite.alignVertical = (Sprite3D.EnumVertical)EditorGUILayout.EnumPopup("Align Vertical", sprite.alignVertical);
- sprite.alignHoriontal = (Sprite3D.EnumHoriontal)EditorGUILayout.EnumPopup("Align Horiontal", sprite.alignHoriontal);
- sprite.width = EditorGUILayout.FloatField("Width", sprite.width);
- sprite.height = EditorGUILayout.FloatField("Height", sprite.height);
- sprite.color = EditorGUILayout.ColorField("Color", sprite.color);
- sprite.depth = EditorGUILayout.FloatField("Depth", sprite.depth);
- sprite.fillType = (Sprite3D.EnumFillType)EditorGUILayout.EnumPopup("Fill Type", sprite.fillType);
- sprite.PhaseType = (Sprite3D.RadialPhaseType)EditorGUILayout.EnumPopup("Phase Type", sprite.PhaseType);
- sprite.fillAmount = EditorGUILayout.Slider("Slice", sprite.fillAmount, 0, 1);
- if(sprite.fillType == Sprite3D.EnumFillType.Radial360)
- {
- sprite.segments = (uint)Mathf.Max(10, EditorGUILayout.IntField("Segments", (int)sprite.segments));
- }
- EditorGUILayout.EndVertical();
- }
- }
|