Prefab

ํ”„๋ฆฌํŒน์ด๋ž€ ์œ ๋‹ˆํ‹ฐ์—์„œ ์‚ฌ์šฉํ•˜๋Š” ์žฌ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๊ฒŒ์ž„ ์˜ค๋ธŒ์ ํŠธ(GameObject)์ด๋‹ค. ๊ทธ ์•ˆ์˜ ์ปดํฌ๋„ŒํŠธ์™€ ์„ค์ •๊นŒ์ง€ ํ†ต์งธ๋กœ ์ €์žฅํ•ด์„œ ์—ฌ๋Ÿฌ ๋ฒˆ ์žฌ์‚ฌ์šฉ๊ฐ€๋Šฅํ•˜๋‹ค.

Prefab ์ƒ์„ฑ

  • Hierarchyย ์ฐฝ์—์„œย ํ”„๋กœ์ ํŠธ ์ฐฝ์˜ย ์–ด๋–ค ํด๋”๋กœ GameObject๋ฅผ ๋“œ๋ž˜๊ทธํ•˜๋ฉด ๊ทธ ๊ฐ์ฒด๊ฐ€ ํ”„๋ฆฌํŒน์œผ๋กœ ๋ณ€ํ™˜๋ฉ๋‹ˆ๋‹ค.
    • โ—Hierarchyย ์ฐฝ์˜ ๋ธ”๋ก์ด ํŒŒ๋ž€์ƒ‰์œผ๋กœ ๋ณ€ํ•˜๋Š” ๊ฒƒ์„ ๊ด€์ฐฐํ•˜๋ผ. ์ด๋Š” ํ”„๋ฆฌํŒน์˜ ๋ณต์‚ฌ๋ณธ(๋˜๋Š”ย ์ธ์Šคํ„ด์Šค)์ž„์„ ๋‚˜ํƒ€๋ƒ„.

ํ”„๋ฆฌํŒน ์‘์šฉ ์‚ฌ๋ก€

  • ์ƒํ™ฉ (์™œ ์ด ์ž‘์—…์„ ํ–ˆ๋‚˜)

    • ์žฅ๋ฉด(Scene)์—์„œ 1kg ๊ณต์ด 1kg ๋ธ”๋ก 3๊ฐœ๋กœ ๋งŒ๋“  ํƒ‘์„ ๋„˜์–ด๋œจ๋ฆฌ๊ธฐ ์–ด๋ ค์›€.
    • ์ด์œ : ์งˆ๋Ÿ‰์ด ๋™์ผํ•˜๋ฉด ๋ฌผ๋ฆฌ์ ์œผ๋กœ ํฐ ์ถฉ๊ฒฉ์ด ์ „๋‹ฌ๋˜๊ธฐ ์–ด๋ ต๊ธฐ ๋•Œ๋ฌธ
    • ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•: ๋ธ”๋ก์˜ ์งˆ๋Ÿ‰์„ ์ค„์—ฌ ๊ณต์ด ์‰ฝ๊ฒŒ ๋ฐ€ ์ˆ˜ ์žˆ๊ฒŒ ์กฐ์ •.
  • ํ•ต์‹ฌ ์•„์ด๋””์–ด (Prefab์„ ์“ฐ๋Š” ์ด์œ )

    • ๋ธ”๋ก๋“ค์€ **Prefab(ํ”„๋ฆฌํŒน)**์œผ๋กœ ๋งŒ๋“ค์–ด์ ธ ์žˆ์Œ.
    • Prefab์€ ์›๋ณธ ์„ค๊ณ„๋„ ๊ฐ™์€ ๊ฐ์ฒด๋ผ์„œ โ†’ Prefab์„ ์ˆ˜์ •ํ•˜๋ฉด ์žฅ๋ฉด์— ์žˆ๋Š” ๋ชจ๋“  ๊ฐ™์€ ๋ธ”๋ก์ด ๋™์‹œ์— ๋ณ€๊ฒฝ๋จ.
  • ์ž‘์—… ๋ฐฉ๋ฒ•

    • **Prefab Editing Mode(ํ”„๋ฆฌํŒน ํŽธ์ง‘ ๋ชจ๋“œ)**์— ๋“ค์–ด๊ฐ
    • ๋ธ”๋ก Prefab์˜ Rigidbody โ†’ Mass ๊ฐ’์„ ๋‚ฎ์ถค
    • ๊ฒฐ๊ณผ
      โ†’ ์žฅ๋ฉด์— ์žˆ๋Š” ๋ชจ๋“  ๋ธ”๋ก์˜ ์งˆ๋Ÿ‰์ด ๋™์‹œ์— ์ค„์–ด๋“ฆ
  • ์™œ ์ด ๋ฐฉ์‹์ด ์ค‘์š”ํ•œ๊ฐ€

    • ์žฅ๋ฉด์— ๋ธ”๋ก์ด 10๊ฐœ, 100๊ฐœ ์žˆ์–ด๋„ ํ•œ ๋ฒˆ๋งŒ ์ˆ˜์ •ํ•˜๋ฉด ๋จ
    • ๋ ˆ๋ฒจ ๋””์ž์ธ์ด๋‚˜ ๋ฌผ๋ฆฌ ๋ฐธ๋Ÿฐ์Šค ์กฐ์ •์ด ๋งค์šฐ ์‰ฌ์›Œ์ง
    • Unity ๊ฐœ๋ฐœ์—์„œ Prefab ์ค‘์‹ฌ ์ž‘์—… ๋ฐฉ์‹์ด ๊ธฐ๋ณธ ํŒจํ„ด์ž„.

