[Unity] Canvas
Canvas Unity์์ ๋ชจ๋ UI ๊ฐ์ฒด๋ฅผ ๋ ๋๋ง ํ๊ธฐ ์ํ ๋ฃจํธ ์ปดํฌ๋ํธ ๊ธฐ๋ณธ์ ์ผ๋ก 4๊ฐ์ ์ปดํฌ๋ํธ๋ฅผ ํฌํจ RectTransform Canvas Canvas Scaler Graphic Raycaster
Canvas Unity์์ ๋ชจ๋ UI ๊ฐ์ฒด๋ฅผ ๋ ๋๋ง ํ๊ธฐ ์ํ ๋ฃจํธ ์ปดํฌ๋ํธ ๊ธฐ๋ณธ์ ์ผ๋ก 4๊ฐ์ ์ปดํฌ๋ํธ๋ฅผ ํฌํจ RectTransform Canvas Canvas Scaler Graphic Raycaster
var ์์์ ํ์ ์ปดํ์ผ๋ฌ๊ฐ compile time์ ์๋ฃํ์ ๊ฒฐ์ ์ ์ฝ ์กฐ๊ฑด ์ง์ญ ๋ณ์์๋ง ์ฌ์ฉ ๊ฐ๋ฅ ๋ณ์ ์ ์ธ๊ณผ ํจ๊ป ์ด๊ธฐํ ํ์ null / ์ต๋ช ๋ฉ์๋ / ๋ฉ์๋ ๊ทธ๋ฃน์ผ๋ก ์ด๊ธฐํ ๋ถ๊ฐ
Dictionary์ ์ข ๋ฅ Dictionary Key์ Value์ Pair๋ฅผ ๊ฐ๋ ์๋ฃ๊ตฌ์กฐ Generic ํด์ํ ์ด๋ธ ๊ตฌ์กฐ๋ฅผ ์ฌ์ฉ
๋ฆฌํ๋ ์ ์ ๊ฐ๋ ์ผ๋ฐ์ ์ผ๋ก๋ ํด๋์ค๋ฅผ ํตํด ๊ฐ์ฒด๋ฅผ ์์ฑ ์ฌ์ฉ์(ํ๋ก๊ทธ๋๋จธ)๋ ํด๋์ค์ ํ๋์ ๋ฉ์๋๋ฅผ ์๊ณ ์๊ณ , ์ฌ์ฉํ๋ ๋ฐ ๋ถํธํจ์ด ์๋ค
as์ is ํ๋ณํ์ ์ํ ์์ฝ์ด ๊ฐ๋ฐ์์ ์ํด์ ์๋์ ์ผ๋ก downcastingํ๋๋ก ๋์์ฃผ๋ ์ฐ์ฐ์ downcasting ๋ฒ ์ด์ค ํด๋์ค๊ฐ ํ์ ํด๋์ค๋ก ์บ์คํ ๋๋ ๊ฒ upcasting ํ์ ํด๋์ค๊ฐ ๋ฒ ์ด์ค ํด๋์ค๋ก ์บ์คํ ๋๋ ๊ฒ
9 Slicing ํ๋์ ํ ์ค์ณ๋ก ๋ค์ํ ์ฌ์ด์ฆ์ ์ฌ์ฌ์ฉ ๊ฐ๋ฅํ ์ด๋ฏธ์ง๋ก ์ค์ ํ๋ ๋ฐฉ๋ฒ ๋ฆฌ์ฌ์ด์ง ์, ์ด๋ฏธ์ง๋ฅผ ์๊ณกํ์ง ์์
๋ฏธํค๋ง์ฐ์ค, ๊ณฐ๋์ด ํธ, ์๋ผ๋ ๋ฑ ๋์ฆ๋ ์บ๋ฆญํฐ์ ํจ๊ป ํ๋ 3๋งค์น ํผ์ฆ ๊ฒ์
where ํค์๋ ์ฌ์ฉ ์์
๋ฉ์๋์ ์ ์ธ๋ new modifier base class์ ๋ฉ์๋๋ฅผ ์จ๊น upcasting ํ์ฌ base class์ ๋ฉ์๋๋ฅผ ์ฌ์ฉํ ์ ์์ผ๋ ์ด๋ ์๋๋ ๋์์ธ์ ๋ฐํ๋ ํ์์ด๋ฏ๋ก ์ํ
delegate(๋๋ฆฌ์) ํค์๋ delegate๋ ๋ฉ์๋๋ฅผ ๋ค๋ฅธ ๋ฉ์๋์ ์ธ์๋ก ์ ๋ฌํ๋ ๋ฐ ์ฌ์ฉ ํ์์ด ์ผ์นํ๋ ๊ตฌ์กฐ์ ๋ชจ๋ ๋ฉ์๋๋ ๋๋ฆฌ์์ ํ ๋นํ ์ ์๋ค ๋ฉ์๋๋ ์ ์ /์ธ์คํด์ค์ผ ์ ์๋ค. delegate ์์ฑ ํจ์ ํฌ์ธํฐ์ ์ ์ฌํ์ง๋ง, ๊ฐ์ฒด ์งํฅ์ ์ผ๋ก ์ธ์คํด์ค ๋ฐ ๋ฉ์๋๋ฅผ ์บก์ํํ๋ค. ๋ฉ์๋๋ฅผ ๋งค๊ฐ ๋ณ์๋ก ์ ๋ฌํ ์ ...