ํ๋ก๊ทธ๋๋ฐ์ ํ์ง์๋ค๊ฐ ์ ๋ํฐ๋ฅผ ์ฒ์ ์ ๋ฌธํ๋ฉด ํท๊ฐ๋ฆฌ๊ฑฐ๋ ๋งํ๋๊ฒ ๋ง์๊บผ์ผ
๋งํ๋ฉด ๊ตฌ๊ธ๋งํด์ย ์ฝ๋๋ณด๊ณ ์ดํด๊ฐ ์๋๋๋ฐย ๊ธ์ด์ ์งํํ๊ณ ์ด๋ฌ๋ค๋ณด๋ฉด ๋์ค์ ๋ฒ๊ทธ๋๋ฉด ํฌํํฐ์ผ ใ ใ ใ
๊ทธ๋์ ์๋ฆฌ๋ฅผ ์๊ณ ๊ฐ๋ฉด ์ข์๋ฐ ์๊ฐ๋ ์๊ณ ์๋ฆฌ๋ฅผ ์น์ ํ๊ฒ ์ค๋ช ํด์ฃผ๋ ์ฌ๋๋ ๋ณ๋ก ์๊ณ ๊ทธ๋ฌ๋๋ผ๊ณ
๊ทธ๋์ ์ธ๋ ๊ฒ์ ๊ฐ๋ฐ ๊ฐค๋ฌ๋ฆฌ ๋ณด๋ค๊ฐ ๋ด๊ฐ ๋ต๋ณ ํด ์ค ์ ์๋๊ฑด ์ฝ๊ฒ ์ค๋ช ํด์ฃผ๋ ค๊ณ ํด
์ค๋ ๋ถ๋ชจ ์์๊ด๊ณ์ ๋ํ ๊ธ์ด ์ฌ๋ผ์ค๋๋ผ๊ณ ์น์ ํ ๊ฐค๋ฌ๋ค์ด ๋ต๋ณ์ ๋ฌ์์คฌ๋๋ฐ ์ง๋ฌธํ ๊ฐค๋ฌ๊ฐ ์ดํด๋ฅผ ๋ชปํ๋๋ผ
๊ทธ๋์ ๋ถ๋ชจ(๊ณ์ธต๊ตฌ์กฐ)์ ๋ํด์ ์ฐ๊ธฐ๋ก ํ์ด
์ผ๋จ ๋ถ๋ชจ(๊ณ์ธต) ๊ด๊ณ๋ฅผ ์ฃผ๋ ๋ฐฉ๋ฒ์
Hierarchy (๊ณ์ธต๊ตฌ์กฐ) ์ฐฝ์์ ์์์ผ๋ก ๋ฃ์ ์ค๋ธ์ ํธ๋ฅผ ์ก์์ ๋ถ๋ชจ๋ก ๋ ์ค๋ธ์ ํธ ์์ ๋์ผ๋ฉด ๋ถ๋ชจ ๊ด๊ณ๊ฐ ํ์ฑ๋
๊ทธ๋ฆฌ๊ณ ๋ถ๋ชจ๊ฐ ์์ง์ผ๋ ์์์ ๋ฌด์จ ๋ณํ๊ฐ ์๊ธฐ๋์ง ์ดํด๋ณด์
์์ง์ผ๋ ๋ถ๋ชจ์ธ Player์ Position๊ฐ์ ๋ณด๋ฉด ์์ง์ด๋ ๋งํผ ๋ณํํ๋ ๊ฒ ๋ณด์ด์ง?
์ด๊ฑด ์์ง์ผ๋ ์์์ Transform์ ๋ณด๋ผ๊ณ ์ฐ์๊ฑด๋ฐ Position์ ๋ด๋ด ๋ณํ๊ฐ ์์ง?
์ด๊ฑฐ๊น์ง๋ง ๋ณด๊ณ ๋ด๊ฐ ๋ญ ๋งํ๋ ค๋์งย ์์ ์ฑ์ผ๋ฉด ์ด ๊ฐ์๋ ๊ทธ๋ง๋ด๋ ๋
์ ๋๋ค๊ฐ ๊ฒ์์ ๋ง๋ ๋ค๊ณ ์๊ฐํ์
Player ์บ๋ฆญํฐ๊ฐ ์๋๋ฐ ์์ดํ ์ฐฉ์ฉ์ ๋ฐ๋ผ ๋ชจ์ต์ด ๋ณํด
๊ทธ๋์ ๋์์ด๋๊ฐ ์ผ๊ตด, ๋ชธํต์ ์ชผ๊ฐ์ ์ฌ๋ฌ๊ฐ์ฉ ์คฌ์ด
๊ทธ๋ผ ๋๋ค๋ ์บ๋ฆญํฐ๋ฅผ ์์ง์ผ๋ ์ด๋ป๊ฒ ํ ๊น?
์๋ฅผ ๋ค์ด ์ค๋ฅธ์ชฝ์ผ๋ก 10 ๋งํผ ์์ง์ฌ์ผํ๋ฉด ์ผ๊ตด์ ์ผ๊ตด ์ขํ์์ 10๋งํผ ์์ง์ด๊ณ ๋ชธํต์ ๋ชธํต ์ขํ์์ 10๋งํผ ์์ง์ด๊ณ ํ๊ฒ ์ง
2๊ฐ๋ฉด ํ ๋งํ์ง ๊ทธ๋ฐ๋ฐ ๊ทธ๊ฒ ๋จธ๋ฆฌ์นด๋ฝ ๋ ์ฝ ์ ๋ชฉ ๋ชธํต ํ ์ ๋ค๋ฆฌ ๋ฑ๋ฑ ์ด๋ ๊ฒ ์ชผ๊ฐ๋ฉด ์ด๋ป๊ฒ ํ ๊บผ์ผ? ๋ค ์ผ์ผ์ด ์์ง์ผ๊บผ์ผ?
๊ทธ๋ฐ๋ฐ ๊ทธ๊ฒ ๋ถ๋ชจ(๊ณ์ธต) ๊ด๊ณ๋ฅผ ๋ง๋ค๋ฉด ํ๋ฒ์ ๋๋ค ์ด๊ฑฐ์ง
Player๋ผ๋ ์ค๋ธ์ ํธ๊ฐ ์์ด ๊ฑฐ๊ธฐ์ ๋จธ๋ฆฌ์นด๋ฝ, ๋, ์ฝ, ์ , ๋ชฉ ๋ฑ๋ฑ ๋ค ๋ฃ์์ด
๊ทธ๋ฆฌ๊ณ Player๋ฅผ ์ค๋ฅธ์ชฝ์ผ๋ก 10๋งํผ ์์ง์ด๋ฉด?
๋ค ๊ฐ์ด 10๋งํผ ์์ง์ด๋๊ฒ ๋๋๊ฑฐ์ผ
๊ทธ๋ฆฌ๊ณ ์์ ๋ณด๋ฉด ์์์ position์ด ๋ณํํ์ง ์๋ ๊ฒ ๋ณด์ด๋๋ฐ
์ค์ ๋ก๋ ์์์ง์ด๋๊ฒ ์๋์ผ
์ ๊ธฐ์ ํ์๋๊ฑด ๋ก์ปฌ ํฌ์ง์ ์ด๋ผ๊ณ ๋ถ๋ชจ์์ ์ฐจ์ด๋งํผ์ ํฌ์ง์ ์ด์ผ
์๋ฅผ๋ค์ด ๋ถ๋ชจ๊ฐ (10, 5) ์์น์ ์์ดย
๊ทธ๋ฐ๋ฐ ์์์ผ๋ก ๋ฃ์ ์ค๋ธ์ ํธ๋ย ํซ์ด๋ผ ๋ด ๋ค์ ๋ฐ๋ผ์์ผํด์ ๋ถ๋ชจ์ ์์น๋ณด๋ค x๋ก 3๋งํผ ๋ค์์ ๋ฐ๋ผ์์ผํด
๊ทธ๋ฌ๋ฉด ๋ก์ปฌํฌ์ง์ ์ผ๋ก (-3, 0)์ธ๊ฑฐ๊ณ ย
์ค์ ํฌ์ง์ ์ธ ์๋ํฌ์ง์ ์ย // ๋ถ๋ชจ ์์น + ์์ ์์น // ์ธ๊ฑฐ์ผ
์ฆ (10, 5) + (-3, 0) = (7, 5) ์์น์ ์๋๊ฑฐ์ผ
์ฐ๋ฆฌ๊ฐ ๊ท์ฐฎ๊ฒ ๊ณ์ฐ์ ํ์ง์์๋ ์๋์ผ๋ก ๊ณ์ฐ์ ํด์ฃผ๋๊ฑฐ์ง
์ฐ๋ฆฌ๋ ์ค๋ธ์ ํธ๋ค์ ๋ฐฐ์น๋ง ํ๋ฉด๋๋๊ฑฐ์ผย
์ดํ์ ์ด๋์์์ ๊ณ์ฐ์ ์ปดํจํฐ๊ฐ ํด์ค๋ค๋๊ฑฐ์ผ
์ด๊ฑด position ๋ฟ๋ง์ด ์๋๋ผ ๋ค๋ฅธ ์์ฑ๋ค (rotation, scale๋ ๊ฐ์)
์ง๋ฌธํ์ ๊ฐ ๋ง๋ค๋ ค๋ ๋ด ์บ๋ฆญํฐ๊ฐ ํ์ ํ๋ฉด ๋ฌด๊ธฐ๋ ๋ฐ๋ผ์์ผํด์ ใ ใ ใ ์ ํด๊ฒฐ๋ฒ์
ํ์ ์ ๋ถ๋ชจ์ Transform
ํ์ ์ ์์์ Transform
์์ ์ค๋ช ์ด๋ ๊ฐ์
์ฆ ๋๊ฐ ๋ง๋ค๋ ค๋๊ฑดย
๋ถ๋ชจ์์๊ด๊ณ (๊ณ์ธต๊ด๊ณ)๋ฅผ ๋ง๋ค์ด์ฃผ๊ณ ๋ถ๋ชจ๋ฅผ ํ์ ์ํค๋ฉด ํด๊ฒฐ์ด์ผ
์๋๋ฉด ๊ทธ๋ฅ ์์์ ๋ก์ปฌํฌ์ง์ ์ ๋ณ๊ฒฝํ๋ฉด๋๊ณ
๋ง์ฝ ์์์ ๋ก์ปฌํฌ์ง์ ์ด (1,0)์ด๋ฉด ๋ถ๋ชจ๋ณด๋ค x๋ก 1๋งํผ ์์ ์๋๊ฑฐ๋๊น * -1 ํด์ฃผ๋ฉด ๋ฐ๋๋ก ๊ฐ๊ฒ ์ง?
// Scale์ ์์ย Player๋ Scale์ด 2๊ณ Bomb๋ Scale์ด 0.5์ธ๋ฐ
์ค์ ๋ก๋ Player๋ 2, Bomb๋ 1์ด์ผ
Player๊ฐ ๋ถ๋ชจ๋๊น ๊ธฐ์ค์ด๋ผ ๋ค 2๋ฐฐ๋ผ๊ณ ์๊ฐํ๋๊ฑฐ์ง ๊ทธ๋์ ์๋ Bomb๋ 1์ด๋๊น ๋ง์ถฐ์ฃผ๊ธฐ ์ํด์ 1 / 2 = 0.5๊ฐ ๋๊ฑฐ์ผ
ex) Player๊ฐ 5๊ณ Bomb์ด ์๋ 1์ธ๋ฐ Player ์์์ผ๋ก Bomb์ด ๋ค์ด๊ฐ๋ฉด Bomb์ ๋ก์ปฌ์ค์ผ์ผ์ด 1 / 5 = 0.2๊ฐ ๋๋๊ฑฐ์งย
+ย
๋ง์ง๋ง์ผ๋ก ์ฝ๋๋ก ๋ถ๋ชจ๋ฅผ ๋ถ๋ฌ์ค๋ ๋ฐฉ๋ฒ๋ค์ด์ผ
1๋ฒ this.transform.parent
๋ถ๋ชจ์ transform์ ๊ฐ์ง๊ณ ์ค๋๊ฑฐ์ผย
2๋ฒ this.GetComponentInParent<Transform>();
๋ถ๋ชจ์ Component ์ค Transform์ ๊ฐ์ง๊ณ ์ค๋๊ฑฐ์ผ
1, 2๋ฒ ์ ํํด์ ์ฌ์ฉํ๋ฉด ๋๋๋ฐ
๋ถ๋ชจ์ transform์ ์ฌ์ฉํ๋ ค๋ฉด 1๋ฒ์ผ๋ก ํ๋๊ฒ ์ข๊ณ (๋ถํ๊ฐ ์ ์ด)
๋ถ๋ชจ์ Component๋ฅผ ๊ฐ์ง๊ณ ์ค๊ณ ์ถ์ผ๋ฉด 2๋ฒ์์ Transform์์น์ ๋ค๋ฅธ Component ์ด๋ฆ์ ์ ์ด์ ๊ฐ์ง๊ณ ์์ ์ฐ๋ฉด๋
ex) ๋ถ๋ชจ์ ํํธ๋ฐ์ค๋ฅผ ์์ ํ๊ณ ์ถ์ผ๋ฉด
this.GetComponentInParent<BoxCollider2D>().size = new Vector2(2.0f, 3.0f);
์ด๋ ๊ฒ ํ๋ฉด ํํธ๋ฐ์ค๊ฐ (2.0f, 3.0f)๋ก ์์ ๋๋๊ฑฐ์ผ
๊ทธ ์๋ 9์ค์ ์ฝ๋๋ ๋ค ๊ฐ์ ๋ด์ฉ์ด์ผ
parent.position์ ์์์ parent =ย this.transform.parent๋ก ๊ฐ์ ๋ฃ์ด์คฌ๊ธฐ ๋๋ฌธ์ ์ฌ์ฉํ ์ ์๋๊ฑฐ๊ณ
this.transform.parent,ย this.GetComponentInParent<Transform>() ๋ ๋ค ๋ถ๋ชจ์ transform์ ๋ถ๋ฌ์ค๋๊ฑฐ๊ณ
๋ง์ฝ ๋๊ฐ ์์ฃผ ํน์ ๋ง์ด ๋ถ๋ชจ์ component ๋ฐ transform์ด ํ์ํ๋ฉดย
๋ณ์๋ก ์ ์ธํด์ย Start, Awake์์ย ๊ฐ์ ๋ฃ์ด์ฃผ๊ณ ๊ทธ ์ดํ์ Update์์ ์ฌ์ฉํ๋๊ฒ ์ข์
GetComponent ๊ฐ์๊ฑด ์์ฃผ ํธ์ถ๋์ ์ข์๊ฑด ์์ผ๋๊น ๋ถํ๋ง ์ฌํ์ง ใ ใ
3์ค ์์ฝ
1. ์ดํด ์๊ฐ๋๋ฐ ๋ณต๋ถํ๋ฉด ๋์ค์ ํฌํํฐ
2. ๊ณ์ธต๊ตฌ์กฐ๋ ํธ๋ฆฌํ๋ค.
3. ์ง๋ฌธํ์ ๋ ๋ถ๋ชจ ์ค๋ธ์ ํธ๋ฅผ ํ์ ์ํค๋ฉด๋๋ค.
๋ญ๊ผฌ ๋น๋ฒ ์๋๋ค;; ์ฝ๊ฒ ์๊ฐํ๋ฉด ์๋ง๊ฐ ์ ๊ธฐ ์ ๊ณ ๋ค๋๋๊ฑฐ ์๊ฐํด๋ผ ์๋ง๊ฐ ์์ง์ด๋ฉด ์ ๊ธฐ๋ ์์ง์ด๊ณ ์๋ง๊ฐ ํ์ ํ๋ฉด ์ ๊ธฐ๋ ํ์ ํ๋ค.
์์งค๊น์งใทใทใทใท ๊ฐ์ฌํฉ๋๋ค ์น์ค
์ค์ก๋ค๋ฆฌ
์ ์ฑ์ถ - dc App
์ด ์๋์ ์ฐธ๋ ๋ฉํ ์ถ - dc App
์ถ์ฒํฉ๋๋ค
์ ์ฑ๋ณด์ ใทใทใท
๋ด๋น๋ค ๋ถ๋ด๋์ ์ง๋ฌธํ๊ฒ ๋ ธ ใทใทใทใทใท
๋ ๊ธ๋ก