๊ธ์จ๊ฐ ์ ํ์๋ ์ข ์ด์ฒ๋ผ
์ค๋ธ์ ํธ(์ข ์ด)์
๊ธ์จ(ui)๊ฐ ๊ฐ์ด ์์ง์ด๋ ค๋ฉด ์ฐ์งธ ํด์ผ ํจ?
์ผ๋จ ์บ๋ฒ์ค๋ฅผ ์ค๋ธ์ ํธ์ ์์์ผ๋ก ๋ฃ๊ธด ํ๋๋ฐ
๊ทธ๋๋ ์ฌ์ ํ ์ค๋ธ์ ํธ๋ฅผ ์์ง์ด๋ฉด
ui๋ ๊ทธ๋๋ก ๋ถ ๋ ์๋ค..
๊ฒ์์ ์ด๋ป๊ฒ ํด์ผํ ์ง๋ ๋ชจ๋ฅด๊ฒ ์
๊ฒ์ ํค์๋๋ผ๋ ์๋ ค์ฃผ์
์ ๋ํฐ๋? ์ธ๋ฆฌ์ผ์ ๊ฑ ์ํฐ์ ์์ ฏ๋ฐ์ผ๋ฉด๋๋๋ฐ
์ด๋ฏธ ์ ๋ํฐ ์์ํด๋ฒ๋ฆฐ ์์ ๋ ๋ถ์ด์
์ ํํ ๋ด๊ฐ ์์ํ ๋ ๋ ผ๋ ํฐ์ง๋ ธ ์จ๋ฐ
๋งค๋ชฐ๋น์ฉ ์ปค์ง๊ธฐ์ ์ ์ธ๋ฆฌ์ผ๋ก ๊ฐ์ํ๋ผ ใ
์ฒซ ๊ฒ์๋ง ๋ด๊ณ ๊ฐ์ํ๋ฉด ์๋๋? ์ด์ฐจํผ 1์ธ๊ฐ๋ฐ ์ฒซ ๊ฒ์๋ถํฐ ๋ช ์ต์์ฉ ๋ฒ ๊ฐ๋ฅ์ฑ์ ์์ํ ๊ณ ๋งค์ถ ๋ช ์ต ์ดํ๋ ๋ฌด๋ฃ์์
๊ทธ๊ฑด ๋๊ฐ ๊ณ ๋ฏผํด์ผ์ง ใ ใ
Canvas ๋ ๋ ๋ชจ๋ ์ต์ ์ค์ Screen์์ World Camera์ธ๊ฐ๋ก ๋ฐ๊ฟ์ผํจ
ํ ์คํธ ๊ฐ์๊ธฐ ์ ๋ณด์ด๋๋ฐ? ์๋ง ์ค๋ธ์ ํธ๊ฐ ํ ์คํธ๋ฅผ ๊ฐ๋ ค๋ฒ๋ฆฐ ๊ฑฐ๊ฐ์
์ค๋ธ์ ํธ์ ํ์ด์ด๋ผํค์ Child๋ก TextMeshPro๋ฅผ ์ถ๊ฐํด ๋ด
๊ทธ๋ฆฌ๊ณ ์๋ถ ๋ง์๋๋ก Screen world camera ๋ก ์ฑ์ ํ๊ณ ํ ์คํธ์ ์ํ ๋ ์ด์ด์ธ๊ฐ ๋ ์ด์ด์ธ๊ฐ ๊ทธ๊ฑธ ์ข ๋ ์ฐ์ ์์ ์๊ฒ ์กฐ์
๊ทธ ์ธ์คํํฐ์ ์๋ ๋ ์ด์ด? ๊ทธ๊ฑฐ ์ด๋ป๊ฒ ์ฐ๋ ๊ฑด์ง 1๋ ๋ชจ๋ฅด๊ฒ ์ ๊ฒ์ํด๋ด๋ ์ ๋์ค๊ณ
์ผ๋จ ์ต๋ํ ์ฐ์ ์์๋ก ์ค์ ํ๋ ค๊ณ ๋ ์ด์ด๋ฅผ 31 : UI ์ด๋ ๊ฒ ํด๋ดค๋๋ฐ ๋๊ฐ๋ค
๊ธฐ๋ค๋ ค์ฃผ์ ์ง๊ธ์ ๋ค๋ฅธ ์ผ ํ๋ ์ค์ด๋ผ์ ์ด๋ฐ ์ ์ฌ์๊ฐ์ ์ ๋ํฐ์์ง ์ผ์ ํ์ธํด๋ณด๊ฒ ์
๋ค์ ์๋ค! textmeshpro์ extrasettings์์ sortinglayer ํ์ธํด๋ณด์
์ง๊ธ์์ ์๊ฐ ํด๋ณด๋๊น ์์ ๋ฌธ์ ๊ฐ ์๋๋ผ ์บ๋ฒ์ค์ ๋๋ ๋ชจ๋๋ฅผ world camera๋ก ๋ฐ๊พธ๋ ์๊ฐ ํ ์คํธ๊ฐ ํ๋ฉด์์ ์ฌ๋ผ์ ธ๋ฒ๋ฆฌ๋ ๊ฑฐ๊ฐ์
์๋ ์นด๋ฉ๋ผ๋ ์ผ๋ฐ์ ์ธ ์ขํ ์ฌ์ฉ๋ฒ์ด ๋ค๋ฅด๋ค๋ค
์บ๋ฒ์ค์์ค render mode - screen space Camera ๋ก ํ๋ฒ ํด๋ณผ๋? ๋๋ ค๋
ํด๋ดค๋๋ฐ ๋๊ฐ๋ค์
TMP์ UI์ฉ ์๋ ์ค๋ธ์ ํธ์ฉ ์๋๋ฐ ๊ทธ๊ฑฐ ์ค๋ธ์ ํธ ์์์ ๋ฃ์ด๋ณด์ - dc App
๊ฐ๋จํ ํ ์คํธ๋ผ๋ฉด TextMesh์จ๋ ๋ ๋ฏ - dc App
ํ ์คํธ ๋ฉ์ฌ ํ๋ก์ ui์ฉ์ด ์๋ ์ค๋ธ์ ํธ์ฉ์ด ์๋ค๊ณ ? ๊ทธ๊ฑฐ ์ด๋ฆ์ด ๋ญ๊ฐ์
TextMeshPro - Text - dc App
์บ๋ฒ์ค ์ฐํด๋ฆญ -> UI -> Text - TextMeshPro ์ด๊ฑฐ ๋ง๊ณ ๋ค๋ฅธ ๊ฒ ์กด์ฌ ํจ?? ์บ๋ฒ์ค ์ฐํด๋ฆญ -> 2D Object ์์ ๋ชจ๋ ๋ฉ๋ด๋ค ๋ค ์ดํด๋ด๋ ์๋๋ฐ
์ปดํฌ๋ํธ ์ด๋ฆ์ - dc App
์ข ์ด์ ๊ธ์จ๋ผ๋ฉด ์ข ์ด๋ ์บ๋ฒ์ค๊ฐ ์๋๋๊น ์ข ์ด์ ํ ์คํธ ์ปดํฌ๋ํธ๋ฅผ ๋ถ์ฌ์ ์จ์ผ์ง - dc App
Can't add 'TextMeshPro' to scoretext because a 'TextMeshProUGUI' is already added to the game object! A GameObject can only contain one 'Graphic' component. ์ด๋ ๊ฒ ๋จ๋๋ฐ ์์ฝ ํ์๋ฉด TextMeshProUGUI๊ฐ ์ด๋ฏธ ์ถ๊ฐ ๋์ด์๊ธฐ ๋๋ฌธ์ TextMeshPro๋ฅผ ์ถ๊ฐํ ์ ์๋.
์ ๊ธฐ์กด์ TextMeshPro - text (UI) ์ปดํฌ๋ํธ๋ฅผ ์์ ์ญ์ ํด๋ฒ๋ฆด๊น?
๋ด๊ฐ ์ด์ผ๊ธฐ ํ๋๊ฑด ์ ๋ถ UI(Canvas)๊ฐ ์๋ ์ผ๋ฐ ์ค๋ธ์ ํธ์ ๋ค์ด๊ฐ์ผํญ - dc App
๋น ์ค๋ธ์ ํธ์ ๋ด๊ฐ ๋งํ ์ค๋ธ์ ํธ๋ฅผ ๋ถ์ฌ์ ์ฐ์ - dc App
์ข ์ด์ ๋น ์ค๋ธ์ ํธ๋ฅผ ๋ถ์ด๊ณ ๊ทธ ์ค๋ธ์ ํธ์ TMP ์ปดํฌ๋ํธ๋ฅผ ๋ฃ์ด์ ์ฐ์ - dc App
์๋ฌด๊ฒ๋ ์๋ ๋น ์ค๋ธ์ ํธ ํ๋ ๋ง๋ค๊ณ ๊ฑฐ๊ธฐ์ ์ปดํฌ๋ํธ๋ก textmeshpro - text๋ฅผ ์ถ๊ฐ ํ๋ผ๋ ๊ฑฐ์ง?
์ ๊ทธ๊ฑธ ๊ธฐ์กด ์ค๋ธ์ ํธ์ ์์์ผ๋ก ํ๋ผ๋ ๊ฑฐ๊ตฌ๋
๊ทผ๋ฐ ์๊ฐ ๊ธฐ์กด ์ค๋ธ์ ํธํํ ๋ค๋ก ๋ฐ๋ฆฌ๋ค? ์๋ empty object๋ order in layer๊ฐ์ ๊ณ ๊ธ ๊ธฐ๋ฅ๋ ์์?
z์ขํ๋ฅผ ๋ํ๋ด๋ ์์ฉ์ด ์์
์ ์๋ ๋์๋๋ถ์ ์ฐพ์๋ค
์๋ ์์น ์ง์ ํ๋ ๋ฐฉ์์ด ์ข ๋ค๋ฅธ ๊ฑฐ๊ฐ๋ค. ์ต์ปค ๊ฐ ์๋ฆฌ์กฐ๋ฆฌ ๋ฐ๊ฟ๋ ์์น๊ฐ ๋ณํ์ง ์์.
Drawํ๋ ๋ฐฉ์์ด ๋ค๋ฅผ์๋ ์๋๋ฐ Shader๋ฅผ ๋ฐ๊ฟ๋ณด์ - dc App
๋์ค์ ์ง ๋ค์ด๊ฐ๋ฉด ํ๋ฒ ํ ์คํธ ํด๋ณด๊ณ ์๋ ค์ค - dc App
์ด? ์๋ ์ต์ปค ๊ฐ ์ ๋ฐ๊พธ๊ณ ๊ทธ๋ฅ ์ค๋ธ์ ํธ ์์น๋ง ์๋ฆฌ์กฐ๋ฆฌ ์ฎ๊ฒจ๋ ํด์๋์ ๋ฐ๋ผ ํ ์คํธ ์์น๊ฐ ์ด์ํ๊ฒ ์ ๋ฐ๋๋ค? ๋คํ์ด๋ค
์ด๊ฑด UI๊ฐ ์๋ ํด์๋์ ๊ด๋ จ์์ด ํฌ๊ธฐ๋ ๊ณ ์ ์ - dc App
๊ทธ๋ผ ๊ฐ๊ฟ์ด๋ค ใ ใ ๊ทธ๋ผ ์์ผ๋ก ํ ์คํธ ๋ง๋ค ๋ ์บ๋ฒ์ค ui ์ด๋ฐ๊ฑฐ ๋ง๊ณ ๊ทธ๋ฅ ๋น ์ค๋ธ์ ํธ ๋ง๋ค๊ณ ๊ฑฐ๊ธฐ์ textmeshpro - text ๋ง๋ค์ด์ ํด์ผ๊ฒ ๋ค
๊ทธ๊ฑด ํ๋ก์ ํธ ์๊ตฌ์ฌํญ์ ๋ฐ๋ผ ๋ค๋ฅด๊ธด ํ๋ฐ ๊ฐ๋ณ์ ์ผ๋ก ํฌ๊ธฐ๊ฐ ๋ฐ๋์ด์ผํ๋ ์ค๋ธ์ ํธ๊ฐ ์ธ์ ๊ฐ ์๊ธฐ๊ธด ํจ - dc App