Unity | 오브젝트 풀링(Object Pooling)

SONSAZANG·2021년 6월 24일
0

UNITY

목록 보기
1/1
post-thumbnail

2021-06-24

깃헙(sonsazang.github.io) 블로그를 사용하다 다시 velog로 돌아왔습니다.

유니티를 공부한 지 어연 3~4개월 정도 된 것 같다.
이제 공부한 것을 정리하기 위해 velog를 다시 시작하게 되었습니다.

본문으로 들어가기에 앞서 필자의 개발 환경은 Unity + C# + VR입니다.
해당 글의 출처는 위키백과, 인생 유니티 VR/AR 교과서를 참고했습니다.


오늘의 주제: 오브젝트 풀링(Object Pooling)

유니티에서 오브젝트 풀링(Object Pooling)을 사용하는 이유는
콘텐츠의 쾌적한 진행이 어려워져서 인지 부조화가 생기는 것을 방지하기 위해 사용합니다.

여기서 인지 부조화(cognitive dissonance)란
자신의 태도와 행동이 일관되지 않고 모순되어 양립할 수 없는 상태이다.
쉽게 말하면 그냥 VR을 통해 멀미가 느껴진다 정도라고 생각하시면 되겠습니다.

다시 돌아와서 인지 부조화를 줄이기 위해서는
초당 프레임률(Frame Per Second)인 FPS를 높이는 것이 관건입니다.
이런 FPS를 높이는 최적화 요소 중 하나인
메모리를 효율적으로 관리하기 위해 사용하는 것이 오브젝트 풀 입니다.

원리는 간단합니다.(그림 설명?)

오브젝트 풀 이라는 수영장에 튜브를 20개 만들어두고 눈에 보이면 안 되니까 숨겨둡니다.

튜브가 필요할 때 수영장에서 튜브를 하나 빼 오고 눈에 보이게 만듭니다.

튜브를 사용한 후에는 눈에 안 보이게 만들고 다시 오브젝트 풀에 저장합니다

필자의 그림으로 정리해서 이해가 어려울 수도 있습니다.
오브젝트 풀링 정리 끝!

profile
손은수, 사장님이 되고싶은 손사장 입니다.

0개의 댓글