"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > RequestAnimationFrame을 사용하여 애니메이션의 프레임 속도(FPS)를 안정화하려면 어떻게 해야 합니까?

RequestAnimationFrame을 사용하여 애니메이션의 프레임 속도(FPS)를 안정화하려면 어떻게 해야 합니까?

2024-11-08에 게시됨
검색:529

How can I use RequestAnimationFrame to stabilize my animation\'s frame rate (FPS)?

RequestAnimationFrame Fps 안정화

RequestAnimationFrame(rAF)은 부드럽고 효율적인 실행을 제공하는 애니메이션에 널리 사용됩니다. 그러나 일관성을 보장하기 위해 프레임 속도(FPS)를 제어하는 ​​것은 어려울 수 있습니다.

rAF를 특정 FPS로 제한

rAF를 특정 FPS로 제한하려면 다음을 수행하세요. 마지막 프레임 실행 이후 경과된 레버리지 시간입니다. 그리기 코드는 원하는 FPS 간격이 경과한 경우에만 실행됩니다.

코드 조각

타이머 변수를 초기화하고 애니메이션을 시작합니다.

var stop = false;
var frameCount = 0;
var fps, fpsInterval, startTime, now, then, elapsed;

function startAnimating(fps) {
    fpsInterval = 1000 / fps;
    then = Date.now();
    startTime = then;
    animate();
}

지정된 FPS에서 그리기 위한 rAF 루프:

function animate() {

    requestAnimationFrame(animate);

    now = Date.now();
    elapsed = now - then;

    if (elapsed > fpsInterval) {
        then = now - (elapsed % fpsInterval);
        // Your drawing code goes here
    }
}

이 논리를 통합하면 rAF를 효과적으로 조절하여 원하는 FPS를 달성하고 특정 요구 사항을 충족하는 일관된 애니메이션을 보장할 수 있습니다.

최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3