

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# Unreal Engine 성능 프로파일링
<a name="profiling-ue"></a>

 이 섹션에서는 Unreal Engine 게임 또는 애플리케이션 성능을 분석하는 방법을 알아봅니다. 이렇게 하면 최적화할 영역의를 식별하여 Amazon GameLift Streams에서 스트리밍을 더 원활하게 만들 수 있습니다.

 Unreal Engine의 콘솔과 내장 통계 명령을 사용하여 게임의 성능을 자세히 살펴볼 수 있습니다. 배송할 수 없는 빌드 또는 **편집기**에서 콘솔에 액세스할 수 있습니다. 배송할 수 없는 빌드는 디버그 또는 개발 구성을 사용하여 빌드된 프로젝트를 나타냅니다.

**콘솔에 액세스하려면**

 배송할 수 없는 빌드와 [편집기에서 재생](https://dev.epicgames.com/documentation/en-us/unreal-engine/playing-and-simulating-in-unreal-engine#pieconsole) 모드에서 물결표(**\~**) 키를 눌러 콘솔을 엽니다. 물결표 키를 두 번 눌러 콘솔을 확장합니다.

다음은 콘솔 사용에 대한 몇 가지 팁입니다.
+ 키워드를 입력하여 해당 키워드가 포함된 가능한 모든 명령을 나열합니다. 화살표 키를 사용하여 목록을 스크롤합니다.
+ 화살표 키 또는 페이지 위로 및 페이지 아래로 키를 사용하여 기록을 스크롤합니다.
+ 로그는 프로젝트 `Saved/Logs` 디렉터리의 `.txt` 파일에 저장됩니다.

**게임 성능을 프로파일링하려면**

1.  먼저 `stat fps` 및 `stat unit` 명령을 실행합니다. 이렇게 하면 게임이 성능에 어려움을 겪는 부분에 대한 개요를 볼 수 있습니다.
   + `stat fps`: 현재 초당 프레임을 표시합니다.
   +  `stat unit`: 프레임을 여러 하위 섹션으로 나눕니다.
     +  **프레임**: 프레임 시뮬레이션이 시작되는 시점부터 프레임 프레젠테이션이 화면에 표시되는 시점까지의 총 벽시계 시간입니다.
     +  **게임**: 프레임당 게임 시뮬레이션 스레드에 걸린 총 CPU 시간입니다.
     +  **그리**기: 렌더링 스레드가 장면을 GPU의 명령으로 변환하고 GPU에 제출하는 데 걸리는 총 CPU 시간입니다.
     +  **GPU**: GPU가 모든 명령을 처리하는 데 걸리는 총 시간입니다.
     +  **드로우**: 프레임에 대해 제출된 총 드로우 수입니다.
     +  **Prims**: 그려진 총 삼각형 수입니다.

1.  게임을 플레이하고 **게임**, 그**리**기 또는 **GPU**에서 FPS 감소와 시간 증가로 나타나는 성능이 낮은 영역을 식별합니다.

1.  를 실행`stat game`하여 다양한 게임 플레이 그룹에 소요되는 시간을 확인합니다.

1.  AI, 애니메이션, 물리, 게임 플레이, 스크립팅 등과 같은 특정 게임 플레이 요소에 대한 통계를 구체화합니다. 다음은 몇 가지 예입니다.
   + `stat ai`: AI 동작을 계산하는 데 걸리는 시간입니다.
   + `stat anim`: 스키닝된 메시를 계산하는 시간입니다.
   + `stat physics`: 물리 시뮬레이션을 계산하는 데 걸리는 시간입니다.

1.  를 실행`stat drawcount`하여 가장 많은 드로우를 생성하는 렌더링 영역을 확인합니다. 목록에는 드로우를 내보내는 렌더 패스와 각 프레임에서 내보내는 드로우 수가 표시됩니다. 다음 단계에서 GPU 통계를 분석하여 자세한 정보를 얻을 수 있습니다.

1.  를 실행`stat gpu`하여 GPU 시간을 가장 많이 소비하는 렌더링 유형을 확인합니다.

1.  렌더링 유형을 조명, 그림자, 내강(조명), 머리카락, 후처리 등과 같은 광범위한 그룹으로 구체화합니다. 다음은 몇 가지 일반적인 예입니다.
   +  `stat lightrendering`: 조명과 그림자를 렌더링하는 GPU 시간입니다.
   +  `stat shadowrendering`: 다양한 섀도우를 업데이트하는 GPU 시간입니다.
   +  `stat scenerendering`: 장면을 렌더링하는 GPU 시간입니다.

 이 섹션에서는 사용 가능한 명령의 하위 집합만 다룹니다. 게임의 기능에 따라 자산 스트리밍, 가상 텍스처링, CPU 작업 워크로드 배포, 스레딩, 사운드, 파티클 등과 같은 영역의 통계를 살펴봅니다. 자세한 내용은 [통계 명령을](https://dev.epicgames.com/documentation/en-us/unreal-engine/stat-commands-in-unreal-engine) 참조하세요.