선생님: 오늘은 Unity의 다이내믹 배칭(동적 배칭)에 대해 이야기해 볼게요. 다이내믹 배칭은 모양이 거의 동일한 단순한 메쉬를 그룹으로 렌더링하는 데 유용한 기능이에요.

학생: 다이내믹 배칭이 언제 필요한지 예를 들어주실 수 있나요?

선생님: 물론이죠! 나무, 바위, 덤불이 많은 숲을 렌더링하고 싶다고 가정해 봅시다. 이 오브젝트들은 모두 모양이 비슷하기 때문에 다이내믹 배칭을 사용하면 드로 콜 수를 줄일 수 있고 성능도 향상시킬 수 있습니다.

학생: 복잡한 오브젝트에도 다이내믹 배칭을 사용할 수 있나요?

선생님: 아니요, 다이나믹 배칭은 모양이 비슷한 단순한 개체에 사용하는 것이 가장 좋습니다. 복잡한 오브젝트에는 스태틱 배칭이나 GPU 인스턴싱을 사용하는 것이 좋습니다.

학생: 다이나믹 배칭이 작동하려면 어떤 요구 사항이 있나요?

선생님: 다이내믹 배칭을 사용하려면 오브젝트의 머티리얼과 셰이더가 동일해야 하며, 총 버텍스 수가 일정 한도 미만이어야 합니다. 또한 오브젝트의 텍스처가 서로 다른 경우 이를 아틀라스로 결합하여 다이나믹 배칭을 수행할 수 있어요.

다이나믹 배칭이 성능을 저하시킬 수도 있다

학생: 다이나믹 배칭이 성능을 저하시키는 경우도 있나요?

교사: 수백 개의 단순한 오브젝트가 있고 각각의 배치에 몇 개의 오브젝트만 넣는 경우, 수많은 작은 배치를 탐지하고 생성하는 데 드는 비용이 각 메시마다 별도의 드로 콜을 수행하는 데 드는 것보다 더 많을 수 있습니다. 또한 씬을 변경할 때 실수로 버텍스 한도를 초과하거나 오브젝트가 다이내믹 배칭에서 제외되지 않도록 주의해야 합니다.

학생: 다이내믹 배칭이 제대로 작동하는지 어떻게 확인할 수 있나요?

선생님: 드로우 콜 수를 확인하고 프레임 디버거 데이터를 확인하여 오브젝트가 다이내믹 배칭에서 제외되지 않았는지 확인할 수 있어요. 씬에서 수시로 테스트를 수행하여 사용 중인 드로우 콜 수가 적절한지 항상 확인하는 것이 중요합니다.

추천 학습 자료