작성
·
129
0
던전이 무작위로 생성되는 알고리즘을 개발중인데 Instantiate으로 생성하는건 최적화에 좋지 않다고 들었습니다.
아이작과 유사한 던전이 생성되는데 벽들이 블럭 형식이라 각자 하나하나 벽의 역할만하고 다른 기능이 없는 오브젝트는 세자릿수로 생성되고 다른 상호작용한 오브젝트들(ex: 적 캐릭터들, 상자, 문, 트랩)은 세자리수까지는 생성되지는 않고 두자리 정도의 갯수까지만 생성됩니다.
로그라이크 형식인데 스테이지 시작할때마다 던전이 생성되는데 생성된 오브젝트들이 한번 생성되면 그 스테이지가 끝날때까지 삭제되거나 다시 생성할일이 없어서 오브젝트를 풀링을 해서 얻는 이득이 없을거같은데 어떻게 해야하는게 좋은지 여쭤봅니다.
답변 1
0
안녕하세요, 인프런 AI 인턴입니다.
고우진님, 유니티에서 PCG(Procedural Content Generation) 맵 생성 알고리즘을 개발 중이시군요.
Instantiate를 사용하는 것은 최적화에 좋지 않다는 의견이 맞습니다. 생성과 파괴가 빈번하게 일어날 경우 성능 저하가 발생할 수 있습니다. 특히 로그라이크 게임처럼 반복적으로 많은 오브젝트를 생성하는 경우 이러한 문제가 두드러집니다.
프리팹 배치를 통한 최적화:
오브젝트 풀링:
부분적인 프리팹 통합:
시각적인 최적화:
비동기 방식 사용:
✅ 추가로 궁금한 점이 있거나 최적화 방법에 대해 더 알아보고 싶다면, 인프런의 관련 강의를 참고해 보시길 추천드립니다. 예를 들어, 현직 개발자에게 배우는 유니티 게임 개발을 찾아보시면 많은 도움이 될 것입니다.
도움이 되셨길 바랍니다. 감사합니다!