Game Programming in C++
Game Programming in C++ Chapter1 - 사용자 입력 처리
skyho
2025. 8. 16. 21:48
반응형

책의 소스 코드를 직접 작성해보면서 정리한 글입니다. (실습환경: windows)
책 소스 코드: GitHub - gameprogcpp/code: Game Programming in C++ Code
1. 사용자 입력 처리
윈도우상의 X 아이콘을 클릭하거나, 사용자가 Esc 키를 누르면, 게임을 종료시켜 보자.
2. Game.hpp
private 함수로 processInput() 추가
void processInput(); // 사용자 입력 처리
3. Game.cpp
● processInput() 구현
void Game::processInput()
{
SDL_Event event;
while (SDL_PollEvent(&event)) //if event is occurred in queue, it will return TRUE
{
switch (event.type)
{
case SDL_EVENT_QUIT: //windows x icon is pressed
_running = false;
break;
}
}
const bool* state = SDL_GetKeyboardState(NULL);
if (state[SDL_SCANCODE_ESCAPE]) //Esc is pressed
{
_running = false;
}
}
● runLoop() 수정
void Game::runLoop()
{
while (_running)
{
processInput();
generateOutput();
}
}
이제 사용자 입력(Esc, X 아이콘 클릭)을 처리할 수 있게 되었다.
반응형