처음으로 8비트 짜리 게임을 구현해봤다. 기본 C++밖에 모르는 나는 어느새 Visual Studio로 한 10개 정도의 소스파일들을 만들고 그 10개의 파일들로 인해 간단한 컴퓨터 게임이 실행하는걸 성공했다. 그리고 나는 처음으로 그래픽스를 매니지 하는 라이브러리를 응용했기 때문에 프로그램이 정상적으로 컴파일을 할 수 있다는게 감격스러웠다. 나는 원래 링크드 리스트로 구현하려고 했지만 더 좋고 효율적인 벡터들을 응용하게 되었다.
다들 어렸을때 한번쯤은 해봤을 게임이다 (요근래 어린 친구들은 과연 이 뱀 게임을 잘 알지 모르겠지만). 원래 이 게임을 실행하던 컴퓨터들은 애초에 회색/검은색 화면에서 쪼그만 뱀 한 마리가 동동 화면 속으로 기어다니고 있었다.
규칙들은 간단하게 뱀의 방향키들이 연속으로 반대 방향을 안 잡으면서 목표물을 먹는것이다. 목표물이 먹힐 때 마다 목표물의 좌표가 변경되고 뱀의 길이는 늘어지면서 프레임 속도 (fps)도 점점 빨라진다. 역 방향 키들을 누르면 뱀은 그대로 죽고 게임은 종료된다. 예를 들면 왼쪽 키를 눌렀을 때 바로 오른쪽 키를 누르면 게임이 종료된다.
결과화면은 아래와 같이 실행된다.
소스 코드는 내 깃허브 리포에 업로드가 되어있다. 테스트 할 꺼면 무조건 내 readme.md 파일에 적혀있는 STD 라이브러리 파일을 다운 받고 VSCode 환경 설정도 따로 해야한다. 모든 설명들은 내 readme.md 파일에 적혀있으니 반드시 읽어보도록.
https://github.com/yoonBot/Snake-Game
환경설정을 다 하면 VSCode 들어가서 환경설정한 프로젝트 열고 Source File 에다 모든 파일들을 붙여놓고 빌드하고 디버깅 실행하면 모든게 다 정상적으로 돌아갈 것이다.