0%
2026 Edition

Unity 완벽 교과서

기획부터 출시까지 — Unity 6 · C# · PhiMir Tools · GitHub

9Parts
23Chapters
2026Latest
시작하기 →
01

Unity 기초

1Unity란 무엇인가

Unity는 전 세계 개발자의 32%가 사용하는 실시간 3D/2D 게임 엔진으로, 인디 게임부터 AAA 타이틀, 건축 시각화, VR/AR 콘텐츠까지 폭넓게 활용됩니다. 2026년 글로벌 게임 엔진 시장은 USD 11.04억 규모로 성장이 예상되며, Unity는 그 중심에 있습니다.

Unity는 C# 스크립팅을 기반으로 하며, 모바일, PC, 콘솔, 웹, XR 등 다양한 플랫폼에 한 번에 배포할 수 있는 크로스 플랫폼 엔진입니다.

🔥 Unity 6 주요 변화 (2026년 최신)
  • URP 중심 전략 — 모든 플랫폼에서 고성능 그래픽스 지원
  • Built-In RP 디프리케이션 — Unity 6.5부터 공식 시작
  • HDRP 유지보수 모드 + Nintendo Switch 2 지원 추가
  • ECS 코어 통합 — Unity 6.4부터 에디터에 내장
  • Project Auditor 내장 — 성능 분석 간편화
  • AI 에디터 워크플로우 — Project-aware context, 성능 인사이트

2개발 환경 세팅

Unity Hub 설치 및 프로젝트 생성

  1. Unity Hub 다운로드 및 설치 (unity.com)
  2. Unity Editor 버전 선택 — Unity 6 LTS 권장
  3. 프로젝트 생성 시 템플릿 선택 (3D Core, 2D, URP 등)
  4. Visual Studio 또는 VS Code + C# 확장 설치

필수 패키지

패키지명용도설치 방법
Cinemachine카메라 시스템Package Manager
Input System새로운 입력 처리Package Manager
ProBuilder레벨 프로토타이핑Package Manager
TextMeshPro고품질 UI 텍스트Package Manager
Addressables에셋 관리/로딩Package Manager
Universal RP렌더 파이프라인Template 포함

프로젝트 설정 필수 체크리스트

02

C# 스크립팅

3C# 기초 문법

Unity의 모든 게임플레이 로직은 C# 스크립트로 작성됩니다. MonoBehaviour를 상속받는 클래스를 만들고, 이를 GameObject에 Component로 붙이는 것이 기본 워크플로우입니다.

핵심 개념

📦
변수와 데이터 타입

int, float, string, bool, Vector3, Quaternion

🔐
접근 제어자

public (인스펙터 노출), private, [SerializeField]

🔄
제어문

if/else, switch, for, foreach, while

⚙️
OOP

상속, 다형성, 인터페이스, 추상 클래스

📋
컬렉션

List<T>, Dictionary<K,V>, Queue<T>

⏱️
코루틴 & async

IEnumerator, yield return, UniTask

Unity 라이프사이클 메서드

메서드호출 시점용도
Awake()스크립트 최초 로드 시초기화, 컴포넌트 참조
Start()첫 프레임 전게임 로직 초기화
Update()매 프레임입력 처리, 게임 로직
FixedUpdate()물리 스텝마다물리 연산, Rigidbody
LateUpdate()Update 후카메라 추적, 후처리
OnEnable/Disable()활성화/비활성화이벤트 구독/해제
OnDestroy()오브젝트 파괴리소스 정리

필수 API

// Transform
transform.position = new Vector3(0, 1, 0);
transform.Translate(Vector3.forward * speed * Time.deltaTime);

// Rigidbody
rb.AddForce(Vector3.up * jumpForce, ForceMode.Impulse);

// 컴포넌트 접근
var col = GetComponent<Collider>();

// 인스턴스 생성/파괴
GameObject obj = Instantiate(prefab, pos, rot);
Destroy(obj, 2f); // 2초 후 파괴

// 씬 전환
SceneManager.LoadScene("GameScene");

4고급 C# 패턴

디자인 패턴

🎯 Singleton

전역 매니저 (오디오, 게임 상태)

👁️ Observer

