답변:
게임을 일시 정지 할 때 실제로 게임 루프를 멈추지 마십시오. 대신 bool 변수를 추가해야합니다.이 변수는 게임이 일시 중지되었는지에 따라 true / false로 변경됩니다. 게임이 일시 중지 된 경우 게임 업데이트 만 중지해야하지만 입력에서 업데이트를받는 것을 포함하여 현재 프레임을 계속 렌더링 할 수 있습니다.
if(gameIsPaused == false)
{
// run updates
}
checkInput();
render();
checkInput
/ render
/ update
호출 집합으로 분기 할 수 있다는 것입니다 .
checkInput
한 모드에서만 사용 가능한 일부 컨트롤이있을 수 있으므로 일시 중지 모드와 일시 중지되지 않은 모드에 대해 다른 기능을 원할 수 있습니다 .checkInput
일시 정지 모드 의 기능P
은 눌렀을 때만 보는 것 외에는 아무것도 할 수gameIsPaused = false
없지만 일부 게임은 일시 정지 화면에 추가 기능을 추가합니다 (90 년대에는 일시 정지 화면을 치트 코드의 숨겨진 입력으로 사용하는 것이 일반적이었습니다) 게임을 메뉴 화면과 결합하는 것을 좋아합니다).