C,C++로 만드는 간단한 프로젝트/별 피하기 게임 만들기
-
4. 별(star)을 구성 & 아래로 이동 & 충돌체크 만들기C,C++로 만드는 간단한 프로젝트/별 피하기 게임 만들기 2020. 12. 26. 22:29
별에 대한 정보를 다음과 같이 구성한다. 별은 여러 개로 정의하므로 배열로 선언한다. 그리고 구조체 변수 LiveFlag는 1과 0의 값을 갖는데, 1이면 별이 생성됨을 의미한다. 1인 경우에만 별을 아래로 이동시키면서 렌더를 한다. 만약 별이 맨 아래로 이동한 경우에는 LiveFlag를 0으로 설정을 하고 렌더를 하지 않는다. 별들의 정보를 초기화하는 부분을 작성해보자. 이는 InitObject함수에서 한다. 별을 렌더하는 함수를 만들어 보자. 함수의 이름은 DrawStar라고 하자. 이 함수는 Draw함수에서 호출되면 된다. 아래는 Draw함수로 DrawStar함수를 호출한다. 그리고 별이 움직이는 함수를 만들어 보자. 별들은 움직임이 아래로만 움직인다. 함수의 이름은 StarAction이라 한다. ..
-
3. 플레이어를 움직이고 맵 밖으로 이동을 막기C,C++로 만드는 간단한 프로젝트/별 피하기 게임 만들기 2020. 12. 26. 19:15
플레이어를 움직이는 함수를 PlayerAction라고 한다. 네 방향키 입력에 따라 플레이어를 움직이면 된다. 여기서 콘솔화면의 좌표는 좌측상단이 원점이고 오른쪽으로 이동하면 x값이 커지고 아래로 이동하면 y값이 커진다. 즉, 아래쪽으로 이동하면 y좌표값은 커지도록 하면 된다. 함수의 호출은 이동하고 그리는 것이 적절해 보인다. 아래는 PlayerAction함수의 호출부분이다. 호출은 main함수에서 호출된다. 그리고 Sleep함수를 호출해서 너무 빨리 움직이지 않도록 한다. Sleep함수를 사용하기 위해서는 를 포함시켜줘야 한다. 그리고 실행을 해보자. 방향키에 따라 플레이어가 아주 잘 이동한다. 불만이 사항이 있다. 플레이어를 맵을 벗어나지 않도록 제어를 해보자. Block이라는 함수를 통해 이를 제..
-
2. 플레이어 구성 & 플레이어를 렌더하기C,C++로 만드는 간단한 프로젝트/별 피하기 게임 만들기 2020. 12. 26. 18:34
플레이어는 구조체로 정의를 하자. 그리고, 플레이어를 그리는 함수를 하나 만든다. 여기서 플레이어를 그리는 의미는 이차원 배열에 플레이어를 저장한다는 의미이다. 함수의 이름은 DrawPlayer 라고 한다. DrawPlayer 함수는 Draw함수에서 호출되면 된다. 그리고, 플레이어 및 여러 오브젝트들의 정보를 초기화 시켜주는 함수를 만들자. 이 부분에는 플레이어의 위치를 정해주도록 한다. InitObject 함수는 main함수에서 호출을 하고 플레이어를 Draw해보자. main함수에서 다음과 같이 호출하면 된다. 그리고 나서 실행해보자. 실행하면 아래와 같이 플레이어가 렌더가 되는 것을 볼 수 있다. 아래는 프로그램 소스 파일
-
1. 콘솔화면 구성 & 그리는 함수 만들기C,C++로 만드는 간단한 프로젝트/별 피하기 게임 만들기 2020. 12. 26. 18:06
우리가 만들 게임이다. 콘솔화면 창을 구현할 때 API 함수들을 이용해야 한다. 그리고 콘솔 창에서 좌측상단이 원점이다. 우리가 알고 있는 좌표계와 조금 다르다. 이 점을 반드시 유의해야 한다. 위의 내용을 만들었으면, main함수에서 위의 함수들을 호출해서 동작이 제대로 되는지 확인하자. 위의 메인함수를 호출하면 다음과 같다. ( 10, 10 ) 의 위치에 HI가 출력된다. 그리고, 위의 메인함수에서 주석을 제거해보자. 그러면 아래와 같이 된다. 그리고, 그리는 함수( Draw함수 )를 만들어 보자. 만들기 전에, 아래와 같이 이차원 배열을 하나 선언한다. ( 전역 변수로 선언 ) 위의 이차원 배열의 용도는 나중에 플레이어와 별 등,..