이벤트 기반 통신 (C# event, UnityEvent)

🤖 State Machine

캐릭터 AI, 애니메이션 상태 관리

♻️ Object Pool

성능 최적화를 위한 객체 재사용

🎮 Command

입력 시스템, Undo/Redo

💾 ScriptableObject

데이터 컨테이너, 설정값 분리

SOLID 원칙과 Unity

  • S — 한 스크립트는 하나의 책임만 (PlayerMovement, PlayerHealth 분리)
  • O — ScriptableObject로 확장에 열린 설계
  • L — 인터페이스 기반 프로그래밍 (IDamageable, IInteractable)
  • I — 인터페이스 분리로 불필요한 의존성 제거
  • D — Dependency Injection, Service Locator 패턴
03

Unity 핵심 시스템

5씬 및 레벨 디자인

Scene 구조

Scene (레벨/화면)
GameObject
Transform
Renderer
Collider
Script
Prefab (재사용 템플릿)

레벨 프로토타이핑 도구

  • ProBuilder — 12개 기본 도형, 정점/엣지/면 편집, UV 언래핑
  • ProGrids — 시각적 스냅 그리드
  • Polybrush — 텍스처 블렌딩, 메쉬 스컬핑 (베타)
  • Terrain — 대규모 지형 생성 및 페인팅

6물리 시스템

  • Rigidbody / Rigidbody2D — 물리 시뮬레이션 핵심
  • Collider — Box, Sphere, Capsule, Mesh + isTrigger 옵션
  • Physics Material — 마찰, 탄성 설정
  • Raycast — 광선 기반 충돌 감지
  • Joint — Hinge, Spring, Fixed, Configurable
  • Layer 기반 충돌 필터링

7애니메이션 시스템

  • Mecanim — Animator Controller, Animation State Machine
  • Blend Tree — 움직임/달리기 자연스러운 전환
  • Animation Event — 특정 프레임에 함수 호출
  • Animation Rigging — 런타임 IK/FK 제어
  • Timeline — 시네마틱 연출, 컷씬 기획

8UI 시스템

항목UGUI (uGUI)UI Toolkit
상태레거시, 라이브 게임에서 안정적신규 프로젝트 권장
접근 방식GameObject 기반USS/UXML (HTML/CSS 유사)
활용런타임 UI에디터 UI + 런타임 UI
추천기존 프로젝트 유지보수신규 개발
📌 2026년 방향

UI Toolkit 채택 확대, UGUI는 안정성 중심 유지보수

9입력 시스템

  • New Input System — 플랫폼별 추상화된 입력 처리
  • Input Actions — 액션 맵, 컨트롤 스킴
  • PlayerInput 컴포넌트 — 자동 입력 바인딩
  • Touch System — 모바일 터치 입력, 제스처
  • Gamepad / Keyboard / Mouse 통합 처리
04

그래픽스 및 렌더링

10렌더 파이프라인

2026년 렌더 파이프라인 전략

파이프라인상태대상
URP핵심 투자모바일 ~ 콘솔 전 플랫폼
HDRP유지보수 + Switch 2AAA급 고품질
Built-In6.5부터 디프리케이션레거시 — 마이그레이션 권장

URP 새 기능 (2026)

물리 기반 광원 단위 자동 노출 / Pre-exposure 피지컬 스카이 리얼타임 GI 스크린 스페이스 리플렉션 모바일 On-tile 포스트프로세싱

11셰이더 및 라이팅

  • Shader Graph — 노드 기반 비주얼 셰이더 제작
  • VFX Graph — GPU 파티클 이펙트
  • 라이팅 — 리얼타임 vs 베이크드 광원
  • Light Probes — 동적 오브젝트 간접 조명
  • Adaptive Probe Volumes (APV) — URP/HDRP 고급 GI
  • GPU Resident Drawer — CPU 시간 최적화 렌더링
05

고급 시스템

12DOTS 및 ECS

DOTS(Data-Oriented Technology Stack)는 Unity의 고성능 멀티스레드 아키텍처입니다. Unity 6.4부터 ECS가 코어 패키지로 에디터에 통합되었습니다.

Entities

ECS 핵심 — 데이터 중심 설계

Burst Compiler

C# 코드 네이티브 최적화

C# Job System

멀티스레드 안전 병렬 처리

Collections

NativeArray, NativeHashMap 등 비관리 메모리

💡 활용 시나리오

ECS는 128+ 플레이어 멀티플레이어, 대규모 시뮬레이션 등 성능이 중요한 프로젝트에 특히 유용합니다.

13멀티플레이어 및 네트워크

  • Netcode for GameObjects — 공식 멀티플레이어 프레임워크
  • Client-Server 아키텍처 — 레이턴시 관리, 동기화
  • 치팅 방지 — 서버 권위 로직
  • Relay / Lobby 서비스 — Unity Gaming Services
  • Matchmaking — 온라인 매칭 시스템

14AI 시스템

  • NavMesh — 경로 탐색, AI 에이전트 이동
  • FSM — 기본 AI 행동 패턴
  • Behavior Tree — 복잡한 AI 의사결정
  • ML-Agents — 머신러닝 기반 AI 훈련
  • Utility AI — 점수 기반 행동 선택

15오디오 시스템

  • AudioSource / AudioListener — 기본 사운드 재생
  • Audio Mixer — 볼륨, 채널, 이펙트 관리
  • 3D 사운드 — 공간감 있는 오디오 (감쇠, 도플러)
  • FMOD / Wwise 연동 — 전문 오디오 미들웨어
06

PhiMir Tools 연동

16PhiMir Tools 개요

PhiMir Tools(파이미르 툴)는 AI 기반 게임·웹·기계 설계 통합 도구입니다. Gemini 2.5 Flash AI를 활용하며, 4개 언어(한국어, 영어, 일본어, 중국어)를 지원합니다.

6개 Suite 구성

무료
🎮 Game Process Tool

스토리 기획, 대사 시나리오, 컷 기획, 밸런스 설계. Notion 스타일 MD 에디터, MD/PDF 내보내기.

무료
🔧 Unity Coding Supporter

씬 구조 자동생성, C# 스크립트 설계, 밸런스 시뮬레이터, 스프라이트 분석, UI 레이아웃 변환, 색상 팔레트, 에셋 체크리스트. 7개 모듈 통합 리포트 PDF.

무료
🚀 Last Work

Steam/Google Play/App Store 스토어 페이지 자동생성. 6개 언어 현지화. 포트폴리오 PDF.

Pro
🎵 Music Tool

게임 OST 가사, SUNO AI 프롬프트. 22개 장르, 12가지 분위기.

Pro
🌐 Web Plan Tool

웹 게임/웹사이트/웹앱 기획. React, Vue, Svelte 등 12개 프론트엔드 지원.

Pro
🏭 Mech Design Tool

기계공학 설계, 구조 해석, GD&T. KS/ISO/JIS/ASME 규격.

요금제

무료

₩0

기본 기획 + AI 보조

Pro

₩5,000/월

다운로드, 클라우드, 통합 PDF, 전체 Suite

PhiMir

팀 전용

팀 협업 + 파일 공유

17Unity 개발과 PhiMir Tools 활용법

📋 기획 단계

  1. Game Process Tool에서 스토리 기획 작성
  2. 대사 시나리오 및 컷 기획 AI 보조 생성
  3. 밸런스 설계로 게임 수치 균형 잡기
  4. MD/PDF로 내보내서 팀과 공유

💻 개발 단계

  1. Unity Coding Supporter에서 씬 구조 자동 생성
  2. C# 스크립트 설계 및 코드 가이드 받기
  3. 스프라이트 분석으로 2D 에셋 최적화
  4. UI 레이아웃 변환으로 인터페이스 빠르게 구현
  5. 색상 팔레트 추출로 일관된 비주얼 스타일
  6. 7개 모듈 통합 리포트 PDF 생성

🚀 출시 단계

  1. Last Work에서 스토어 페이지 자동 생성
  2. 6개 언어 현지화 자동 처리
  3. 포트폴리오 PDF 자동 생성
PhiMir Tools 바로가기 →
07

GitHub 협업

18Unity + Git 초기 설정

필수 설정 단계

  1. GitHub 계정 생성 (github.com)
  2. Git 설치 및 기본 설정 (git config)
  3. Unity 프로젝트 설정: Force Text + Visible Meta Files
  4. Repository 생성 시 .gitignore 템플릿으로 Unity 선택
  5. Git LFS 설치 및 구성

Unity .gitignore 핵심

# 반드시 제외할 폴더
[Ll]ibrary/
[Tt]emp/
[Oo]bj/
[Bb]uild/
[Bb]uilds/
[Ll]ogs/
[Uu]ser[Ss]ettings/

# IDE 생성 파일
*.csproj
*.sln
*.slnx   # ← Unity 최신 버전 필수!

# 기타
*.pidb
*.unityproj
*.suo
*.user
⚠️ 주의

Unity는 최근 .slnx 파일을 기본 생성하므로 반드시 .gitignore에 포함해야 합니다. *.meta 파일은 반드시 커밋해야 합니다!

반드시 커밋할 파일

  • Assets/ 폴더 전체 (코드, 텍스처, 모델, 사운드, 씬)
  • *.meta 파일 (에셋 설정 정보 — 필수!)
  • Packages/ 폴더 (manifest.json, packages-lock.json)
  • ProjectSettings/ 폴더

19Git 협업 워크플로우

팀 협업 기본 흐름

1main
안정 배포 버전
2develop
통합 개발 버전
3feature/*
기능별 작업
4PR & Review
코드 리뷰 & Merge

충돌 방지 방법

  • Scene/Prefab 파일은 동시 수정 금지 (분담 명확히)
  • 바이너리 파일은 Git LFS로 관리
  • 소규모 커밋 자주 하기 (giant commit 금지)
  • 브랜치 수명을 짧게 유지하여 큰 충돌 방지

Git LFS 설정

git lfs install
git lfs track "*.psd"
git lfs track "*.png"
git lfs track "*.fbx"
git lfs track "*.wav"
git lfs track "*.mp3"
ℹ️ GitHub Free 제한

LFS 저장소 1GB, 대역폭 1GB/월 제한이 있습니다. 팀 프로젝트라면 Pro 고려.

20CI/CD 및 자동화

  • GitHub Actions — 빌드 자동화, 테스트 자동 실행
  • Unity Cloud Build — 클라우드 기반 빌드
  • GameCI — Unity 전용 GitHub Actions 라이브러리
  • 자동 테스트 — Unity Test Framework (NUnit 기반)
08

최적화 및 출시

21성능 최적화

📊 Profiler

CPU, GPU, 메모리 병목 분석

🖼️ Frame Debugger

렌더링 패스 시각화

🔍 Project Auditor

코드/에셋/설정 문제 자동 감지 (6.4 내장)

♻️ Object Pooling

GC 부하 줄이기

📐 LOD

거리 기반 메쉬 간소화

👁️ Occlusion Culling

보이지 않는 오브젝트 제외

🗂️ Atlas/Batching

Draw Call 최소화

📦 Addressables

에셋 비동기 로딩

⚡ IL2CPP

네이티브 코드 변환 성능 향상

22텔레메트리 및 라이브운영

2026년 성공적인 Unity 게임은 텔레메트리를 플랫폼 기능으로 취급합니다.

  • Unity Analytics / Firebase Analytics / GameAnalytics
  • 리텐션, 진행률, 수익화 패턴 분석
  • 크래시 시그널 및 성능 브레드크럼 수집
  • 라이브운영(LiveOps) 통합으로 지속적 업데이트

23크로스 플랫폼 배포

플랫폼핵심 고려사항
📱 모바일 (iOS/Android)IL2CPP 빌드, 터치 입력, 해상도 대응
🖥️ PC (Win/Mac/Linux)Standalone 빌드 설정
🎮 콘솔 (PS5/Xbox/Switch 2)인증 요구사항 충족
🌐 WebGL빌드 크기 최적화, 메모리 제한
🥽 XR (VR/AR)Meta Quest, Apple Vision Pro
💡 PhiMir Tools 활용

Last Work Suite를 활용하면 각 스토어 페이지 생성 및 현지화를 자동으로 처리할 수 있습니다.

09

부록

부록 B: 필수 단축키

단축키기능
Ctrl+S씬 저장
Ctrl+Z / Ctrl+Y실행취소 / 재실행
F선택 오브젝트 포커스
W / E / R이동 / 회전 / 스케일
Ctrl+Shift+B빌드 설정
Ctrl+P플레이 모드 토글
Ctrl+D복제
Alt+좌클릭씬 뷰 회전

부록 C: 용어 사전

GameObject
Unity 씬의 모든 오브젝트의 기본 단위
Component
GameObject에 붙는 동작 단위 (스크립트, Renderer 등)
Prefab
재사용 가능한 게임 오브젝트 템플릿
URP
Universal Render Pipeline — Unity 핵심 렌더 파이프라인
HDRP
High Definition Render Pipeline — AAA급 고품질 렌더링
DOTS
Data-Oriented Technology Stack — 고성능 멀티스레드 아키텍처
ECS
Entity Component System — 데이터 중심 설계 패턴
ScriptableObject
데이터 컨테이너용 Unity 에셋
Addressables
에셋 번들링 및 비동기 로딩 시스템
IL2CPP
C# → C++ 변환 백엔드 (성능 최적화)
Git LFS
Git Large File Storage — 대용량 파일 버전 관리