Google은 흑인 공동체를 위한 인종 간 평등을 진전시키기 위해 노력하고 있습니다. Google에서 어떤 노력을 하고 있는지 확인하세요.

고급 사용법

다음 섹션에서는 라이브러리의 일반적인 작업에는 필요하지 않은 고급 사용법을 주제로 간략히 설명합니다.

지원되는 기타 트레이서

Tuning Fork는 여러 트레이서를 지원합니다. 다음 계측 키가 있는 트레이서가 지원됩니다.

  • 프레임 시작 사이의 시간(PACED_FRAME_TIME이라고 함)
  • CPU 시간: 프레임 시작과 프레임에 대한 CPU 작업 종료 사이의 시간(CPU_TIME이라고 함)
  • GPU 시간: 이전 프레임이 GPU에서 처리되는 시간(GPU_TIME이라고 함)
  • CPU 및 GPU 시간의 최댓값으로 정의되는 원시 프레임 시간(RAW_FRAME_TIME이라고 함): 이 옵션과 PACED_FRAME_TIME의 차이점은 이 옵션에는 Swappy 또는 VSync에 의해 포함된 대기 시간이 포함되지 않는다는 것입니다.

이러한 계측 키는 참조 문서에서 찾아볼 수 있습니다. 이러한 키 중 일부는 Android Frame Pacing 라이브러리를 사용 설정할 때 자동으로 사용되지만 이 라이브러리를 사용 설정하지 않는다면 계측 키를 명시적으로 사용해야 합니다.

충실도 매개변수 가져오기

TFErrorCode TuningFork_getFidelityParameters(const CProtobufSerialization* defaultParams, CProtobufSerialization* params, uint32_t timeout_ms);

설정에서 fidelity_params_callbackTuningFork_init에 전달하거나 라이브러리가 확장 모드인 경우 이 함수를 호출할 필요가 없습니다.

이 함수는 서버에 접속하여 충실도 매개변수를 검색합니다. 다음 중 하나가 발생할 때까지 차단됩니다.

  • 충실도 매개변수가 검색되고 반환 값은 TFERROR_OK입니다. returnedParams는 매개변수를 저장합니다. 이 경우 모든 후속 틱 데이터는 returnedParams와 연결됩니다.
  • timeout_ms와 동일한 밀리초가 경과하고 반환 값은 TFERROR_TIMEOUT입니다. 이 경우 모든 후속 틱 데이터는 defaultFidelityParams와 연결됩니다.

이 함수 전에 TuningFork_init()를 호출해야 하며 기본 스레드와 별도의 스레드에서 호출해야 합니다(이 작업을 자동으로 처리하는 유틸리티 함수에 관해서는 TuningFork_startFidelityParamDownloadThread() 참고). 예를 들어 레벨 로드 시에 이 함수를 다시 호출하여 서버에서 충실도 매개변수를 다시 검색할 수 있습니다. 이렇게 하면 시작 시에만 매개변수를 다시 로드하는 대신 매개변수를 동적으로 업데이트할 수 있습니다. 새 충실도 매개변수가 다운로드되거나 새 기본값이 사용되면 이전 틱 데이터가 모두 제출됩니다.