본문 바로가기
모작 & 창작

[창작] 1주 프로젝트 "우주인 찾기 게임"

by MY블로그 2023. 1. 7.

C++ / API / DX11 기초를 배우면서 일주일간 그동안의 수업으로 배운것들을 이용하여 게임을 만드는 과제이다.

사용된 이미지들은 인터넷 검색으로 무료사용 가능한 이미지들을 찾아사용하였다.

 

플레이어(우주선)이 장애물을 쏴서 장애물의 크기를 줄인뒤 길을 만들어

맵상의 어딘가 랜덤하게 위치한 우주인의 위치까지 간다면 게임이 클리어 된다.

플레이어의 HP는 4 이고 장애물에 닿을때마다 체력이 -1씩 깍여나가며 체력이 0이 될 경우 실패한다.

플레이어의 체력이 적어질 수록 플레이어가 진동하는 느낌을 주었고

마찬가지로 장애물또한 플레이어의 투사체 발사에 맞아 충돌하게 된다면 장애물의 크기가 일정씩 줄어든다.

어느정도 크기가 줄어든 장애물은 진동하는 느낌으로 움직인다.

장애물의 위치가 랜덤하게 생성되기 때문에

간혹 우주인과의 좌표가 겹쳐져 게임클리어가 되지 않을 때 까 있었는데

진동하듯 좌표랜덤 이동하는 느낌을 넣고나니 장애물이 우주인 좌표와 겹치더라도

장애물의 크기를 줄여 진동시켜 이동하게 만든뒤 클리어가 가능해 졌다.

 

초보적인 기능만으로 구현하여 아쉽지만 재미있었다.

 

구현 실패한 기능

- 투사체가 장애물에 충돌후 일정 횟수 진동하듯 움직이다 멈추는 기능 구현 실패

- 플레이어의 체력 회복을 위한 아이템 추가 실패 

(아이템 추가 및 회복기능 구현은 하였으나 복수체 생성한뒤 오류때문에 포기하였다)

-재시작 기능 구현 실패

 

 

기능 수정

1. 투사체의 형태를 행성모양에서 번개모양으로 변경

2. 플레이어 체력에 따라 체력칸의 색상 변경

3. 장애물에 투사체가 충돌하면 사이즈가 줄어들면서 색상도 변경됨.

4. 배경이 깜깜하기때문에 장애물이 작거나 어두울수록 보이지 않아서 일정크기 이하에서 깜빡이듯보이게함(랜덤생상)

5. 클리어 혹은 클리어실패시 출력되는 이미지 수정

7. 콘솔창 상태 출력 문자 추가

 

기능 추가 실패

일정크기이하로 줄어든 장애물의 갯수가 어느정도 늘어나면 전체 장애물을 삭제하고

보스 느낌의 큰 장애물 생성하기 실패. 

보스는 출력위치고정 ok, 보스가 출현하고있는동안 우주인 업데이트 출력을 off 상태로 하고

보스 사망시 다시 우주인상태 업데이트 및 출력 on 으로 하기 실패.

 

 

댓글