CPU가 GPU에게 이것을 그려라 라고 명령을 보내는 것. 많을수록 성능이 저하된다.

 

비싼 이유의 문제 : 명령 자체의 오버헤드

 

CPU: "이 메시 그려" → GPU: (준비) → (그림) → "완료"
CPU: "이 메시 그려" → GPU: (준비) → (그림) → "완료"
CPU: "이 메시 그려" → GPU: (준비) → (그림) → "완료"

 

준비 비용이 매번 발생한다. GPU 성능이 아무리 좋아도 드로우콜이 많으면 CPU가 병목이 된다. 

드로우콜 최적화는 GPU가 아니라 CPU-GPU 통신 최적화를 뜻한다.

 

드로우콜의 실제 개수 : 오브젝트 수 x 패스 수 = 실제  드로우콜 수

 

드로우콜 줄이는 핵심 기법들

스태틱 배칭 : 같은 머티리얼 메시를 하나로 합친다.  드로우콜N개-> 1개, UE5에서 Merge Actor

인스턴싱(ISM) : 같은 메시를 한 번 명령으로 N개 그린다. 드로우콜N개 -> 1개, UE5에서 ISM/HISM

머티리얼 병합 : 여러 머티리얼을 하나의 아틀라스로. 드로우콜 감소,  UE5에서 Material Atlas

Nanite : 가상 지오메트리로 자동 최적화. 폴리곤 제한 해방, UE5 Nanite

컬링 : 안 보이는 것은 아예 안 그림. 드로우콜 제거, UE5 Frustum/Occlusion Culling

HLOD : 원거리 오브젝트 군을 하나로 합침, 원거리 드로우콜 감소, UE5의 HLOD

 

ISM vs HISM

ISM : 모든 인스턴스가 같은 LOD 사용으로 단순 반복 배치에 적합하다. ex) 나무, 돌, 소품 등

HISM : 인스턴스마다 LOD 독립 적용으로 카메라 거리에 따라 자동으로 LOD 전환이 된다. ex) 대규모 식생, 군중에 적합

 

연결되는 단어들

 

배칭(Batching) : 여러 드로우콜을 하나로 합치는 최적화 기법. 스태틱 배칭과 동적 배칭으로 나뉜다.

인스턴싱(Instancing) : 같은 메시를 하나의 드로우콜로 여러 번 그리는 기법

오버드로우(Overdraw) : 같은 픽셀을 여러 번 그리는 것. 반투명 오브젝트가 많을 때 발생한다. 드로우콜과는 별개의 GPU 병목

RenderDoc : GPU 프레임 분석 도구. 드로우콜 하나하나 뜯어볼 수 있다. 셰이더 병목 찾을 때 사용

stat scenerendering : UE5 콘솔 명령. 현재 씬의 드로우콜 수, 폴리곤 수, 배칭 현황을 실시간으로 확인 가능하다.

'Word' 카테고리의 다른 글

KPI ( Key Performance Indicator )  (0) 2026.07.02
사용자 여정 ( User Journey )  (0) 2026.07.01
레거시 코드 ( Legacy Code )  (0) 2026.06.29
경제 시스템 ( Game Economy )  (0) 2026.06.29
LOD ( Level of Detail )  (1) 2026.06.26

+ Recent posts