패스트캠퍼스 유니티게임제작camp 1_q2015

36
유니티 게임제작 CAMP Indie Game Developer FASTCAMPUS

Upload: seong-hoon-yi

Post on 15-Jul-2015

309 views

Category:

Education


8 download

TRANSCRIPT

Page 1: 패스트캠퍼스 유니티게임제작Camp 1_q2015

유니티 게임제작 CAMP

이 재 현

Indie Game Developer

FASTCAMPUS

Page 2: 패스트캠퍼스 유니티게임제작Camp 1_q2015

강사 소개

이 재 현인디게임개발자

출시작 : OpenValue, ZID 2,...

www.Unity3dStudy.com 운영

절대강좌! 유니티3D 저자

FASTCAMPUS

Page 3: 패스트캠퍼스 유니티게임제작Camp 1_q2015

유니티3D CAMP 강의 방식

2D, 3D, Network, Build, Deploy- 게임개발 이론, 실습, 배포의 과정

100% 실습- 백문이 불여일타

FASTCAMPUS

Page 4: 패스트캠퍼스 유니티게임제작Camp 1_q2015

InApp , 광고- 자신의 게임에 부분유료화, 광고 탑재

완성도 높은 게임- 교육용 게임이라도 퀄리티는 높게 !

FASTCAMPUS

유니티3D CAMP 강의 방식

Page 5: 패스트캠퍼스 유니티게임제작Camp 1_q2015

유니티 버전- Unity 4.6.x

- 처음에는 Basic 버전으로 설치

- 강좌 중반부에 Pro 버전전환

FASTCAMPUS

강의 정보

Page 6: 패스트캠퍼스 유니티게임제작Camp 1_q2015

커리큘럼 구성 1 - 3D TPS 게임

FASTCAMPUS

- 유니티엔진 맛보기

- 유니티엔진의 전반적인 기능 이해

- 게임제작 기법 습득

Page 7: 패스트캠퍼스 유니티게임제작Camp 1_q2015

커리큘럼 구성 2 - 2D 슈팅 게임

FASTCAMPUS

- Native 2D게임 개발능력 배양

- 모바일용으로 개발해서 배포까지

- Menu, Cut-Scene

Page 8: 패스트캠퍼스 유니티게임제작Camp 1_q2015

커리큘럼 구성 3 - Network 게임

FASTCAMPUS

- 유니티 Built-in-Network API 사용법

- Photon Cloud 활용 PvP 탱크대전 게임

- 로비, 룸, 채팅

- DB연동, JSON

커리큘럼 구성 4 - 직접 게임만들기- 길건너친구들(Crossy Road) 게임

Page 9: 패스트캠퍼스 유니티게임제작Camp 1_q2015

유니티 살펴보기

FASTCAMPUS

Page 10: 패스트캠퍼스 유니티게임제작Camp 1_q2015

유니티 연혁

“2001 “2005 “2008 “2010 “2012 “2014

FASTCAMPUS

Unity 개발시작Unity 1 런칭 in Apple WWDCiPhone 빌드 지원안드로이드 지원, AssetStore 오픈등록개발자 100만명등록개발자 330만명

Page 11: 패스트캠퍼스 유니티게임제작Camp 1_q2015

유니티 시장지배력

FASTCAMPUS

Page 12: 패스트캠퍼스 유니티게임제작Camp 1_q2015

게임엔진 점유율

FASTCAMPUS

Page 13: 패스트캠퍼스 유니티게임제작Camp 1_q2015

유니티 3D 장점 1

진입장벽이 낮다 (없다)

- 개발 편리성

- 미들웨어 탑재

- 저렴하다, 무료 개발가능

“게임 개발의 민주화

FASTCAMPUS

Page 14: 패스트캠퍼스 유니티게임제작Camp 1_q2015

멀티플랫폼 빌드

- One Source Multi Use

“유니티가 가장 앞서고 있다

유니티 3D 장점 2

FASTCAMPUS

Page 15: 패스트캠퍼스 유니티게임제작Camp 1_q2015

유니티 인기요인 ?

인디개발자최적화된 엔진

에셋스토어

커뮤니티

성능

카카오게임

53% +

FASTCAMPUS

Page 16: 패스트캠퍼스 유니티게임제작Camp 1_q2015

UnityScript

Boo

개발언어

FASTCAMPUS

C#

Page 17: 패스트캠퍼스 유니티게임제작Camp 1_q2015

스크립트 에디터

FASTCAMPUS

MonoDevelop- Mono Project

- 멀티플랫폼 C# 컴파일러

Page 18: 패스트캠퍼스 유니티게임제작Camp 1_q2015

물리엔진 (Physics Engine)

FASTCAMPUS

2D 물리엔진- Box2D 엔진 탑재

3D 물리엔진- Nvida의 PhysX 엔진 탑재

Page 19: 패스트캠퍼스 유니티게임제작Camp 1_q2015

랜더링 (Rendering)

FASTCAMPUS

랜더링 라이브러리- OpenGL 3.0, DirectX 11- Deferred, Forward, Vertex Lit- 내장 쉐이더 제공

Page 20: 패스트캠퍼스 유니티게임제작Camp 1_q2015

쉐도우 & 라이트맵핑

FASTCAMPUS

실시간 그림자- Directional , Spot, Point Light

라이트 맵핑- Single, Dual Lightmapping

라이트 프로브- 유니티 3.5 부터 지원, 모바일 실시간 조명효과

Page 21: 패스트캠퍼스 유니티게임제작Camp 1_q2015

추적 알고리즘

FASTCAMPUS

