이 게임은 C++로 구현하여 만든 콘솔 기반 슈팅 게임입니다. 대학교 2학년 1학기에 과제를 통해 생애 처음으로 만든 실시간 기반의 게임입니다. 하나의 PC에서 로컬 2인 플레이를 지원하는 간단한 게임입니다.
📜 게임 소개
게임 이름 | 플랫폼 | 개발 기간 | 개발 도구 |
슈팅 게임 | ![]() |
2021.04 ~ 2021.05 | C++ (Console) |
📺 미리 보기

📒 기타 정보
· Github
GitHub - Bonnate/Cpp_Galaga_game: Galag Game
Galag Game. Contribute to Bonnate/Cpp_Galaga_game development by creating an account on GitHub.
github.com
- github 페이지에 프로젝트 리포지트리가 업로드 되어있습니다.
· 프로젝트에 대하여
- 처음으로 만들어본 실시간 기반의 게임으로, 유니티와 같은 게임 로직 등 Time.DeltaTime의 개념을 몰랐을 때 Console에서 Time.Sleep()을 이용하여 프레임마다 텍스트 배열에서 움직임을 구현하여 만든 게임입니다.
- 과제 요구사항에서 더욱 기능을 추가하여 적 객체간 충돌하여 겹치지 않는 알고리즘을 구현하여 적용하였습니다.
- 2인 플레이가 가능하도록 다중키 입력도 지원하여 원활한 플레이가 가능한것이 특징입니다.
void RunGame()
{
while (g_isContinue)
{
//GLIBALTIME
++GLOBALTIMEA;
if (GLOBALTIMEA > 100)
{
GLOBALTIMEA = 1;
if (GLOBALTIMEA_100x++ % 2)SpawnEnemy();
}
Sleep(1);
switch (MAX_PLAYERS)
{
case 1:
sprintf(Text, "%d %d %d %d %d", Player_P[0]->GetXPos(), Player_P[0]->GetYPos(), Player_P[0]->GetHP(), GLOBALTIMEA, GLOBALTIMEA_100x);
break;
case 2:
sprintf(Text, "%d %d %d %d %d %d %d", Player_P[0]->GetXPos(), Player_P[0]->GetYPos(), Player_P[0]->GetHP(), Player_P[1]->GetXPos(), Player_P[1]->GetYPos(), Player_P[1]->GetHP(), GLOBALTIMEA);
break;
}
drawToBackBuffer(81, 69, Text);
RunPlayer();
RunEnemy();
if (MAX_PLAYERS == 1) {
DisplayInfo(Player_P[0]->GetHP());
}
else {
DisplayInfo(Player_P[0]->GetHP(), Player_P[1]->GetHP());
}
render();
}
}
- While문 안에서 Sleep을 한 후 각 로직이 모두 호출되게하여 구현하였습니다.
'my portfolio' 카테고리의 다른 글
[유니티] Space Flight (0) | 2024.02.07 |
---|---|
[C++ WinAPI] 테트리스 (0) | 2023.09.24 |
[C++ WinAPI] 슈팅 게임 (1) | 2023.09.24 |
[C++ Console] 오목 게임 (0) | 2023.09.24 |
개인 프로젝트 Mate, 무료로 Steam에 출시! (0) | 2022.07.08 |
이 게임은 C++로 구현하여 만든 콘솔 기반 슈팅 게임입니다. 대학교 2학년 1학기에 과제를 통해 생애 처음으로 만든 실시간 기반의 게임입니다. 하나의 PC에서 로컬 2인 플레이를 지원하는 간단한 게임입니다.
📜 게임 소개
게임 이름 | 플랫폼 | 개발 기간 | 개발 도구 |
슈팅 게임 | ![]() |
2021.04 ~ 2021.05 | C++ (Console) |
📺 미리 보기

📒 기타 정보
· Github
GitHub - Bonnate/Cpp_Galaga_game: Galag Game
Galag Game. Contribute to Bonnate/Cpp_Galaga_game development by creating an account on GitHub.
github.com
- github 페이지에 프로젝트 리포지트리가 업로드 되어있습니다.
· 프로젝트에 대하여
- 처음으로 만들어본 실시간 기반의 게임으로, 유니티와 같은 게임 로직 등 Time.DeltaTime의 개념을 몰랐을 때 Console에서 Time.Sleep()을 이용하여 프레임마다 텍스트 배열에서 움직임을 구현하여 만든 게임입니다.
- 과제 요구사항에서 더욱 기능을 추가하여 적 객체간 충돌하여 겹치지 않는 알고리즘을 구현하여 적용하였습니다.
- 2인 플레이가 가능하도록 다중키 입력도 지원하여 원활한 플레이가 가능한것이 특징입니다.
void RunGame()
{
while (g_isContinue)
{
//GLIBALTIME
++GLOBALTIMEA;
if (GLOBALTIMEA > 100)
{
GLOBALTIMEA = 1;
if (GLOBALTIMEA_100x++ % 2)SpawnEnemy();
}
Sleep(1);
switch (MAX_PLAYERS)
{
case 1:
sprintf(Text, "%d %d %d %d %d", Player_P[0]->GetXPos(), Player_P[0]->GetYPos(), Player_P[0]->GetHP(), GLOBALTIMEA, GLOBALTIMEA_100x);
break;
case 2:
sprintf(Text, "%d %d %d %d %d %d %d", Player_P[0]->GetXPos(), Player_P[0]->GetYPos(), Player_P[0]->GetHP(), Player_P[1]->GetXPos(), Player_P[1]->GetYPos(), Player_P[1]->GetHP(), GLOBALTIMEA);
break;
}
drawToBackBuffer(81, 69, Text);
RunPlayer();
RunEnemy();
if (MAX_PLAYERS == 1) {
DisplayInfo(Player_P[0]->GetHP());
}
else {
DisplayInfo(Player_P[0]->GetHP(), Player_P[1]->GetHP());
}
render();
}
}
- While문 안에서 Sleep을 한 후 각 로직이 모두 호출되게하여 구현하였습니다.
'my portfolio' 카테고리의 다른 글
[유니티] Space Flight (0) | 2024.02.07 |
---|---|
[C++ WinAPI] 테트리스 (0) | 2023.09.24 |
[C++ WinAPI] 슈팅 게임 (1) | 2023.09.24 |
[C++ Console] 오목 게임 (0) | 2023.09.24 |
개인 프로젝트 Mate, 무료로 Steam에 출시! (0) | 2022.07.08 |