"Super Meat Boy"는 최근 PC 용으로 출시 된 까다로운 플랫 포머로서 뛰어난 제어력과 완벽한 픽셀 점프가 필요합니다. 게임의 물리 코드는 60fps로 고정 된 프레임 속도에 따라 다릅니다. 즉, 컴퓨터가 최고 속도로 게임을 실행할 수 없으면 물리가 미쳐서 캐릭터가 느리게 실행되고 땅에 떨어지게됩니다. 또한 vsync가 꺼져 있으면 게임이 매우 빠르게 실행됩니다.
2D 게임 프로그래밍 경험이있는 사람들이 왜 게임이 이런 식으로 코딩되었는지 설명 할 수 있습니까? 일정한 속도로 실행되는 물리 루프가 더 나은 솔루션이 아닐까요? (실제로, 일부 엔티티는 프레임 속도에 관계없이 정상적으로 움직이기 때문에 게임의 일부에 물리 루프가 사용된다고 생각합니다. 반면에 캐릭터는 [fps / 60]으로 빠르게 실행됩니다.)
이 구현에서 나를 괴롭히는 것은 게임 엔진과 그래픽 렌더링 간의 추상화 손실로 모니터, 그래픽 카드 및 CPU와 같은 시스템 별 항목에 따라 다릅니다. 어떤 이유로 든 컴퓨터에서 vsync를 처리 할 수 없거나 정확히 60fps로 게임을 실행할 수없는 경우 크게 중단됩니다. 렌더링 단계가 물리 계산에 영향을 미치는 이유는 무엇입니까? (현재 대부분의 게임은 게임 속도를 늦추거나 프레임을 건너 뜁니다.) 반면에, 나는 NES와 SNES의 구식 플랫 포머가 그들의 제어와 물리학에 대해 고정 프레임 레이트에 의존한다는 것을 이해합니다. 이것이 왜, 그리고 프레임 속도 의존성을 가지지 않고 그 정맥에서 patformer를 만들 수 있습니까? 그래픽 렌더링을 엔진의 나머지 부분과 분리하면 정밀도가 떨어질 수 있습니까?
감사합니다. 질문이 혼란 스러우면 죄송합니다.