네비게이션 메쉬 (Navigation Mesh)- 유니티 자체 알고리즘 이전 -> A*Pathfinding 사용

- 3D 메쉬를 분석하여 최적의 길찾기 알고리즘을 제공한다.

- 동적장애물 , 끊어진 메쉬의 연결, 레이어별 가중치 기능.

Page 22: 패스트캠퍼스 유니티게임제작Camp 1_q2015

지형 에디터 (Terrain Editor)

FASTCAMPUS

- 직접 지형을 디자인할 수 있는 엔진탑재

- 지형 텍스처, 나무, 풀 디자인

- 자연스러운 바람 연출

- 3rd Party 플러그인을 통해 모바일 빌드

Page 23: 패스트캠퍼스 유니티게임제작Camp 1_q2015

미들웨어

FASTCAMPUS

- Lightmapping Engine (Beast, Audodesk)- Occlusion Culling (Umbra)- FMOD- Speed Tree (Unity 5)

Page 24: 패스트캠퍼스 유니티게임제작Camp 1_q2015

플러그인

FASTCAMPUS

다양한 플랫폼과의 통신을 위한 기능

- iOS : C++ , Object C (*.dll)- Android : Java Plugin (*.jar)- 유니티 Pro 만 제공

적용가능한 플랫폼

- PC, 모바일

“모바일 부분유료화, 광고모듈

Page 25: 패스트캠퍼스 유니티게임제작Camp 1_q2015

에셋스토어

FASTCAMPUS

유니티사에서 직접 운영하는 리소스 오픈마켓

- 1인 개발자 , 소규모 스튜디어에 많은 리소스 제공

- 훌륭한 퀄리티의 리소스를 구할 수 있다.

제공되는 리소스

- 2D Texture, 3D 모델, 애니메이션, 사운드

- Prototype Project- Plugin 모듈

Page 26: 패스트캠퍼스 유니티게임제작Camp 1_q2015

에셋스토어

FASTCAMPUS

유니티사에서 직접 운영하는 리소스 오픈마켓

- 1인 개발자 , 소규모 스튜디어에 많은 리소스 제공

- 훌륭한 퀄리티의 리소스를 구할 수 있다.

제공되는 리소스

- 2D Texture, 3D 모델, 애니메이션, 사운드

- Prototype Project- Plugin 모듈

Page 27: 패스트캠퍼스 유니티게임제작Camp 1_q2015

유니티로 제작된 게임

FASTCAMPUS

Page 28: 패스트캠퍼스 유니티게임제작Camp 1_q2015

유니티로 제작된 게임

FASTCAMPUS

Page 29: 패스트캠퍼스 유니티게임제작Camp 1_q2015

유니티로 제작된 국내게임

FASTCAMPUS

Page 30: 패스트캠퍼스 유니티게임제작Camp 1_q2015

핵심개념의 이해

FASTCAMPUS

Page 31: 패스트캠퍼스 유니티게임제작Camp 1_q2015

Game PlayScene

FASTCAMPUS

화면을 나누는 단위

- 메뉴화면, 옵션화면, 게임플레이 화면, ...

- 유니티를 실행하면 새로운 Scene 이 자동으로 오픈된다.

씬 Scene

OptionsScene

MenuScene

App

Page 32: 패스트캠퍼스 유니티게임제작Camp 1_q2015

FASTCAMPUS

게임화면상에 존재하는 모든 객체를 말한다.

- 씬에 존재하는 객체의 최소단위

게임오브젝트 GameObject

GameObject

Scene

GameObject GameObject

Page 33: 패스트캠퍼스 유니티게임제작Camp 1_q2015

FASTCAMPUS

게임오브젝트에 추가되어 특정역할을 수행하는 객체

- 유니티는 CBD(Component Based Development) 방법론을 제공한다.

- 컴포넌트의 종류 : Transform, Renderer, Sound, Physics, ...

- 스크립트 역시 컴포넌트이다.

컴포넌트 Component

GameObject

Component

ComponentComponent

Component

Page 34: 패스트캠퍼스 유니티게임제작Camp 1_q2015

FASTCAMPUS

복제해 재사용할 수 있는 원본

- 기능이 완성된 게임오브젝트를 재사용하기 위한 원본의 개념

- 프리팹원본을 수정하면 복제한 클론(Clone)들도 자동 수정된다.

프리팹 Prefab

Prefab

Component

ComponentComponent

Component

Prefab(Clone)

Prefab(Clone)

Prefab(Clone)

Page 35: 패스트캠퍼스 유니티게임제작Camp 1_q2015

FASTCAMPUS

주요함수

함수 Function

void Awake()-실행 시 처음 한번 호출-스크립트가 비활성화 되어있어도 호출된다.

void Start() -실행 시 처음 한번 호출

void Update() -매 프레임 마다 한번씩 호출된다.

void FixedUpdate() -엔진에 설정되어있는 일정한 주기로 호출

void LateUpdate()-Update() 함수가 완료 된 이후에 한번 호출된다.-카메라 Fallow 로직에 주로 사용된다.

Page 36: 패스트캠퍼스 유니티게임제작Camp 1_q2015

FASTCAMPUS

주요이벤트

이벤트 Event

OnCollisionEnter (Stay, Exit) - 충돌 발생시 호출

OnTriggerEnter (Stay, Exit) - 충돌 발생시 호출

OnEnable - 스크립트가 활성화 되었을때 호출

OnDisable - 스크립트가 비활성화 되었을때 호출

OnBecameVisible (Invisible) - 카메라에 의해 랜더링되기 시작 또는 종료