diff --git a/Assets/WL/PixelCamera/PixelCameraRig.cs b/Assets/WL/PixelCamera/PixelCameraRig.cs index 12d42b3af..902c040e9 100644 --- a/Assets/WL/PixelCamera/PixelCameraRig.cs +++ b/Assets/WL/PixelCamera/PixelCameraRig.cs @@ -423,6 +423,17 @@ namespace WL.PixelArt if (s_gameCam != null) s_gameCam.enabled = false; if (s_viewCam != null) s_viewCam.enabled = false; + // ๐Ÿ”ด WL-814g โ€” ๊ทธ๋ฆฌ๊ณ  ๋ฆฌ๊ทธ๋ฅผ **์ฆ‰์‹œ ๋น„ํ™œ์„ฑ**์œผ๋กœ ๋‚ด๋ฆฐ๋‹ค. + // Critter `PixelCameraManager.Initialize()`(PixelCameraManager.cs:123ยท132)๋Š” + // `viewCamera`/`upscaledCanvas` ๋ฅผ **`FindAnyObjectByType` ๋กœ ์ฐพ๋Š”๋‹ค**(๋‘ ํ•„๋“œ๋Š” + // `[SerializeField]` ๊ฐ€ ์•„๋‹ˆ๋ผ ํ”„๋ฆฌํŒน์— ์ €์žฅ๋˜์ง€ ์•Š์•„ ์ธ์Šคํ„ด์Šค๋งˆ๋‹ค ํ•ญ์ƒ null โ†’ ํ•ญ์ƒ Find). + // `Object.Destroy` ๋Š” ํ”„๋ ˆ์ž„ ๋ ์ฒ˜๋ฆฌ๋ผ, ๋ชจ๋“œ ์ „ํ™˜์—์„œ ์ƒˆ ๋ฆฌ๊ทธ๋ฅผ `Instantiate` ํ•˜๋Š” ์ˆœ๊ฐ„ + // **์•„์ง ์‚ด์•„ ์žˆ๋Š” ์ด์ „ ๋ฆฌ๊ทธ**์˜ ๋ทฐ ์นด๋ฉ”๋ผ/์บ”๋ฒ„์Šค๋ฅผ ์ƒˆ ๋งค๋‹ˆ์ €๊ฐ€ ์žก์•„ ๋ฒ„๋ฆฌ๊ณ , + // ํ”„๋ ˆ์ž„ ๋์— ๊ทธ๊ฒƒ๋“ค์ด ํŒŒ๊ดด๋˜๋ฉด์„œ `CanvasViewCamera.get_Aspect` ์—์„œ + // `MissingReferenceException` ์ด ๋งค ํ”„๋ ˆ์ž„ ํ„ฐ์กŒ๋‹ค(PD ์‹ค์ธก 200๊ฑด). + // `FindAnyObjectByType` ๋Š” **๋น„ํ™œ์„ฑ ์˜ค๋ธŒ์ ํŠธ๋ฅผ ์ œ์™ธ**ํ•˜๋ฏ€๋กœ ์—ฌ๊ธฐ์„œ ๋‚ด๋ ค๋‘๋ฉด ์ถฉ๋Œ์ด ์‚ฌ๋ผ์ง„๋‹ค. + if (s_rigRoot != null) s_rigRoot.SetActive(false); + // ์›๋ณธ ์นด๋ฉ”๋ผ ๋ณต์› โ€” ์Šคํƒ์—์„œ ๋ทฐ ์นด๋ฉ”๋ผ๋ถ€ํ„ฐ ๋บ€๋‹ค. if (s_src != null) { @@ -475,7 +486,9 @@ namespace WL.PixelArt if (all[i] == null) continue; var root = all[i].transform.parent != null ? all[i].transform.parent.gameObject : all[i].gameObject; if (root == s_rigRoot) continue; - if (root.name == RigName) DestroyObj(root); + // ๐Ÿ”ด WL-814g โ€” ํŒŒ๊ดด๋Š” ํ”„๋ ˆ์ž„ ๋์ด๋ผ, ๋จผ์ € ๋น„ํ™œ์„ฑ์œผ๋กœ ๋‚ด๋ ค ์ƒˆ ๋ฆฌ๊ทธ์˜ + // `FindAnyObjectByType` ๊ฐ€ ์ด ์ž”์žฌ๋ฅผ ์žก์ง€ ๋ชปํ•˜๊ฒŒ ํ•œ๋‹ค(์œ„ Teardown ์ฃผ์„ ์ฐธ์กฐ). + if (root.name == RigName) { root.SetActive(false); DestroyObj(root); } } // ํ”„๋ก์‹œ(์›๋ณธ ์นด๋ฉ”๋ผ์˜ ์ž์‹)๋„ ์ด๋ฆ„์œผ๋กœ ์ •๋ฆฌ