픽셀 게임을 최근에 재밌게 즐겨서
스타듀밸리같은 게임은 어떤 엔진이나 툴로 만들었을까
궁금해서 찾아보았다.
🎮 스타듀밸리 개발 배경 요약
- 개발자: Eric Barone (ConcernedApe) 1인 개발
- 언어: C#
- 엔진/프레임워크: Microsoft XNA 4.0
- 지원 플랫폼: Windows → 이후 콘솔, 모바일, macOS, Linux 등으로 확장
🧱 Microsoft XNA Framework ?
- 마이크로소프트에서 만든 C# 기반 게임 프레임워크
- Xbox 360과 Windows용 게임을 쉽게 만들도록 지원
- 2013년 이후 공식 지원 중단됨 (하지만 여전히 많은 인디 개발자들이 사용함)
📦 지금 스타듀밸리는 XNA를 대체한 MonoGame으로 포팅
- MonoGame은 XNA의 오픈소스 버전으로, 여러 플랫폼을 지원함 (Windows, macOS, Linux, Android, iOS 등)
- Eric Barone도 스타듀밸리 이식 버전(특히 macOS/Linux/모바일)을 만들 때 MonoGame으로 옮김
🔧 관련 기술 요약
프로그래밍 언어 | C# |
엔진/프레임워크 | XNA → MonoGame |
리소스 포맷 | .xnb (XNA에서 사용하는 바이너리 리소스 포맷) |
2D 그래픽 | 타일 기반, 스프라이트 시트 방식 |
사운드 | .wav, .ogg 등 |
🧱 MonoGame의 특징
🧑💻 사용 언어 | C# |
🧱 구조 | 클래식한 게임 루프 구조 (Update → Draw 반복) |
🎯 지원 플랫폼 | Windows, macOS, Linux, Android, iOS, Xbox, PlayStation, Switch 등 |
🎨 2D/3D 지원 | 둘 다 지원! (스타듀밸리는 2D) |
🚀 성능 | 네이티브에 가까운 퍼포먼스 |
🛠 리소스 | .png, .ogg, .wav, .json 등 다양하게 사용 가능 |
💡 주요 사용 게임 | 스타듀밸리, FEZ, Axiom Verge 등 |
공식 사이트 : https://monogame.net/
MonoGame | MonoGame
Source Code The MonoGame Framework is completely free and open-source. All source code is available to you. You can view the source code on GitHub, clone it and/or create a fork. Click to view source Code
monogame.net
설치 방법 : Visual Studio 확장으로 설치 가능하다.
설치완료 - ! 언제든 해봐야겠다.

