ADPF Unreal Engine 플러그인

Unreal Engine용 ADPF (Android 동적 성능 프레임워크) 플러그인은 안정적인 성능을 제공하고 열 제한을 방지합니다.

GitHub에서 플러그인을 다운로드할 수 있습니다.

ADPF Unreal Engine 플러그인 사용 방법

  1. 플러그인 다운로드

  2. 플러그인을 프로젝트 플러그인 폴더에 복사합니다.

  3. Unreal 편집기에서 ADPF Unreal Engine 플러그인 사용 설정

  4. Unreal 편집기 다시 실행하기

  5. 게임 제작 및 요리

ADPF Unreal Engine 플러그인을 사용 설정합니다.
그림 1. ADPF Unreal Engine 플러그인 사용 설정

플러그인 콘솔 구성

플러그인에는 런타임 시 플러그인 옵션을 변경할 수 있게 해주는 다음과 같은 Unreal Engine 콘솔 변수가 있습니다.

Var

유효한 값

기본값

설명

r.AndroidPerformanceEnabled

0, 1

1

Android Performance 플러그인을 사용 설정/사용 중지합니다. 플러그인은 Android 적응성 API를 사용하여 기기의 열 상태에 따라 게임 설정을 조정하고 필요에 따라 CPU를 조정합니다.

0: 꺼짐 (사용 중지됨)

1: 사용 (사용 설정됨)

r.AndroidPerformanceHintEnabled

0, 1

1

성능 힌트 관리자를 사용 설정/사용 중지합니다. 지원되는 Android 기기에서 최적의 스레드 부스팅을 위해 이 설정을 사용 설정합니다.

0: 꺼짐 (사용 중지됨)

1: 사용 (사용 설정됨)

r.AndroidPerformanceChangeQualities

0, 1, 2

1

열 상태가 게임의 충실도 수준을 조정하는 방식을 선택합니다.

0: 시스템이 설정을 조정하지 않음

1: 열 헤드룸에 따라 설정이 조정됩니다.

2: 온도 리스너에 따라 설정이 조정됩니다.

ADPF Unreal Engine 플러그인 작동 방식

플러그인은 프레임마다 Monitor() 함수를 호출하고 이전 열 검사 이후 경과된 시간을 확인합니다. 1초 이상 지나면 플러그인은 현재 온도를 읽고 그래픽 품질 변경이 필요한지 판단하고 (예: 게임이 열로 제한되거나 열 제한 기준점에 근접한 경우) 그에 따라 설정을 조정합니다.

또한 플러그인은 타겟 및 실제 프레임 기간을 성능 힌트 세션 API에 보고하고 CPU 주파수를 높이거나 필요한 경우 CPU 스케줄링을 조정합니다.

ADPF Unreal Engine 플러그인 플로우 차트
그림 2. ADPF Unreal Engine 플러그인 플로우 차트

열 상태에 따라 그래픽 품질을 변경하는 방법

이 플러그인은 Thermal API의 의견에 따라 Unreal Engine Scalability를 사용하여 그래픽 품질을 조정합니다. Unreal Engine 확장성에는 3 (최고 품질)부터 0 (최저 품질)까지 4가지 수준이 있습니다. 각 수준은 해상도 배율, 뷰 거리, 앤티앨리어싱, 후처리 및 기타 기능에 매핑됩니다.

Unreal Engine 확장성입니다.
그림 3. Unreal Engine 확장성

ADPF에서는 두 가지 방법, 즉 열 헤드룸열 상태를 사용하여 기기의 열 상태를 확인합니다. 열 헤드룸은 더 정확한 값을 제공합니다. 따라서 플러그인은 기본적으로 열 헤드룸을 사용하고 Thermal status API를 사용 중지합니다.

Unreal Engine 확장성은 다음 열 값에 따라 변경됩니다.

열 헤드룸

  • < 0.75: 품질 수준 3
  • 0.75~0.85: 품질 수준 2
  • 0.85~0.95: 품질 수준 1
  • > 0.95: 품질 수준 0

열 상태

  • 없음: 품질 수준 3
  • 밝게: 품질 수준 2
  • 보통: 품질 수준 1
  • 심각하고 중요: 품질 수준 0

자세한 내용은 Thermal API를 참고하세요.

성능 힌트 API

플러그인에는 두 가지 유형의 성능 힌트 세션이 있습니다. 하나는 게임 스레드용이고 다른 하나는 렌더링 스레드 (렌더링 및 RHI 스레드)용입니다. 이 두 가지 유형의 성능 힌트는 모든 프레임의 실제 기간과 타겟 기간을 보고하는 데 사용됩니다. 시스템은 CPU 주파수를 조정하고 실제 기간이 목표 기간과 다르면 더 나은 예약 옵션을 선택합니다.

자세한 내용은 Performance Hint API를 참고하세요.

권장사항

플러그인은 열 제한을 방지하고 기본 구현으로 지속적인 타겟 FPS를 제공합니다. 즉각적인 결과를 얻으려면 ADPF를 기본 Unreal Engine 확장성 수준으로 적용하세요.

그러나 게임마다 다르기 때문에 ADPF가 게임에 동적 성능을 완전히 제공할 수 있도록 해상도 배율, 뷰 거리, 앤티앨리어싱, 후처리, 그림자, 텍스처, 효과와 같은 각 매개변수의 확장성 수준을 미세 조정합니다.

다음은 ADPF Unreal 플러그인으로 최상의 결과를 얻기 위한 세 가지 주요 단계입니다.

  • 기준 설정: ADPF를 사용하기 전에 게임 성능을 철저히 프로파일링합니다. 이 데이터는 플러그인을 구현한 후 비교를 위한 중요한 벤치마크 역할을 합니다.
    ADPF Unreal Engine 권장사항입니다.
    그림 4. 기준을 설정합니다.
  • 비현실적인 확장성 활용: 어느 정도의 성능 향상만 제공하는 경우에도 비현실적인 확장성을 실험합니다. 이렇게 하면 큰 노력 없이도 성능 이점을 얻을 수 있습니다.
    ADPF Unreal Engine 권장사항입니다.
    그림 5. 비현실적인 확장성을 이용하세요.
  • 인게임 그래픽 설정 우선순위 지정: 게임 내 그래픽 품질 수준을 최적화합니다. 이러한 설정은 게임의 콘텐츠에 맞게 맞춤화되므로 더 원활한 프레임 속도와 효과적인 열 관리를 보장합니다.
    ADPF Unreal Engine 권장사항입니다.
    그림 6. 게임 내 그래픽 설정의 우선순위 지정