From 99a11d2bb19d74f6cc8584ac16838062af4fb301 Mon Sep 17 00:00:00 2001
From: yyl <yyl>
Date: 星期五, 03 四月 2026 11:24:07 +0800
Subject: [PATCH] webgl 优化

---
 Main/System/Hero/UIHeroController.cs |    7 +++++--
 1 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/Main/System/Hero/UIHeroController.cs b/Main/System/Hero/UIHeroController.cs
index fbf85d8..bd23c5b 100644
--- a/Main/System/Hero/UIHeroController.cs
+++ b/Main/System/Hero/UIHeroController.cs
@@ -25,6 +25,7 @@
 	private static readonly object loadLock = new object();
 	private static int lastInitFrame = -1; // 涓婁竴娆℃墽琛孖nitialize鐨勫抚鍙凤紝鐢ㄤ簬纭繚姣忓抚鏈�澶�1娆�
 	private static GameObjectPoolManager.GameObjectPool cachedUIHeroPool; // 缂撳瓨UIHero棰勫埗浣撴睜
+	private RectTransform _instanceRect; // 缂撳瓨RectTransform閬垮厤閲嶅GetComponent
 
 	public Action onComplete;
 	public async UniTask Create(int _skinID, float scale = 0.8f, Action _onComplete = null, string motionName = "idle", bool isLh = false)
@@ -213,8 +214,9 @@
 		{
 			instanceGO = pool.Request();
 			instanceGO.transform.SetParent(transform);
+			_instanceRect = instanceGO.GetComponent<RectTransform>();
 			//transform 鐨凱ivot Y鏄�0锛岃instanceGO 灞呬腑
-			instanceGO.transform.localPosition = new Vector3(0, instanceGO.GetComponent<RectTransform>().sizeDelta.y * 0.5f);
+			instanceGO.transform.localPosition = new Vector3(0, _instanceRect.sizeDelta.y * 0.5f);
 
 			//instanceGO.transform.localPosition = Vector3.zero;
 			instanceGO.transform.localScale = Vector3.one;
@@ -670,8 +672,9 @@
 		{
 			instanceGO = pool.Request();
 			instanceGO.transform.SetParent(transform);
+			_instanceRect = instanceGO.GetComponent<RectTransform>();
 			//transform 鐨凱ivot Y鏄�0锛岃instanceGO 灞呬腑
-			instanceGO.transform.localPosition = new Vector3(0, instanceGO.GetComponent<RectTransform>().sizeDelta.y * 0.5f);
+			instanceGO.transform.localPosition = new Vector3(0, _instanceRect.sizeDelta.y * 0.5f);
 			instanceGO.transform.localScale = Vector3.one;
 			instanceGO.transform.localRotation = Quaternion.identity;
 		}

--
Gitblit v1.8.0