ObjectPooling - 디자인 패턴
디자인 패턴 중 하나인 오브젝트 풀링에 대해 Step by Step 으로 진행해보도록 하겠다 기관총을 구현한다고 했을 때, 총알을 매우 많이 날려야하는데 총알을 발사할때마다 총알 오브젝트를 생성하고, 플레이어 또는 NPC가 맞거나 벽에 부딪힐때마다 삭제를 해주게 된다면 Unity의 BGC(Boehm Garbage Collector)의 특성상 압축이 안되기 때문에, Garbage 가 발생할 것이다 즉 총알을 많이 발사하면 발사할수록 Garbage는 늘어나게 되고, 이에 따라 Heap memory의 확장이 더 자주 요청될 것이다 이를 막기 위해 사용하는 것이 바로 ObjectPooling 이라는 디자인패턴이다 총알을 발사할때마다 생성후, 피격시 삭제하는 것이 아니라 특정 개수를 정해놓은 후, 이를 재사용하는..
Unity
2023. 3. 31. 17:34