์ถฉ๋ ๊ฐ์ง
์ ๋ํฐ์ ๋ด์ฅ๋ ๋ฌผ๋ฆฌ ์์คํ ์ ์ฌ์ฉํ์ฌ ์บ๋ฆญํฐ์ GameObject๊ฐ ์์ดํ ์ GameObject์ ์ถฉ๋ํ ๋๋ฅผ ๊ฐ์งํ ์ ์์ต๋๋ค.
์บ๋ฆญํฐ ์คํฌ๋ฆฝํธ์ "OnCollisionEnter" ๋๋ "OnTriggerEnter" ๋ฉ์๋์์ ์ถฉ๋ํ๋ ๊ฒ์ ๊ฐ์งํฉ๋๋ค.
01. Tag
์ ๋ํฐ ์๋ํฐ์ฐฝ์์ GameObjects ํญ๋ชฉ์ ํ๊ทธ๋ฅผ ํ ๋นํ ๋ค์
์บ๋ฆญํฐ ์คํฌ๋ฆฝํธ์ "OnCollisionEnter" ๋๋ "OnTriggerEnter" ๋ฉ์๋์์ ์ถฉ๋ํ๋ ๊ฐ์ฒด์ ํ๊ทธ๋ฅผ ํ์ธํ ์ ์์ต๋๋ค.
void OnCollisionEnter(Collision collision)
{
if (collision.gameObject.CompareTag("Item"))
{
// The colliding object is an item
}
}
02. Layer
GameObjects ํญ๋ชฉ์ ๋ ์ด์ด๋ฅผ ํ ๋นํ ๋ค์ ์บ๋ฆญํฐ ์คํฌ๋ฆฝํธ์ "OnCollisionEnter" ๋๋ "OnTriggerEnter" ๋ฉ์๋์์ ์ถฉ๋ํ๋ ๊ฐ์ฒด์ ๋ ์ด์ด๋ฅผ ํ์ธํ ์ ์์ต๋๋ค.
void OnCollisionEnter(Collision collision)
{
if (collision.gameObject.layer == LayerMask.NameToLayer("Item"))
{
// The colliding object is an item
}
}
03. Script Component
์ ๋ํฐ ์๋ํฐ์ฐฝ์์ ํญ๋ชฉ ์์ฑ์ ์ ์ํ๋ ์คํฌ๋ฆฝํธ ๊ตฌ์ฑ ์์๋ฅผ GameObjects ํญ๋ชฉ์ ํ ๋นํ ๋ค์
์ถฉ๋ํ๋ ๊ฐ์ฒด์ ์บ๋ฆญํฐ ์คํฌ๋ฆฝํธ์ "OnCollisionEnter" ๋๋ "OnTriggerEnter" ๋ฉ์๋์์ ํด๋น ์คํฌ๋ฆฝํธ ๊ตฌ์ฑ ์์๊ฐ ์๋์ง ํ์ธํ ์ ์์ต๋๋ค.
void OnCollisionEnter(Collision collision)
{
Item itemScript = collision.gameObject.GetComponent<Item>();
if (itemScript != null)
{
// The colliding object is an item
}
}