첫 게임으로 2D를 고르는 사람이 많습니다. 좌표가 단순하고 필요한 그래픽 양도 적어서 게임 규칙을 만드는 데 집중할 수 있기 때문입니다. 이 글은 작은 2D 슈팅 게임이나 플랫포머를 예로 들어, 빈 프로젝트에서 실행 파일까지 가는 순서를 정리합니다.
1단계: 한 장짜리 기획 정리
코드를 쓰기 전에 무엇을 만들지 한 장에 적습니다. 플레이어가 무엇을 조작하는지, 무엇을 하면 이기고 지는지, 화면은 몇 개인지만 정리해도 충분합니다. 첫 게임은 시작 화면, 게임 화면, 결과 화면 세 개 정도로 범위를 좁히는 것이 완성 확률을 높입니다.
- 조작: 방향키 이동, 스페이스바 발사
- 승리·패배: 체력이 0이 되면 게임오버, 점수를 기록
- 화면: 타이틀, 플레이, 결과
넣고 싶은 기능이 많더라도 반드시 필요한 것과 있으면 좋은 것을 나눠 적어 두세요. 반드시 필요한 것만으로 먼저 완성하고, 시간이 남을 때 나머지를 하나씩 더하면 됩니다. 보스전, 상점, 저장 기능처럼 손이 많이 가는 요소는 두 번째 버전으로 미루는 편이 안전합니다.
2단계: 프로젝트와 스프라이트 준비
2D 템플릿으로 프로젝트를 만들고 이미지 파일을 Project 창에 넣습니다. 2D 게임에서 쓰는 이미지를 스프라이트(Sprite)라고 부릅니다. 캐릭터 동작처럼 여러 장이 한 파일에 들어 있다면 스프라이트 에디터에서 잘라 나눕니다.
직접 그린 그림이 없다면 무료 에셋을 써도 됩니다. 처음에는 네모와 동그라미만으로 게임을 완성한 뒤 그림을 나중에 바꾸는 것도 좋은 방법입니다. 그래픽 때문에 개발이 멈추는 일을 막을 수 있습니다.
유니티(Unity) 2D 게임 만들기 순서 혼자 배우다 막혔다면, 수업으로 체계적으로과정 상담 → 3단계: 움직임과 2D 물리
플레이어 오브젝트에 스크립트를 붙여 입력에 따라 움직이게 합니다. 중력이나 충돌이 필요하면 Rigidbody2D와 Collider2D 컴포넌트를 붙입니다. 2D 게임에서는 3D용 Rigidbody가 아니라 이름 끝에 2D가 붙은 컴포넌트를 써야 서로 반응합니다.
플랫포머라면 타일맵(Tilemap) 기능으로 바닥과 벽을 칸 단위로 빠르게 그릴 수 있습니다. 슈팅 게임이라면 배경 이미지를 계속 아래로 흘려 보내는 스크롤을 넣으면 앞으로 나아가는 느낌이 납니다.
조작감은 이 단계에서 많이 다듬어야 합니다. 이동 속도, 점프 높이, 떨어지는 속도 같은 값을 인스펙터에 노출해 두고 직접 플레이하면서 조금씩 바꿔 보세요. 숫자 몇 개만 바꿔도 게임의 느낌이 크게 달라집니다. 카메라가 플레이어를 부드럽게 따라가게 하려면 시네머신(Cinemachine) 패키지를 쓰는 방법도 있습니다.
4단계: 적, 총알, 충돌 규칙
총알과 적은 프리팹으로 만들어 필요할 때 복제합니다. 충돌하면 체력을 깎고, 체력이 0이 되면 오브젝트를 없애고 점수를 올리는 규칙을 스크립트로 작성합니다. 레이어(Layer)와 태그(Tag)를 정해 두면 플레이어 총알이 플레이어 자신과 부딪히는 문제를 쉽게 막을 수 있습니다.
총알처럼 많이 생기고 사라지는 오브젝트는 매번 새로 만들고 지우면 성능이 떨어집니다. 미리 여러 개 만들어 두고 껐다 켜서 재사용하는 오브젝트 풀(Object Pool) 방식을 익혀 두면 좋습니다.
5단계: UI, 씬 전환, 빌드
- Canvas 위에 점수, 체력, 버튼 같은 UI를 배치합니다.
- 타이틀, 플레이, 결과 화면을 각각 씬으로 만들고 버튼을 누르면 다음 씬으로 넘어가게 합니다.
- Build Settings에 씬을 순서대로 등록합니다. 등록하지 않은 씬은 빌드에 포함되지 않습니다.
- PC 또는 안드로이드로 빌드해 다른 사람에게 플레이를 부탁하고 의견을 받습니다.
다른 사람이 처음 해 볼 때 어디서 헤매는지 지켜보면 고칠 점이 분명하게 보입니다. 이 피드백 반영 과정까지 기록해 두면 포트폴리오에서 좋은 이야깃거리가 됩니다.
수업에서는 어떻게 다루나
SBS아카데미게임학원 유니티3D(Unity) 과정의 2D 초급 단계는 2D 슈팅 게임 기획부터 스프라이트 출력, 배경 스크롤, 미사일 발사, 오브젝트 풀, 적 생성까지 이 글과 비슷한 순서로 진행됩니다.
자주 묻는 질문
첫 2D 게임은 얼마나 작게 만들어야 하나요?
한 스테이지와 한 종류의 적만으로도 충분합니다. 작게 완성한 뒤 기능을 늘리는 편이 크게 시작해 멈추는 것보다 훨씬 많이 배웁니다.
2D 게임도 포트폴리오가 되나요?
됩니다. 그래픽보다는 조작감, 코드 구조, 문제 해결 과정이 평가에 중요하므로 2D 게임으로도 충분히 실력을 보여 줄 수 있습니다.
2D 슈팅 게임을 기획부터 적 생성, 오브젝트 풀까지 직접 만드는 2D 초급 단계가 포함되어 있습니다.
게임프로그래밍학과전 세계적으로 가장 널리 사용되는 실시간 개발 플랫폼 Unity(유니티)를 활용해 2D·3D 게임부터 인터랙티브 콘텐츠, 메타버스, AR/VR까지 다양한 디지털 콘텐츠를 직접 기획하고 제작하는 실무 중심 프로그램입니다.
강의정원 10명 내외강의시간 2시간 내외교육난이도 Lv.1~5수업 요일·횟수 월수금, 화목금, 격일, 매일
수업 진행 순서C언어 기초 → C# 게임 로직 → Unity 기능 실습(UI·물리 효과·애니메이션·씬 관리) → 개인·팀 프로젝트 → 포트폴리오 / 단위 수업: 이론·개념 설명 및 강사 시연 → 단계별 개인·팀 실습 및 과제 제작 → 1:1 강사 피드백 및 수정 보완
실습 내용C언어로 코드를 직접 작성해 보고, Unity에서 C# 스크립트로 게임 규칙과 동작을 구현합니다. 물리 효과, UI 연결, 애니메이션 제어를 넣어 보고, 게임 오브젝트와 씬을 구성해 하나의 게임으로 엮어 봅니다.
강사 피드백 방식10명 내외 소수 정원 수업으로 진행하며, 실무 강사진이 수강생의 실습 과제·작품·기획서를 1:1로 확인하고 수정·보완 방향을 직접 피드백합니다.
- 유니티 초급유니티의 구조와 이해 · 유니티 인터페이스 · 객체 생성 및 컴포넌트 · Scene 구성과 카메라 · Asset의 활용과 객체 이동 · 키보드 입출력 제어 · 물리와 충돌의 이해 · Animation 컨트롤 · 프리팹(Prefab)의 이해와 사용 · Layer와 Tag의 활용 · NGUI와 터치 인터페이스 · 마우스 및 터치 컨트롤 · Scene 제어 및 Popup 제어 · Joint와 2D 물리 · Raycasting과 Picking · 가상 키패드의 제작 · Angry Bird 예제 따라하기 · PC와 모바일 빌드 해보기
- 유니티 2D 초급2D 슈팅 게임 프로그래밍 기획 설계 · Scene의 구성과 이동 · 2D Sprite의 출력 · 주인공 출력과 이동 · 배경의 출력과 스크롤 · 2D 물리의 이해와 구현 · 미사일 발사 구현 · 미사일 관리 · 오브젝트 풀(Pool)의 사용 · 적의 생성과 Animator의 활용 · 컨디션 설정으로 상태 변화 · 여러 종류의 적 생성 · 이펙트와 사운드 · 적의 죽음 처리 · 코루틴의 이해(Coroutine) · 매니저를 이용한 적의 관리 · 플레이어의 죽음 처리 · 타이틀, 로비 , 환경설정, 결과화면 처리
- 유니티 3D 초급Scene의 구성과 Light · 버텍스(Vertex), 폴리곤, Mesh의 이해 · 텍스쳐(Texture)와 쉐이더(Shader)의 이해 · 3D 공간에서 오브젝트의 이동 · 카메라의 회전과 이동 · Rigidbody를 이용한 물리와 충돌처리 · 본과 리깅의 이해 · Animation(Legacy)의 활용 · Animation(Mecanim)의 활용 · Animation의 제어 및 모션연결 · Animation Event기능과 공격판정 · 엑셀 데이터를 통한 Effect 제어 · 마우스를 이용한 캐릭터 제어 · NavMesh를 이용한 길찾기 · NavAgent 기능을 활용한 AI · Lighting Map · 3D 최적화 방법
- 유니티 3D 중급3D 액션 RPG · Scene의 구성과 이동 · 3D 카메라 컨트롤 · 키보드와 가상 키패드로 캐릭터 이동 · Character Controller의 사용 · 적 리소스 추가 및 Spawn 기능 구현 · 무기의 교체 및 애니메이션 · 충돌 처리 및 파티클 생성 · 주인공 점프, 회피, 스킬 등 기능 구현 · 적의 AI 설계 및 FSM의 이해 · 적의 유한상태기계(FSM)의 구현 · 적을 관리하는 매니저 구현 · 적과 주인공의 피격처리 · 점수처리와 PlayerPerfs에 저장 · 보스 몬스터의 구현 · HUD를 통한 UI 구성 · Item과 버프 기능 구현
- 유니티 3D 고급 과정 포트폴리오제작 or 1인게임개발제작게임 구상 및 컨셉 기획 · 리소스 수집 · 기본 기능 테스트 및 R&D · 목표 설정 및 일정 관리 · 플레이어 컨트롤 · 레벨 디자인 및 테이블 작업 · 각종 이펙트 및 사운드 적용 · 플레이 데이터 저장 · 타이틀, 로비, 결과화면 등 UI 작업 · 랭킹 , 도전과제 등 구글 API 적용 · PC 및 모바일 빌드 & QA · 백엔드 서버(Parse) DB연동 작업 · 소셜 네트워크 연동 작업
수료 후 결과물 — 수료 결과물(Unity로 만든 개인·팀 프로젝트 포트폴리오), C언어 기초 문법 실습, C# 게임 로직 구현, UI·물리 효과·애니메이션 기능 실습
이어지는 진로 — Unity 게임 개발자, 인터랙티브 콘텐츠 개발, 메타버스·AR/VR 콘텐츠 개발
유니티3D(Unity) 과정 자세히 보기 →