Swappy 일반 도구

OpenGL용 Swappy 또는 Vulkan용 Swappy에서 사용할 도구입니다.

요약

Typedef

SwappyPostSwapBuffersCallback)(void *, long desiredPresentationTimeMillis) typedef
void(*
SwappyTracer::postSwapBuffers에 연결할 수 있는 함수에 대한 포인터입니다.
SwappyPostWaitCallback)(void *, long cpu_time_ns, long gpu_time_ns) typedef
void(*
SwappyTracer::postWait에 연결할 수 있는 함수에 대한 포인터입니다.
SwappyPreSwapBuffersCallback)(void *) typedef
void(*
SwappyTracer::preSwapBuffers에 연결할 수 있는 함수에 대한 포인터입니다.
SwappyPreWaitCallback)(void *) typedef
void(*
SwappyTracer::preWait에 연결할 수 있는 함수에 대한 포인터입니다.
SwappyStartFrameCallback)(void *, int currentFrame, long desiredPresentationTimeMillis) typedef
void(*
SwappyTracer::startFrame에 연결할 수 있는 함수에 대한 포인터입니다.
SwappySwapIntervalChangedCallback)(void *) typedef
void(*
SwappyTracer::swapIntervalChanged에 연결할 수 있는 함수에 대한 포인터입니다.
SwappyThreadFunctions typedef
Swappy_setThreadFunctions를 호출하여 Swappy가 스레드를 시작하고 조인하는 방식을 설정할 수 있게 하는 구조입니다.
SwappyThreadId typedef
uint64_t
외부 스레드 관리자가 반환한 스레드의 ID입니다.
SwappyTracer typedef
struct SwappyTracer
실행을 추적하기 위해 각 프레임에 호출될 콜백 컬렉션입니다.

함수

Swappy_setThreadFunctions(const SwappyThreadFunctions *thread_functions)
void
맞춤 스레드 관리자를 사용하려면 다른 함수보다 먼저 이 함수를 호출합니다.
Swappy_version()
uint32_t
런타임 시 Swappy 라이브러리 버전을 반환합니다.

매크로

SWAPPY_SWAP_20FPS (50000000L)
20fps의 스왑 간격(나노초)입니다.
SWAPPY_SWAP_30FPS (33333333L)
30fps의 스왑 간격(나노초)입니다.
SWAPPY_SWAP_60FPS (16666667L)
60fps의 스왑 간격(나노초)입니다.

구조체

SwappyThreadFunctions

Swappy_setThreadFunctions를 호출하여 Swappy가 스레드를 시작하고 조인하는 방식을 설정할 수 있게 하는 구조입니다.

SwappyTracer

실행을 추적하기 위해 각 프레임에 호출될 콜백 컬렉션입니다.

Typedef

SwappyPostSwapBuffersCallback

void(* SwappyPostSwapBuffersCallback)(void *, long desiredPresentationTimeMillis)

SwappyTracer::postSwapBuffers에 연결할 수 있는 함수에 대한 포인터입니다.

세부정보
매개변수
userData
임의의 데이터에 대한 포인터입니다. SwappyTracer::userData를 참고하세요.
desiredPresentationTimeMillis
프레임이 화면에 표시될 목표 시간(밀리초)입니다.

SwappyPostWaitCallback

void(* SwappyPostWaitCallback)(void *, long cpu_time_ns, long gpu_time_ns)

SwappyTracer::postWait에 연결할 수 있는 함수에 대한 포인터입니다.

세부정보
매개변수
userData
임의의 데이터에 대한 포인터입니다. SwappyTracer::userData를 참고하세요.
cpu_time_ns
이 프레임의 CPU 처리 시간(나노초)입니다.
gpu_time_ns
이전 프레임의 GPU 처리 시간(나노초)입니다.

SwappyPreSwapBuffersCallback

void(* SwappyPreSwapBuffersCallback)(void *)

SwappyTracer::preSwapBuffers에 연결할 수 있는 함수에 대한 포인터입니다.

세부정보
매개변수
userData
임의의 데이터에 대한 포인터입니다. SwappyTracer::userData를 참고하세요.

SwappyPreWaitCallback

void(* SwappyPreWaitCallback)(void *)

SwappyTracer::preWait에 연결할 수 있는 함수에 대한 포인터입니다.

세부정보
매개변수
userData
임의의 데이터에 대한 포인터입니다. SwappyTracer::userData를 참고하세요.

SwappyStartFrameCallback

void(* SwappyStartFrameCallback)(void *, int currentFrame, long desiredPresentationTimeMillis)

SwappyTracer::startFrame에 연결할 수 있는 함수에 대한 포인터입니다.

세부정보
매개변수
userData
임의의 데이터에 대한 포인터입니다. SwappyTracer::userData를 참고하세요.
desiredPresentationTimeMillis
프레임이 표시되도록 예약된 시간(밀리초)입니다.

SwappySwapIntervalChangedCallback

void(* SwappySwapIntervalChangedCallback)(void *)

SwappyTracer::swapIntervalChanged에 연결할 수 있는 함수에 대한 포인터입니다.

SwappyGL_getSwapIntervalNS 또는 ::SwappyVk_getSwapIntervalNS를 호출하여 최신 swapInterval을 가져옵니다.

세부정보
매개변수
userData
임의의 데이터에 대한 포인터입니다. SwappyTracer::userData를 참고하세요.

SwappyThreadFunctions

struct SwappyThreadFunctions SwappyThreadFunctions

Swappy_setThreadFunctions를 호출하여 Swappy가 스레드를 시작하고 조인하는 방식을 설정할 수 있게 하는 구조입니다.

이 기능의 사용은 선택사항입니다.

SwappyThreadId

uint64_t SwappyThreadId

외부 스레드 관리자가 반환한 스레드의 ID입니다.

SwappyTracer

struct SwappyTracer SwappyTracer

실행을 추적하기 위해 각 프레임에 호출될 콜백 컬렉션입니다.

이 삽입은 선택사항입니다.

함수

Swappy_setThreadFunctions

void Swappy_setThreadFunctions(
  const SwappyThreadFunctions *thread_functions
)

맞춤 스레드 관리자를 사용하려면 다른 함수보다 먼저 이 함수를 호출합니다.

이 함수의 사용은 전적으로 선택사항입니다. Swappy는 기본적으로 std::thread를 사용합니다.

Swappy_version

uint32_t Swappy_version()

런타임 시 Swappy 라이브러리 버전을 반환합니다.

매크로

SWAPPY_SWAP_20FPS

 SWAPPY_SWAP_20FPS (50000000L)

20fps의 스왑 간격(나노초)입니다.

SWAPPY_SWAP_30FPS

 SWAPPY_SWAP_30FPS (33333333L)

30fps의 스왑 간격(나노초)입니다.

SWAPPY_SWAP_60FPS

 SWAPPY_SWAP_60FPS (16666667L)

60fps의 스왑 간격(나노초)입니다.