기획 배경
이 게임은 인터넷이 없는 환경에서 크롬에 접속하면 플레이할 수 있는 크롬 다이노 공룡게임이라는 구글 이스터에그 게임을 만들고 싶어 이 주제를 선정하였습니다.
개요
공룡과 장애물(나무, 새)을 피하는 게임을 개발하였습니다. 장애물을 넘을 때마다 50점을 얻게 만들었으며, 게임의 주요 기능은 점프, 머리 숙이기, 장애물 생성, 충돌 처리, 점수 증가 등이 있습니다.
프로젝트 소개
Windows API를 활용하여 콘솔 창을 제어하기 위한 시스템을 구현하였습니다. 특히 SetConsoleCursorPosition
함수를 사용해 화면상의 위치를 제어하고, printf
와 gotoxy
함수를 이용해 화면에 문자를 출력하며 위치를 조정하였습니다. 게임은 무한 루프 내에서 각 프레임마다 화면을 업데이트하고, 사용자 입력을 받아 처리하는 방식으로 구현되었습니다.
게임 구조
게임은 공룡과 장애물 객체를 관리하는 방식으로 구현되었습니다. 장애물은 화면의 오른쪽에서 왼쪽으로 이동하며, 일정 시간마다 새로운 장애물이 생성됩니다.
개발 환경
Visual Studio Code
프로젝트 결과
공룡은 스페이스바와 아래 방향키를 사용하여 점프하고, 머리를 숙일 수 있습니다. 게임 화면에는 공룡, 장애물, 그리고 땅이 표시되며, 오른쪽 상단에 현재 점수가 출력됩니다.
느낀 점
이번 프로젝트를 통해 게임 프로그래밍에 대한 이해가 깊어졌습니다. 처음에는 복잡해 보였던 충돌 검사, 점프 처리, 화면 갱신 등의 구현 과정이 점차 명확해졌고, 그 과정에서 많은 기술적 성장을 이루었습니다. 특히 구조체를 활용해 공룡과 장애물의 상태를 관리하는 방식과, 게임이 실시간으로 동작하도록 만드는 부분에서 큰 만족을 느꼈습니다. 최종적으로 게임이 정상적으로 동작하는 모습을 보며 큰 성취감을 느꼈으며, 이 경험은 향후 다른 프로젝트에도 많은 도움이 될 것입니다.