TIL
의외로 심플한 블랙홀 구현
박민혁_kog
2023. 12. 19. 16:56
List<GameObject> target=new List<GameObject>();
float time = 0;
Vector3 dir;
private void Update()
{
time += Time.deltaTime;
foreach (GameObject star in target)
{
if (star != null && star.GetComponent<Rigidbody2D>())
{
dir = this.transform.position - star.transform.position;
dir = dir * 10f;
star.GetComponent<Rigidbody2D>().AddForce(dir);
}
}
if (time >= 3)
{
Destroy(this.gameObject);
}
}
private void OnTriggerEnter2D(Collider2D collision)
{
target.Add(collision.gameObject);
}
private void OnTriggerExit2D(Collider2D collision)
{
target.Remove(collision.gameObject);
}
위 코드는 콜라이더 엔터로 구별 했지만 레이캐스트서클로 사방에 레이를 쏴서 거리안에 부딪힌 대상으로 구별 하는 방법도 있다.