언리얼 프로파일링

MoOrY·2023년 10월 31일
0

언리얼 엔진

목록 보기
36/41

프로파일링 환경 설정

프로파일링 결과를 얻기 위해 성능에 영향을 주는 변수들을 통제
1. PIE가 아닌 독립형 게임으로 실행
2. V-Sync를 끄자(r.vsync 0 콘솔 명령 실행)
3. Smooth Framerate, Physics Sub Stepping, GC Verify, AI Logging을 끄자
4. Test 빌드나 Shipping빌드로 실제 기기에서 프로파일링

이 단계를 일부 건너뛰고 빠르게 시작해도 눈에 띄는 병목점은 찾을 수 있다.

큰 부분부터 작은 부분으로 범위를 좁히면서
1. 쉽게 시도해볼 수 있는 간단한 방법부터 활용
2. Stat fps, Stat Unit, Stat Slow 이후 Stat Game/GPU/SceneRendering...

뷰 모드

라이트 복잡도 모드, 쉐이더 복잡도 모드로 라이팅과 쉐이더가 얼마나 성능을 사용하는지 알 수 있고, 쿼드 오버드로로 몇번 그려지고 있는지 찾을 수 있다. 라이트 복잡도를 사용하여 어떤 부분의 라이팅이 큰 영향을 받는지 확인하고, 무버블이 필요하지 않다면 스태틱으로 바꿔주자.
해당 뷰 모드는 에디터의 최적화 뷰 모드에서 클릭하거나, alt + 숫자키로 선택할 수 있다.

통계

상단 툴바의 툴-검사-통계를 선택하여 현재 레벨에 배치된 액터들의 수나 트라이앵글 수를 확인할 수 있다.

텍스처 사이즈
일부 텍스처가 메쉬 스펙에 맞지 않게 너무 큰 해상도를 사용한다면, 그런 텍스처들을 모두 선택하여 우클릭-에셋액션-프로퍼티 매트릭스를 통한 대량 편집을 선택한다. 이후 프로퍼티 에디터에서 max texture size를 검색하여 최대 해상도를 설정해준다 (에셋에는 변화가 없고, 패키징할때만 이 최대 해상도로 패키징된다. 512로 맞추고 싶다면 512라고 입력해주면 된다.)

프로파일 콘솔 커맨드

프로파일링을 도와주는 다양한 콘솔 커맨드들이 준비되어 있다.

Stat 시리즈

Stat fps: 프레임 레이트 확인가능
Stat Unit: 게임 스레드, 드로우 스레드, RHI 스레드가 각각 얼마나 시간이 소요되는지 알 수 있다.
Stat GPU: 그래픽 카드 부하 확인 가능
Stat Game: 게임 스레드(로직 관련) 부하 확인 가능

Stat Character, Stat Physics 등등, 해당 부분만을 확인할 수도 있다.
https://m.blog.naver.com/ratoa/221061744646

showflag 시리즈

showflag로 게임 내에 특정 파트만 렌더링을 끄거나 킬 수 있다.
showflag.skeletalmesh 0 을 하면 스켈레탈 메쉬가 모두 보이지 않게 되고,
showflag.Particle 0 을 하면 파티클이 보이지 않는다.

하나씩 껏다 키며 프레임을 확인해보자

콘솔 커맨드 편하게 쓰기

자주 사용되는 커맨드들은 BP로 제어하도록 해서 편하게 토글할 수 있다.
예를 들어 B키를 누르면 Excute Console Command로 Stat fps를 컷다 키거나, 다른 명령어를 실행하도록 만들어줄 수 있다.

profile
필기용 블로그입니다.

0개의 댓글