SpriteRenderer์ TextMesh Proย (UGUI ์๋)
๋๊ฐ์ ์ปดํฌ๋ํธ๋ฅผ ์ฐ๋ ์นด๋ ํ๋ฆฌํน(3d ์ค๋ธ์ ํธ) ์์ฑํ๋์ค์ธ๋ฐ
(์ด๋ฆ์ Text๋ถ๋ ์ค๋ธ์ ํธ๋ง TMP์ด๊ณ ๋๋จธ์ง ์ ๋ถ sprite renderer)
์ฌ๋ฌ๊ฐ ์์ฑ์์ผ๋ณด๋ฉด
Sprite Renderer์ ์ฌ์ฉํ๋ ๋จธํ
๋ฆฌ์ผ๋ค์ ์ ๋ถ ๋์ผํ๊ณ (sharedMaterial์ฐ๊ณ ์์)
sprite๋ค๋ ์ ๋ถ ๋์ผํ ์ํ๋ผ์ค์ ์๋๊ฑธ ์ฌ์ฉํด์
SpriteRenderer๋ค์ ๋ฐฐ์นญ์ดย ๋๊ณ ์์
TextMesh Pro๋ ๋จธํ
๋ฆฌ์ผํ๋ฆฌ์
๋์ผํ๊ณ
ํ
์คํธ ๋ฃ๊ณ ๋ค ํด๋ ๋ฐฐ์นญ์ด ์ ๋๋๋ฐ (์ ์ฌ์ง์ด ๊ทธ ์ํ)
๋ฌธ์ ๊ฐ!
TextMeshPro ์ค๋ธ์ ํธ์ SortingOrder๋ง ๋ฐ๊พธ๋ฉด (์๋ ์ฌ์ง์ฒ๋ผ)
๋ฐฐ์นญ์ด ์๋๊ณ ๊ฐ๋ณ๋ก ๋ถ๋ฅ๊ฐ ๋๋ฒ๋ฆผ (SpriteRender๋ค์ ์ํ
์ค๋ ๋ฐ๊พธ์ด๋ ์ด์์ด ์์ด)
(์๋์ฌ์ง , TMP๋ค์ ์ํ
์ค๋๊น์ง ๊ฑด๋๋ ธ์ ๊ฒฝ์ฐ )
ํ๋ ์๋๋ฒ๊ทธ๋ก ๋ณด๋๊น
ํ๋์๋ค๋ชจ๋ ์นด๋๋ฅผ ๊ทธ๋ฆฌ๋๋ถ๋ถ์ด๊ณ (SpriteRenderer)
๋นจ๊ฐ์ย ์ค๋ถ๋ถ์ TextMesh Pro๋ถ๋ถ์ธ๋ฐ
์นด๋ํ ํ๋ฒ๊ทธ๋ฆฌ๊ณ , ํด๋น ์นด๋์ ํ
์คํธ๊ทธ๋ฆฌ๊ณ
์ด๊ฑธ ๊ณ์ ๋ฐ๋ณตํจ(์นด๋ ๊ฐฏ์๋งํผ) x2์ฉ ๋ฐฐ์นญ์ด ์๊ธฐ๊ณ ์์..
์ดํ๋์ ์ฐพ์๋ด๋ ํด๋ต์ ๋ชป์ฐพ๊ฒ ์..
ํ์ฌ ์ํ
์ ๋ํฐ ๋ฒ์ ย 2021.2.16F1 LTS + URP
TMP ๋ฒ์ ์ 3.0.6
์นด๋ฉ๋ผ๋ Main.Camera ํ๋๋ง ์ฐ๊ณ ์์ด
ํ๋ฆฌํน์ z๊ฐ์ ํ์ฌ ๋ชจ๋ 0์ธ ์ํ (๋ด๋ถ ์์ ์ค๋ธ์ ํธ๋ค๋ ๋ชจ๋ z == 0)
Sorting Layer๋ ์ ๋ถ Default๋ง ์ฐ๊ณ ์๊ณ
Order in Layer๋ง ๊ฑด๋๋ ค์ ๋ถ๋ฅํ๊ณ ์๋ ์ํ๊ฑฐ๋ ?
(์ค๋์ธ๋ ์ด์ด๋ ์ธ์คํํฐ๋ง๊ณ ์คํฌ๋ฆฝํธ์์ ๋ณ๊ฒฝํ๊ณ ์์)
SpriteRenderer๋ค์ด ์ฐ๋ ๋งํ
๋ฆฌ์ผ ๋ ๋ํ 2000 ์ง์ค๋ฉํธ๋ฆฌ
TMP๊ฐ ์ฐ๋ ๋งํ
๋ฆฌ์ผ์ 3000 ํธ๋์คํ์ด๋ฐ์ธ
TMP๊ฐ ์ฐ๋ ์
ฐ์ด๋ย tmp/mobile/DistanceField ๊ธฐ๋ณธ์ฐ๊ณ ์์ด (๊ฑด๋๋ฆฐ๊ฑด ์๋ ์ํ)
์ฝ๋๋ ํ์ํ๋ฉด ๋งํด์ค ์ฝ๋๋ ์บก์ฒํด์ ์ฌ๋ฆด๊ฒ
๋๊ฐ ์ ๋ฐ ์ด ์ด๋ณด๋ฅผ ๋์์ค ๋ฏธ์น๊ฒ ์ด .....
์ด๊ฑด ๋ด๊ฐ ์ดํดํ๋ ์ ๋ํฐ ๋ ๋๋งํ์ดํ๋ผ์ธ์ ๋์์๋ฆฌ์. 100% ํ์ ์ ์๋๋ ์ ๊ฑธ๋ฌ๋ค์ด๋ฃ๊ธธ ๋ฐ๋. ๊ฐ์ ๋ฉํ ๋ฆฌ์ผ์ ์ด๋ค๊ณ 100% ๋ฐฐ์นญ์ด ๊ฐ๋ฅํ๊ฒ ์๋๊ฑธ๋ก์. ์์ ์ SRP์ฝ๋๋ฅผ ๋ฏ์ด๋ดค์๋ ์ ๋ํฐ๊ฐ ๋ฐฐ์นญ์ ํ๋ ๋ฐฉ์์ ๋ค์๊ณผ ๊ฐ์. ๊ฐ์ ๋ฉํ ์ฐ๋ ABC๊ฐ sortingLayer๊ฐ ๋์ผํจ. ABC์ค๊ฐ์ ๋ญ๊ฐ ๋ผ์ด์๋๊ฒ ์์ด. ๊ทธ๋ผ ์๋ด๋ ๋ฐฐ์นญ์ ํด์ ํ๋ฒ์ ๋๋ก์ฐํจ. ๊ทผ๋ฐ ์นด๋ฉ๋ผ๊ฐ sortingLayer๋ฅผํตํด sorting์ ํ๋๋ฐ ์๋ก์ด D๋ผ๋๋์ด AB"D"C์ค๊ฐ์ ๋ผ์ด ์๊ฒ๋จ. ๊ทธ๋ผ ์ ๋ํฐ๋ ๋ฐฐ์นญ๋ถ๊ฐํ์ ๋ด๊ณ ๋ณ๊ฐ๋ก ๋๋ก์ฝ๋๋ ค๋ฒ๋ฆผ. ๋ด๊ฐ๋ณผ๋ ์ง๊ธ ๊ทธ ์ํฉ์ด ๋ฐ์ํ๊ฑฐ๊ฐ์ด
spriterender๋ sorting 0ํ๊ณ textmeshpro๋์ ๋ถ 1๋กํด๋ฐ. ๊ทธ๋ ๊ฒํ์๋ ์คํ๋ ๋๋ฌ๋ผ๋ฆฌ ๋ฐฐ์นญ๋๊ณ ํ ์ค๋ฉ์๋ผ๋ฆฌ ๋ฐฐ์นญ๋๋ฉด ๋ด๋ง์ด๋ง๋๊ฑฐ๊ณต
๊ทธ ์ ๊ฐ ํ์ฌ ์ด๋๋ ์๋ธ๋ก ๋ก๋์ ์ธ์คํฐ์์ดํธ๋ก ํ๋ฆฌํน์ ์์ฑํ๊ณ ์๋๋ฐ ๊ทธ๋ฅ ๋ฆฌ์์ค๋ก๋๋ก ํ๋ฆฌํน์ ์์ฑํ๋ฉด ๋ ๋ฐฐ์นญ์ด ์๋๋๋ฐ ํน์ ์ด๋๋ ์๋ธ ๋ฌธ์ ์ผ์๋ ์์๊น์??
์.. ๋๋ง๋๋ก ์คํ๋ผ์ดํธ๋ ๋ชจ๋ 0์ผ๋ก ์ํ tmp๋ ์ ๋ถ 1๋กํ๋๋ฐ ๋ฐฐ์นญ์ด ๊ฐ์๋์์ด์
๋๋๋!!!! ์ด๋๋ ์๋ธ๋ก ์ ๊ฐ ์ฌ์ฉํ๊ณ ์์๋๋ฐ TMP_Font_Asset์ SpriteAtlas๊ฐ ์๋ ํด๋๋ก ์ฎ๊ธดํ ํ๋ ์ด์ ๋ฐฐ์นญ์ด ๋๊ณ ์์ต๋๋ค!!!!!! ์์ธ์ด ๊ฐ์ ๊ฒฝ๋ก์ ํด๋์ธ์ง๊น์ง ๋ชจ๋ฅด๊ฒ ์ง๋ง...๋๋ฌด ํ๋ณตํฉ๋๋ค ๊ฐ์ฌํฉ๋๋ค!!
ใ ใ ใ ใ ์ด๋๋ ์๋ธ์ ์๋ก ๋ค๋ฅธ ์ ์ ๊ทธ๋ฃน์ด๋ฉด ์๋ก ๋๋ ์ ์ทจ๊ธ๋๊ธฐ๋ ํจ. ๊ทธ๋์ ๊ทธ๋ฐ๊ฑฐ์ผ์๋ ์์. ๋ฐฉ๋ฒ์ ์ฐพ์๋ค๋ ๋คํ์ด์ฌ
๊ทธ๋ ๋ค๋ฉด ํ๋ฆฌํน์ ๊ตฌ์กฐ๋ฅผ ๋ฐ๊ฟ์ผํ๋๊ฑธ๊น์.. ์๋๋ฉด ํ์ฌ ์ฌ์์ ์ด๋ค ์ค๋ธ์ ํธ๊ฐ ๋ฌธ์ ์ธ๊ฑธ๊น์ ํ์ฌ ์ฌ์์ ๋ค๋ฅธ ์ค๋ธ์ ํธ๋ค์ ์ ๋ถ ๊บผ๋๊ณ ์คํํ๋ฉด์ ํ ์คํธ์ค์ด์๊ฑฐ๋ ์??
๋ฐฐ์นญ์ ์ด์ ์ ์ป๊ณ ์ถ์ผ๋ฉด ๋ฐฐ์นญ๋๋๋ฐฉ์์ผ๋ก ํด์ผ์ง ๋๊ฐํ๊ณ ์ถ์๋ฐฉ์์ด๋ญ์ง๋์๋ชจ๋ฅด์ง๋ง ๊ทธ๊ฒ ๋ฐฐ์นญ์ด ์๋๋ ๊ตฌ์กฐ๋ฉด ๋ฐฐ์นญ์ ๋ชป์ฐ๋๊ฑฐ์. ์ค์ ๋ก ๋ฐฐ์นญ๋ชป์ฐ๋์ผ์ด์ค๋ค๋ ์์ด์ ์ด๊ฑด ๋๊ฐ์กฐ์จํด์ผ๋ผ.
๊ฐ์ฌํฉ๋๋ค