직접 만든 그래픽스 엔진으로 뿌려보자

 

폴리곤 완성~ 사각형 만들어서 회전시켜보기

 

 

 

 

큐브도 만들었다.

프로젝션 행렬을 적용해서 입체적으로 보이게 했다.

 

 

(게임은 아님)

숫자 패드의 번호를 입력하면 0번 숫자가 눌렀던 방향으로 움직인다.

 

4(오른쪽), 2(아래) 숫자 키를 눌러서 숫자 0이 2행2열로 감.

 

소스 코드

github.com/gkagm2/cpppractise/blob/master/cpptraining/ch1/Program/MoveCountInMatrix_MBCS_WBCS/MoveCountInMatrix_MBCS_WBCS.cpp

 

실행파일

github.com/gkagm2/cpppractise/blob/master/cpptraining/ch1/Program/MoveCountInMatrix_MBCS_WBCS/MoveCountInMatrix_MBCS_WBCS.exe

 

빙고게임 연습.

 

 

5번 빙고되면 승리 출력 후 종료

 

소스 코드

github.com/gkagm2/cpppractise/blob/master/cpptraining/ch1/Game/Binggo_MBCS_WBCS/Binggo_MBCS_WBCS.cpp

 

실행 파일

github.com/gkagm2/cpppractise/blob/master/cpptraining/ch1/Game/Binggo_MBCS_WBCS/Binggo_MBCS_WBCS.exe

 

#include <iostream>
#include <math.h>
using namespace std;

struct vec2 {
public:
	float x;
	float y;

	vec2() {

	}
	vec2(float x, float y) {
		this->x = x;
		this->y = y;
	}
};

//      (시작점)--------------------------------------->(끝점)

int main() {
	cin.tie(NULL);
	ios::sync_with_stdio(false);
	
	vec2 posStart(0,0);// 시작점
	vec2 posEnd(10,10);// 끝점

	vec2 arrow1(0, 0);// 화살표 1
	vec2 arrow2(0, 0);// 화살표 2

	float width = 1;  // 너비
	float length = 3; // 길이

	float distance = sqrtf(powf(posEnd.x - posStart.x, 2) + powf(posEnd.y - posStart.y, 2));
	cout << "distance : " << distance << '\n';

	//float th = atan2f(pend.x - pstart.x, pend.y - pstart.y) * (180 / 3.14f);
	float th = atan2f(posEnd.y - posStart.y, posEnd.x - posStart.x);
	cout << "th : " << th << '\n';

	arrow1.x = (distance - length) * cosf(th) - (width / 2.f) * sinf(th) + posStart.x;
	arrow1.y = (distance - length) * sinf(th) + (width / 2.f) * cosf(th) + posStart.y;

	arrow2.x = (distance - length) * cosf(th) + (width / 2.f) * sinf(th) + posStart.x;
	arrow2.y = (distance - length) * sinf(th) - (width / 2.f) * cosf(th) + posStart.y;

	cout << "arrow1 x : " << arrow1.x << ", y : " << arrow1.y << '\n';
	cout << "arrow2 x : " << arrow2.x << ", y : " << arrow2.y << '\n';

	return 0;
}

'게임 개발 > C++ console' 카테고리의 다른 글

배열 안에서 숫자 움직이기 (MBCS, WBCS 연습 겸)  (0) 2021.01.13
빙고게임2 (MBCS,WBCS 연습겸)  (0) 2021.01.13
미디 키보드 건반 프로그램  (0) 2020.01.14
마리오게임  (0) 2019.12.03
TextRPG  (0) 2019.11.12

뭔가 몬스터부분에서 잘못 건드림... 오류남. 고쳐야된다.

 

아래와 같이 맵을 구성한다. 3개의 맵을 만들었다.

시작 시 스테이지 선택 화면이 나온다. 스테이지를 선택하면 파일에서 불러와 맵을 세팅해준다.

 

숫자마다 의미함.

 

플레이어 위치로부터 렌더링 할 범위를 정해줘서 아래와 같이 나타나게 함.

V키를 누르면 맵을 한눈에 볼 수 있도록 함.

시작 지점과 목표지점이 있다. 

코인을 먹을 수 있다. 먹으면 스코어가 올라간다.

 

중력을 구현함. Space bar를 누르면 점프 한다.

블록 위로 점프하면 확률에 따라 아이템이 나온다.

왼쪽은 키커지는 아이템, 오른쪽은 총쏘는 아이템

아이템은 키커지는 아이템, 총쏘는 아이템이 있다.

키커지는 아이템을 먹을 경우

L 버튼을 누르면 총알이 발사된다. 일정거리 이상이 되면 총알을 할당 해제시켜서 사라지게 한다.

총쓰는 아이템을 먹을 경우

몬스터다. 닿으면 플레이어가 죽는다. 위 아래로 움직인다. 

닿으면 죽는다.

바닥으로 떨어져도 죽는다.

목적지에 도착하면 도착 메세지가 뜬 후 스테이지 선택 화면으로 돌아간다.

 

 

 

source : https://github.com/gkagm2/cpppractise/tree/master/cpptraining/ch1/Game/SuperMario

'게임 개발 > C++ console' 카테고리의 다른 글

2차원 좌표계에서 화살표를 그리기 위한 좌표 계산  (0) 2020.07.09
미디 키보드 건반 프로그램  (0) 2020.01.14
TextRPG  (0) 2019.11.12
미로찾기  (0) 2019.11.07
빙고 게임 (Player vs AI)  (0) 2019.10.30

-진행중-

 

Game

 

 

 

 

 

Monster tool

몬스터 툴 메인화면
추가할 몬스터의 난이도 선택
추가된, 불러온 몬스터 데이터 출력

 

 

Item tool

아이템 툴 메인화면
추가 시 아이템 종류 선택
추가 할 상점의 아이템 난이도 선택
아이템을 추가하는 장면
파일에서 불러온 상점 아이템 정보 출력

 

추가한 아이템 저장

 

 

 

소스코드

https://github.com/gkagm2/cpppractise/tree/master/cpptraining/ch1/Game/TextRPG

'게임 개발 > C++ console' 카테고리의 다른 글

미디 키보드 건반 프로그램  (0) 2020.01.14
마리오게임  (0) 2019.12.03
미로찾기  (0) 2019.11.07
빙고 게임 (Player vs AI)  (0) 2019.10.30
숫자 퍼즐 게임  (0) 2019.10.30

크아와 짬뽕된 미로찾기

 

 

 

 

소스코드

https://github.com/gkagm2/cpppractise/blob/master/cpptraining/ch1/Game/MazeGame.cpp

 

'게임 개발 > C++ console' 카테고리의 다른 글

마리오게임  (0) 2019.12.03
TextRPG  (0) 2019.11.12
빙고 게임 (Player vs AI)  (0) 2019.10.30
숫자 퍼즐 게임  (0) 2019.10.30
베이스볼 게임  (0) 2019.10.30

+ Recent posts