浏览代码

拍照普通姿势选框大小

zhaoyang 2 年之前
父节点
当前提交
a85ea23780

+ 1 - 0
GameClient/Assets/Game/HotUpdate/Data/PhotographSceneManager.cs

@@ -144,6 +144,7 @@ namespace GFGGame
             polygonCollider2D = gameObject.AddComponent<BoxCollider2D>();
             polygonCollider2D.isTrigger = true;
             polygonCollider2D.size = PhotographUtil.Instance.GetGameObjectBoundsSize(gameObject.transform.parent.gameObject) / 100;
+            polygonCollider2D.offset = -gameObject.transform.localPosition;
         }
 
         private void AddItemGameObjectToList(GameObject parentGameObj, bool setLayer)

+ 14 - 12
GameClient/Assets/Game/HotUpdate/Data/PhotographUtil.cs

@@ -21,8 +21,8 @@ namespace GFGGame
                 BoxCollider2D boxCollider2D = childGameObj.GetComponent<BoxCollider2D>();
                 if (boxCollider2D != null)
                 {
-                    size = GetGameObjectBoundsSize(parentObj);
-                    size = size * boxCollider2D.transform.localScale;
+                    // size =GetGameObjectBoundsSize(parentObj);
+                    size = boxCollider2D.size * 100 * parentObj.transform.localScale;
                     size.x = Math.Abs(size.x);
                     size.y = Math.Abs(size.y);
                     return size;
@@ -37,16 +37,18 @@ namespace GFGGame
             float top = int.MinValue;
             float bottom = int.MaxValue;
 
-            BoxCollider2D boxCollider2 = parentObj.GetComponentInChildren<BoxCollider2D>();
-            Vector2 pos = boxCollider2.transform.localPosition;
-            Vector2 size = boxCollider2.size * 100 * Math.Abs(parentObj.transform.localScale.x);
-
-            right = Math.Max(size.x / 2 + pos.x, right);
-            left = Math.Min(pos.x - size.x / 2, left);
-            top = Math.Max(size.y / 2 + pos.y, top);
-            bottom = Math.Min(pos.y - size.y / 2, bottom);
-
-
+            SpriteRenderer[] spriteRenderers = parentObj.transform.GetComponentsInChildren<SpriteRenderer>();
+            for (int i = 0; i < spriteRenderers.Length; i++)
+            {
+                Vector2 pos = spriteRenderers[i].transform.localPosition;
+                Vector2 size = spriteRenderers[i].size * 100 * parentObj.transform.localScale.x;
+                Debug.Log("size:" + size + "     pos:" + pos);
+
+                right = Math.Max(size.x / 2 + pos.x, right);
+                left = Math.Min(pos.x - size.x / 2, left);
+                top = Math.Max(size.y / 2 + pos.y, top);
+                bottom = Math.Min(pos.y - size.y / 2, bottom);
+            }
 
             Vector2 boundsSize = new Vector2(right - left, top - bottom);
             return boundsSize;

+ 17 - 8
GameClient/Assets/Game/HotUpdate/DressUp/DressUpUtil.cs

@@ -443,14 +443,6 @@ namespace GFGGame
 
         public static void SetParticleSortingOrder(GameObject gameObj, int sortingOrder, bool isAdd = false)
         {
-            // var count = gameObj.transform.childCount;
-            // for (int i = 0; i < count; i++)
-            // {
-            //     var tf = gameObj.transform.GetChild(i);
-            //     var ps = tf.GetComponent<ParticleSystem>();
-            //     if (ps != null)
-            //     {
-
             ParticleSystem[] particles = gameObj.transform.GetComponentsInChildren<ParticleSystem>();
             for (int i = 0; i < particles.Length; i++)
             {
@@ -469,6 +461,23 @@ namespace GFGGame
                 }
             }
         }
+        public static void SetSpriteRenderSortingOrder(GameObject gameObj, int sortingOrder, bool isAdd = false)
+        {
+            SpriteRenderer[] spriteRenders = gameObj.transform.GetComponentsInChildren<SpriteRenderer>();
+            for (int i = 0; i < spriteRenders.Length; i++)
+            {
+
+                if (isAdd)
+                {
+                    spriteRenders[i].sortingOrder = spriteRenders[i].sortingOrder + sortingOrder;
+                }
+                else
+                {
+
+                    spriteRenders[i].sortingOrder = sortingOrder;
+                }
+            }
+        }
     }
 
 }