- OnCollisionEnter2D : 충돌이 일어나는 순간 1회 호출
- OnCollisionStay2D : 충돌이 유지되는 동안 매 프래임 호출
- OnCollisionExit2D : 충돌이 종료되는 순간 1회 호출
// Collision.cs
// 플레이어가 블럭에 충돌하는 동안 파란색으로 변함, 충돌 종료시 default color로 돌아옴
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class CollisionEvent : MonoBehaviour
{
// 해당 변수의 바로 윗줄에 작성 Transform의 positiom, rotation 변수들과 같이 Inspector View에서 변수의 옵션을 조절할 수 있게 해준다
[SerializeField]
private Color color;
private Color defaultColor;
private SpriteRenderer spriteRenderer;
private void Awake()
{
spriteRenderer = GetComponent<SpriteRenderer>();
defaultColor = spriteRenderer.color;
}
/*
// 충돌이 일어나는 순간 1회 호출
private void OnCollisionEnter2D(Collision2D collision)
{
spriteRenderer.color = defaultColor;
}
*/
// 충돌이 유지되는 동안 매 프래임 호출
private void OnCollisionStay2D(Collision2D collision)
{
spriteRenderer.color = Color.blue;
//Debug.Log(gameObject.name = " : OnCollisionStay2D() 메소드 실행");
}
// 충돌이 종료되는 순간 1회 호출
private void OnCollisionExit2D(Collision2D collision)
{
spriteRenderer.color = defaultColor;
}
}
'Unity' 카테고리의 다른 글
Unity 2D exercise (shooting game) (0) | 2021.07.13 |
---|---|
Unity 2D basic #5 (Instantiate) (0) | 2021.07.04 |
Unity 2D basic #4 (Trigger) (0) | 2021.07.03 |
Unity 2D basic #2 (Key Input) (0) | 2021.07.03 |
Unity 2D basic #1 (Initialize & Update) (0) | 2021.07.03 |