3D물체를 움직이면 캐릭터에 가까운 지형은 활성화 멀리있는 지형은 비활성화 하도록 풀링을 해보았다.

땅을 생성하면 자동적으로 랜덤으로 땅위 바위와 나무들이 랜덤으로 위치한다.

클릭 하면 gif 재생

처음에는 지형이 가지고 있는 스크립트에서 캐릭터와의 거리를 체크해주려고 했는데 오브젝트가 꺼져있을때 체크가 불가능하기 때문에 지형이 생성될 때 위치를 관리하고 있다가 그 거리를 캐릭터와 비교 하도록 했다.

m_lipool : 풀링에 들어온 오브젝트

m_liActive : 활성화 된 오브젝트

유니티 실행하면 초기에 땅을 생성하는 함수이다. 생성과 동시에 리스트에 지형오브젝트의 위치를 추가해준다. 

캐릭터와 멀리있는 지형에 있는 오브젝트를 비 활성화 해주기 위한 함수이다. 

m_liTemp는 멀리있는 지형을 비 활성화 해주기 위한 리스트이다. PlanSet스크립트를 통해 멀리있으면 m_liTemp에 담아 두고 꺼주도록 한다. m_liActive에는 삭제해주고 다시 m_liPool에 넣어둔다. 

무한이 로딩되는 맵에 사용하도록 하면 좋을 듯하다.

+ Recent posts