기본 게임 루프 구조
Unity에서 C# 구조랑 꽤 비슷하구나..
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
protected override void Update(GameTime gameTime)
{
// 게임 상태 업데이트 (입력 처리, 이동, 충돌 등)
base.Update(gameTime);
}
protected override void Draw(GameTime gameTime)
{
GraphicsDevice.Clear(Color.CornflowerBlue);
spriteBatch.Begin();
// 스프라이트 그리기
spriteBatch.End();
base.Draw(gameTime);
}
|
cs |
그런데 내가 비슷하게 2D 게임 프레임워크로 알고있는 Cocos2d-x가 있다.
Cocos2d는 모바일게임 쪽에서 주로 많이 쓰이는데,
포코팡이라던가 클래시 오브 킹즈 같은 게임이
Cocos로 만들어졌다고 알고있다.
아래와같은 가벼운 모바일 게임들을
만드는데에 강점이다.
퍼즐 게임
소셜/시뮬레이션 게임
2D 러너/플랫포머
카드/보드 게임
모바일 UI 기반 캐주얼 게임
근데 다시 찾아보니 Cocos2d-x 뿐 아니라
Cocos Creator라는 것도 있다?
음.. 찾아보자.
🧩 둘의 관계 먼저 요약하면…
- Cocos2d는 프로그래머 중심의 전통적인 2D 게임 프레임워크
- Cocos Creator는 Unity 스타일의 GUI 기반 종합 개발툴
- 둘 다 Cocos 엔진 팀에서 만들었고, 내부적으로는 비슷한 렌더링 기술을 공유한다
🎮 차이점 정리
Cocos2d | Cocos2d-xCocos Creator | |
💻 개발 방식 | 코드 중심 (C++/Lua/JS) | GUI + 코드 혼합 (TypeScript/JavaScript) |
🎨 UI/에디터 | 없음 (코드로만 구성) | 있음 (씬 편집기, 애니메이션 툴 등 포함) |
📦 리소스 처리 | 수동 등록 | 드래그 앤 드롭, 자동 등록 |
⏱ 진입 난이도 | 조금 어려움 (프로그래머 스타일) | 쉬움 (Unity처럼 씬 기반) |
🌍 주요 플랫폼 | Android/iOS/PC 등 | Android/iOS/Web/PC 등 |
📚 문서와 학습자료 | 많지만 코드 위주 | 에디터 기반 튜토리얼 많음 |
👤 사용자층 | 개발자 위주 | 디자이너 + 개발자 협업 구조 |
🎯 언제 어떤 걸 써야 할까?
"코드를 직접 치며 로직부터 짜는 게 좋다!" | 👉 Cocos2d-x |
"씬 기반 에디터 + 빠른 UI 작업하고 싶다!" | 👉 Cocos Creator |
"Unity처럼 만들고 싶은데, 가볍고 모바일 최적화된 걸 원한다" | 👉 Cocos Creator |
"성능 최우선, 완전 커스텀 하고 싶다" | 👉 Cocos2d-x (C++) |
🤔 요약
Cocos2d-x는 "코딩 중심 게임 엔진",
Cocos Creator는 "Unity 스타일의 시각적 게임 에디터"
그럼 여기서, 기존에 알고있던 Cocos2d-x랑은 무슨차이가 있을까? 어떻게 다른걸까?
MonoGame은 C++ 엔진 느낌의 고전파 개발 스타일,
Cocos2d는 스크립팅 + 구조화된 프레임워크 느낌의 효율성 추구 스타일
MonoGame | Cocos2d-x (또는 Cocos Creator) | |
언어 | C# | C++, Lua, JavaScript (또는 TypeScript in Cocos Creator) |
구조 | 직접 루프 구성 (Update, Draw 등) | Scene, Node, Component 구조 |
플랫폼 | Windows/macOS/Linux 등 (네이티브 위주) | 멀티플랫폼 (모바일/웹/PC 등) |
그래픽 | 픽셀 기반 2D/3D 모두 직접 처리 | UI와 2D 게임에 최적화된 구조 |
툴 | IDE 위주 (Visual Studio 등) | Cocos Creator는 GUI 에디터 제공 |
학습 난이도 | 조금 하드코어 (코딩 중심) | 비교적 진입 쉬움 (특히 Creator) |
유명 게임 | Stardew Valley, FEZ 등 | 포코팡, 클래시 오브 킹즈 등 |
- MonoGame:
- C#으로 직접 구조를 짜고, 루프를 컨트롤하고 싶은 사람에게 딱.
- Unity 없이도 정교한 2D 게임을 만들고 싶은 C# 유저에게 최적.
- 스타듀밸리 스타일의 정통파 모작 연습용으로는 적합!
- Cocos2d:
- 2D UI/애니메이션 기반 게임을 빠르게 만들고 싶은 사람에게 좋아요.
- 특히 모바일 게임이나 카툰 스타일 게임에 강점.
- Cocos Creator를 쓰면 에디터도 있어서 Unity 비슷하게 만들 수 있음!
- Unity 유경험자 + C# 가능 → MonoGame 추천
- 모바일 게임 UI 위주로 연습하고 싶다 → Cocos Creator 추천
- 웹 기반 게임에도 관심 있음 → Cocos2d-JS/Creator 쪽도 괜찮음
2D 게임 개발하는데에
많은 도구나 프레임워크들이 있겠지만
유명한 게임을 만들어낸
두가지 프레임워크를 찾아보고 비교해봤다.
더 자세히 보고 싶을때를 위해
공식사이트랑 문서링크들도 정리해 놓는다.
🎮 MonoGame
🌐 공식 홈페이지 | https://www.monogame.net/ |
📚 공식 문서 | https://docs.monogame.net/ |
🛠 설치 가이드 | https://docs.monogame.net/articles/getting_started/0_getting_started.html |
🧑💻 GitHub 저장소 | https://github.com/MonoGame/MonoGame |
🎓 튜토리얼 (비공식) | https://rbwhitaker.wikidot.com/monogame-tutorials |
📹 YouTube 검색 | MonoGame Tutorial |
📘 Cocos Creator
- 공식 홈페이지: https://www.cocos.com/en/creator
- 공식 문서 (영문): https://docs.cocos.com/creator/
- 공식 문서 (한국어 일부 번역 있음): https://docs.cocos.com/creator/manual/ko/
- GitHub 예제 모음: https://github.com/cocos
🧑💻 Cocos2d-x
- 공식 사이트: https://www.cocos.com/en/cocos2d-x
- 공식 문서: https://docs.cocos2d-x.org/
- GitHub 저장소: https://github.com/cocos2d/cocos2d-x
- 설치 가이드: https://docs.cocos2d-x.org/cocos2d-x/v3/en/installation/
'NOTE > IT Information' 카테고리의 다른 글
[Window] 윈도우 사용자 계정명, 계정 폴더한글->영어로 바꾸기 (0) | 2025.04.28 |
---|---|
[Mac] 맥북 크롬 화면 스크롤 전체 스크린 캡쳐 (0) | 2024.05.10 |
[SlideShare] 쿠키런 1년, 서버개발 분투기 (0) | 2017.03.27 |
[SlideShare] Cloud Bread (0) | 2017.03.27 |
[Overwatch] 호환되는 그래픽 카드를 찾을 수 없습니다. (1) | 2016.11.28 |