public void unexecute() { LayoutEditorWindow.RequestRepaint(); #if NGUI_3_5_8 foreach (var p in UIPanel.list) { p.RebuildAllDrawCalls(); } #else UIPanel.SetDirty(); #endif // sprite 实时刷新 foreach (UnityEngine.Object obj in Objs) { if (obj is UIWidget) { (obj as UIWidget).MarkAsChanged(); } } if (CmdName == "Sprite Change" && Objs[0] is UISprite) { UISprite sprite = Objs[0] as UISprite; #if NGUI_3_5_8 sprite.MarkAsChanged(); #else if (sprite.isValid) { sprite.UpdateUVs(true); } #endif } }
/// <summary> /// Sprite selection callback function. /// </summary> void SelectSprite(string spriteName) { serializedObject.Update(); SerializedProperty sp = serializedObject.FindProperty("mSpriteName"); sp.stringValue = spriteName; serializedObject.ApplyModifiedProperties(); NGUISettings.selectedSprite = spriteName; if (mSprite != null) { mSprite.UpdateUVs(); mSprite.MarkAsChanged(); } }
public UIDrawCall GetDrawCall(UISprite uisprite) { GameObject obj = new GameObject(); obj.transform.parent = minMapRender.transform; obj.transform.localPosition = Vector3.zero; obj.transform.localScale = new Vector3(0.1f, 0.1f, 0.1f); UIDrawCall dc = obj.AddComponent <UIDrawCall>(); obj.layer = LayerMask.NameToLayer("2D"); BetterList <Vector3> verts = new BetterList <Vector3>(); BetterList <Vector2> uvs = new BetterList <Vector2>(); BetterList <Color32> cols = new BetterList <Color32>(); dc.material = uisprite.material; uisprite.UpdateUVs(true); uisprite.OnFill(verts, uvs, cols); dc.Set(verts, null, null, uvs, cols); dc.renderQueue = mainHeroSprite.renderQueue; return(dc); }