์Šคํฌ๋ฆฝํŠธ

์Šคํฌ๋ฆฝํŠธ ์ƒ์„ฑ

MonoBehaviour๋Š” Unity์˜ ๋ชจ๋“  GameObject์— ํ•„์ˆ˜ ํด๋ž˜์Šค์ž…๋‹ˆ๋‹ค.

์Šคํฌ๋ฆฝํŠธ ์ด๋ฆ„์— ์˜คํƒ€๊ฐ€ ์žˆ๊ฑฐ๋‚˜ ์–ด๋–ค ์ด์œ ๋กœ๋“  ์ด๋ฆ„์„ ๋ฐ”๊ฟ”์•ผ ํ•œ๋‹ค๋ฉด, ๊ทธ๋ƒฅ ์‚ญ์ œํ•˜๊ณ  ์˜ฌ๋ฐ”๋ฅธ ์ด๋ฆ„์œผ๋กœ ์ƒˆ๋กœ ๋งŒ๋“œ๋Š” ๊ฒƒ์ด ๋” ์‰ฝ์Šต๋‹ˆ๋‹ค.


OnTriggerEnter

์Šคํฌ๋ฆฝํŠธ์—์„œย OnTriggerEnterย ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๋Š”๋ฐ, ์ด ๊ธฐ๋Šฅ์€ ํ•œ ๊ฐ์ฒด๊ฐ€ ๋‹ค๋ฅธ ๊ฐ์ฒด์˜ ํŠธ๋ฆฌ๊ฑฐ ์ฝœ๋ผ์ด๋” ์กด์— ๋“ค์–ด๊ฐˆ ๋•Œ ํ˜ธ์ถœ๋˜๋Š” ํŠน๋ณ„ํ•œ Unity ํ•จ์ˆ˜์ž…๋‹ˆ๋‹ค. OnTriggerEnter๋Š” ๊ด€๋ จ๋œ ๊ฐ์ฒด ์ค‘ ์ ์–ด๋„ ํ•˜๋‚˜์—ย Rigidbodyย ์ปดํฌ๋„ŒํŠธ๊ฐ€ ๋ถ™์–ด ์žˆ์„ ๋•Œ๋งŒ ํ˜ธ์ถœ๋œ๋‹ค๋Š” ์ ์„ ์œ ๋…ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.


Instantiate()

๋Ÿฐํƒ€์ž„์— ์ƒˆ๋กœ์šด GameObject ๋˜๋Š” ๊ฐ์ฒด์˜ ๋ณต์‚ฌ๋ณธ์„ ์ƒ์„ฑํ•˜๋ฉฐ, ๋ชจ๋“  ์ปดํฌ๋„ŒํŠธ ์†์„ฑ์„ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค.


์ฐธ๊ณ ์ž๋ฃŒ

  • ์œ ๋‹ˆํ‹ฐ ํŠœํ† ๋ฆฌ์–ผ