SlideShare a Scribd company logo
1 of 163
스타트업 프로젝트를 위한 
유니티 게임 개발 
2014.9.18 
박민근
알콜코더 박민근(@agebreak) 
NHN NEXT 게임 전공 교수 
쿠키 소프트 – 모바일 격투게임 프로젝트 (Unity) 
네오위즈 게임즈 - 야구의 신 개발 
NTL-inc - 드래곤볼 온라인 개발 
엔씨소프트 – PlayNC 빌링 서버 개발 
‘신입 게임 개발자의 서울 상경기’ 
(http://agebreak.blog.me) 
‘초중급 게임 개발자 스터디 (데브루키)’ 
(cafe.naver.com/devrookie) 
게임 개발자 랩소디 (팟캐스트) 
(http://www.podbbang.com/ch/3921) 
게임 클라이언트 프로그래머 
30대… 그리고 오타쿠 프로그래머... 
언젠가는 우즈벡에.. 일류젼 우즈벡 지사를 설립할 예정
오늘 이야기… 
1. 유니티 소개 
2. 개발과 출시, 경험에 대한 이야기 (서형석) 
3. UNITY 2D 살펴 보기 
4. 유니티가 당신에게 알려주지 않는 진실 (이득우) 
5. 유니티와 PLAYMAKER를 이용한 쉽고 빠른 게임 개발
유니티 처음 사용해보면.. 
• 간편한 에디터 
• 드래그 몇 번 하고, 스크립트 작업 잠깐으로 뚝딱뚝딱!! 오오옷~!! 
• 간단하고 손쉬운 개발 
• 필요한건 다 되어 있다. 어려운 프로그래밍 지식이 필요 없다. 
• 에셋스토어 짱짱~!! 필요한거 다있음!!
유니티 처음 사용해보면..
유니티 게임 만들다 보면…
UNITY 
간단한 게임이나 프로토타입 만들기엔 짱!! 
하지만 정말 제대로 게임 만들다보면… 
제대로 이해하고 해야 되는게 한두가지가 
아님.
Unity – 소개
Unity 
유니티? 
- 덴마크 출신의 3명의 개발자들이 개발한 게임엔진 
- 사용자 친화적 인터페이스와 멀티플랫폼 지원의 용이함으로 전 세계적 
으로 인기를 얻게됨 
- 최근 PSP Vita, PS4용 유니티를 무료로 하는 등 
매우 공격적인 활보를 보임 
(2014.7. 현재까지는 US, Mexico, Central America, South America, Canada 만 지원)
Unity 
유니티 사용자가 많은 이유 
- 툴 형태로 제공되는 사용자 친화적 인터페이스 
- 오픈 커뮤니티와 어셋스토어 
- 비교적 저렴했던 가격(무료로도 사용 가능)
Unity – 개발된 프로젝트 
● 템플런 
- 이만지 스튜디오(Imangi Studios)에서 개발한 무한 달리기 게임 
- 전 세계 5억다운로드를 이룬 게임
Unity – 개발된 프로젝트 
● 쉐도우 건(Shadow Gun) 
- 매드핑거 개발 
- 유니티의 기술력을 내세우기 위해 
제작된 게임
Unity – 개발된 프로젝트 
● 언데드 슬레이어(Undead Slayer) 
- 하이디어 김동규 대표 1인 개발. 
- 유니티를 통한 1인 개발의 대표적인 사례
Unity – 개발된 프로젝트 
● 게임 외의 분야
Unity – 용어정리 
- 씬(Scene) 
▷ 게임의 장면 또는 상태를 유니티에서 관리하는 단위 
▷ 씬 관리를 통해서 게임의 레벨 및 상태를 구분 
- 어셋(Asset) 
▷ 엔진에서 사용되는 모든 자원(Resources) 
▷ Resources : 3d model, audio, texture etc..
Unity – 용어정리 
- 게임오브젝트(GameObject) 
▷ 어셋의 기능을 처리하기 위한 오브젝트 
▷ 모든 게임오브젝트는 게임 공간상에 존재하기 위해 
Transform 컴퍼넌트를 지님 
- 스크립트(Script)와 컴퍼넌트(Component) 
▷ 구현된 각각의 기능들을 컴퍼넌트라 호칭 
▷ 사용자들은 컴퍼넌트를 구현하고 게임오브젝트에 추가하여 
기능을 동작시킴
Unity – 용어정리 
- 프리팹(Prefab) 
▷ 게임오브젝트에 구성된 기능들을 패키지화 시킨 어셋 
▷ 씬에 배치된 프리팹들은 항상 원본 데이터를 기준으로 동작하나, 
필요에 따라 해당 링크를 끊을 수 있음
Unity – 사용자 인터페이스
Unity – 사용자 인터페이스
Unity – 사용자 인터페이스 
- 씬(Scene) 뷰 
▷ 3D 세상을 편집하기 위한 편집 뷰 
▷ 오브젝트 배치, 회전, 크기 조절 등 
게임을 개발함에 있어 항상 주시하게 되는 뷰 
- 게임(Game) 뷰 
▷ 게임이 구성되고 최종적으로 보여지는 뷰 
▷ 이 뷰를 통해 실제 개발된 게임의 모습을 확인하거나 컨트롤이 가능
Unity – 사용자 인터페이스 
- 계층(Hierachy) 뷰 
▷ 씬뷰 상에 배치된 수많은 오브젝트의 목록을 표시하는 리스트 뷰 
▷ 게임상의 오브젝트 관리를 용이하게 하기 위해 
계층구조로 관리를 가능케 하는 뷰 
- 프로젝트(Project) 뷰 
▷ 게임을 구성하는 다양한 어셋을 관리하기 위한 뷰 
▷ 유니티 엔진에서 유일하게 하드디스크와 링크된 뷰
Unity – 사용자 인터페이스 
- 인스펙터(Inspector) 뷰 
▷ 선택된 기능 또는 게임오브젝트의 컴퍼넌트 내용을 보여주는 에디터 뷰 
▷ 코드 수정 없이 인스펙터 뷰 상에 보여지는 값을 수정하여 테스트 가능
Unity – 에디터
Unity – 에디터
[UNITE2014] 개발과 출시 경험에 대한 이야기
이것은 단지 경험에 관한 이야기입니다.
인원 : 프로그래머 2 명 
2012. 2. [쉐도우진 닌자보이] 출시. 
2012. 10. [셀레스티얼 리그] 개발. 
2014. 2. [세이빙 몬스터즈 for AfreecaTV] 출시.
강연의 목적 
너무 힘들었기 때문에 이야기를 해보고 싶었습니다.
SAVING 
MONSTERS 
지금부터 이 게임에 대한 개발 경험을 나누고자 합니다.
게임 개발 과정 
2012. 11. 개발시작 - 좋아하는 게임을 만들자
게임 개발 과정 
2012. 11. 개발시작 
가제 – 인피니티 타워
게임 개발 과정 
2012. 11. 개발시작 
2013. 3. 프로토 타입 완성
게임 개발 과정 
2012. 11. 개발시작 
2013. 3. 프로토 타입 완성 
2013. 4. UNITE 2013 
바람 주자 
3D ?
우리가 만들던 것은 …
게임 개발 과정 
2012. 11. 개발시작 
2013. 3. 프로토 타입 완성 
2013. 4. UNITE 2013 
2013. 5. 대격변 ! 
1) 카메라 구조 변경 
2) 3 Line 구성 
3) 통쾌함을 주자! 
4) 타워의 제거
게임 개발 과정 
2012. 11. 개발시작 
2013. 3. 프로토 타입 완성 
2013. 4. UNITE 2013 
2013. 5. 대격변 ! 
2013. 6. 고난(苦難)의 시기
좋은 인연들을 만나다
게임 개발 과정 
2012. 11. 개발시작 
2013. 3. 프로토 타입 완성 
2013. 4. UNITE 2013 
2013. 5. 대격변 ! 
2013. 6. 고난(苦難)의 시기 
2013. 7. 퍼블리싱 계약
게임 개발 과정 
2012. 11. 개발시작 
2013. 3. 프로토 타입 완성 
2013. 4. UNITE 2013 
2013. 5. 대격변 ! 
2013. 6. 고난(苦難)의 시기 
2013. 7. 퍼블리싱 계약 
2013. 10. FGT
게임 개발 과정 
2012. 11. 개발시작 
2013. 3. 프로토 타입 완성 
2013. 4. UNITE 2013 
2013. 5. 대격변 ! 
2013. 6. 고난(苦難)의 시기 
2013. 7. 퍼블리싱 계약 
2013. 10. FGT 
2014. 2. 아프리카 TV 출시
출시 직전 
여유로운 시간을 즐기다 
진실은 폭풍 전야..
출시 직후 
출시에 대한 행복감 
출시 소식 전달
지옥문이 열리게 됩니다..
출시 직후 
무한 로딩 
아프리카 TV 장애/버그 신고 발췌
출시 직후 
무한 로딩 
- 원인 
1. AWS 설정 실수 
2. AWS 웹 서버 재부팅을 하려 했으나..
출시 직후 
무한 로딩 
- 대응 
1. 퍼블리셔 분들을 토요일에 출근하시도록 하여 긴급 패치… 
다시 한번 사과 드리며, 
빠른 대응에 진심으로 감사 드립니다..
발생한 문제들 
메모리 치트 
- 원인 
1. 경험에 대한 자만 
2. 예상치 못한 해킹 방식
발생한 문제들 
메모리 치트 
- 대응 
1. 치트 유저 밴 
2. 치트 프로그램 리스트 갱신 
3. 메모리 치트 예방책 강화 
4. 서버단에서 주요 로직 처리
발생한 문제들 
DB 문제 
- 상황 
1. 한 순간 치트 유저수가 급격히 증가 
2. 모든 데이터 수치가 똑같다?!
발생한 문제들 
DB 문제 
- 사실상 가장 심각했던 문제 
1. 원인 파악이 안 되는 상황…
발생한 문제들 
DB 문제 
- 그럼 어떻게 문제를 파악했나? 
1. 메모리 치트 대응 중 
대화를 통한 한 순간의 번뜩임 
“어?! 이거 알 것 같아!!” 
사실상 운이 좋았습니다.
발생한 문제들 
DB 공격 
- SQL Injection
발생한 문제들 
DB 공격 
- 대응은 했지만.. 
확인을 하는 과정이 
어려웠다..
발생한 문제들 
웹 서버 파일 업로드 문제 
- 파일 서버로 파일 전송시 빈 파일로 올라가는 문제발생 
- 웹 서버가 제거된 상황과 동일한 상황…
발생한 문제들 
웹 서버 파일 업로드 문제 
- 대응은? 
1. 친구에게 질의
발생한 문제들 
웹 서버 파일 업로드 문제 
- 친구의 대답 
“로그를 살펴봐~” 
- 그리고 찾은 이상한 점 
“어?!! 
로그파일 용량이 6기가네?”
발생한 문제들 
웹 서버 파일 업로드 문제 
- 원인 
웹 서버 용량 초과 문제 
php 에러가 지속적으로 로그를 생성
발생한 문제들 
렉 이슈 
- 몇몇 기기에서 게임이 불가능 할 정도의 렉이 간혹 발생 
- 최신 기종에서 특히 발생
발생한 문제들 
렉 이슈 
- 원인 추정
발생한 문제들 
렉 이슈 
- 대응 
Unity 4.3 ▶ Unity 4.2 
Everyplay 제거
현재 
평온한 상태 유지 중
국내 출시로 얻은 것들 
10만 이상의 다운로드 
평점 4.1 
BM 구조의 문제 파악 
업데이트에 대한 빠른 피드백 - 약 4400개의 소중한 의견
알수 없던 것들 
게임의 사용자들
잘못한 부분 
생각지 못하게 길어진 개발 기간 
3D 게임 개발 비용 산정 오류 
서버 지식의 부재 
BM 설계 
해킹에 대한 대응 부족 
팀내 아티스트의 부재
앞으로의 계획 
해외 출시 준비 
규모에 맞는 게임 개발
하지만..
하지만.. 아직은…
Unity 2D 
살펴보기 
2013.12.14 
초중급 게임개발자 스터디 
<데브루키> 
알콜코더 박민근
http://www.slideshare.net/gukhwanji/unity2d
http://www.slideshare.net/gukhwanji/unity2d
근데 테스트 해본 결과 PlayMaker만큼은 못함..ㅡ.ㅡ;; 
애니메이션 State만 제어 가능 할 뿐.. 
http://www.slideshare.net/gukhwanji/unity2d
1.2D Project의 생성 
2.2D Sprite Resource 
3.Sprite Slice 
4.Sprite 애니메이션 
5.2D 스켈레톤 애니메이션 
6.Animator 
7.2D 피직스 컴포넌트 (물리 충돌)
시연과 동영상 위주 입니다. ^^~~
http://www.youtube.com/watch?v=B1F6fi04qw8&list=PL8F6B414B065FDE58&index=19
http://www.youtube.com/watch?v=ksoGW2 
j2E0Q&list=PL8F6B414B065FDE58&index 
=18
1.2D Project의 생성 
2.2D Sprite Resource 
3.Sprite Slice 
4.Sprite 애니메이션 
5.2D 스켈레톤 애니메이션 
6.Animator 
7.2D 피직스 컴포넌트 (물리 충돌)
2D 프로젝트의 생성
Scene – 2D Mode 버튼 추가 
• Scene View를 2D 모드로 고정 
• 무브툴을 2D 이동으로 변경 
• Picking이 알파 기반으로 동작 
• Sprite를 씬에 끌어다 놓으면, 새로운 GameObject 생성
2D 스프라이트 리소스
2D 스프라이트 렌더러
스프라이트 에디터 
Texture Atlas를 관리하고, 각각의 스프라이트로 Slice 한다
스프라이트 에디터
스프라이트 에디터 - Slice 
Atlas를 각각의 스프라이트로 자른다. 
크기를 설정할 수 있다. 
중심 위치(Pivot) 설정. 
Trim을 이용해서 자동 설정 가능!! 
Wow!~!~!
스프라이트 에디터 – Auto Slice
스프라이트 Slice 
Slice 된 스프라이트는 따로 사용 할 수 있고, 
애니메이션으로 사용할 수 있다.
2D 애니메이션
http://www.slideshare.net/gukhwanji/unity2d
http://www.slideshare.net/gukhwanji/unity2d
http://www.slideshare.net/gukhwanji/unity2d
스프라이트 애니메이션 
표준 도프 시트(dope Sheets) 모양으로 애니메이션을 설정 
스프라이트 체인지, 이동, 회전등 모든 속성을 변경하여, 애니메이션 가능
스프라이트 애니메이션 
여러 개의 스프라이트를 선택 후, 
씬에 끌어다 놓으면, 
스프라이트 애니메이션 자동 생성!!
스켈레톤 애니메이션 
앞의 Unite 2013 2D Workflows 동영상 참조
2D Physics
Animator 
http://www.slideshare.net/gukhwanji/unity2d
Animator 
http://www.slideshare.net/gukhwanji/unity2d
Animator 
http://www.slideshare.net/gukhwanji/unity2d
Animator 
http://www.slideshare.net/gukhwanji/unity2d
Animator 
각 상태(State) 애니메이션 세트를 정의 
각 상태의 변경 조건을 정의 한다
간단한 Unity 2D 프로젝트 샘플 
트리거 이벤트 
트리거 이벤트 
트리거 발동 
-> State 변경
간단한 Unity 2D 프로젝트 샘플 
http://agebreak.url.ph/Bin.html
간단한 Unity 2D 프로젝트 샘플 
http://agebreak.url.ph/Puyon_Web.html
Unity2D의 장점 
• 추가 플러그인(2D ToolKit)의 구입 없이, 2D 게임 개발 가능 
• 유니티의 기능이기 때문에, 완벽하게 유니티와 통합 
• 2D Physics 가 유니티 자체에서 잘 지원 되어 있음 
• Sprite의 관리가 용이함 (Sprite Editor, Sprite Packer) 
• 현재로서는 버그가 좀 있긴 하지만, 앞으로 발전 가능성
참고자료 
• Unity2D 소개(KGC13)_지국환 http://www.slideshare.net/gukhwanji/unity2d 
• Unity2D Workflowhttp://www.youtube.com/watch?v=B1F6fi04qw8&list=PL8F6B414B065FDE58&index=19 
• Unity2D 튜토리얼(한글 자막) http://www.youtube.com/watch?v=ksoGW2j2E0Q&list=WL60F612FCDB928D04 
• 유니티 4.3 릴리즈 노트 http://korea.unity3d.com/content/content.php?cont=new_unity10 
• Unity2D 샘플 1 (by 알콜코더) http://agebreak.url.ph/Bin.html 
• Unity2D 샘플 2 (by 알콜코더) http://agebreak.url.ph/Puyon_Web.html
http://www.slideshare.net/MrDustinLee/ss-27739454
FSM/AI 등을 에디터에서 드래그&드랍만으로 
제작할 수 있는 비주얼 스크립팅 애드온
어떤 물건인지.. 보고 이야기 합시다~
이걸로 뭘 할 수 
있을까요?
어디 한번 배워봅시다
주요 개념 
• FSM 
• STATE 
• ACTION 
• EVENT & TRANSITION 
• VARIABLE
FSM
FSM 
• GameObject에 부착되는 PlayMaker 컴포넌트 
• PlayMaker Browser에서 FSM을 마우스 우측클릭으 
로 생성하면 자동으로 생성된다. 
• 한 FSM내에 여러 스테이트와 Action들을 정의한다
FSM 
• 한 오브젝트내에 복수개의 FSM 컴포넌트 생성 가능 
• 각가의 FSM이 일종의 레이어처럼 사용 할 수 있다. 
• FSM 1 – 캐릭터의 상태 변화 제어 
• 축소, 확대, 변신, 무적… 
• FSM 2 – 캐릭터의 행동 변화 제어 
• 이동, 달리기, 점프, 공격…
STATE (1)
STATE (2)
STATE 
• 오브젝트의 각 상태를 정의한다 
• IDLE, 이동, 점프, 공격, 피격, 죽음… 
• 각 상태는 그 상태에서 작동하는 Action들을 추가할 
수 있다. (상태에 따라 Action이 없을 수도 있다) 
• 설정된 EVENT가 발생하면, 다른 State로 전이 
(Transition)한다.
ACTION
ACTION 
• State안에 설정된 실제 작동하는 행동 
• 텍스쳐 변경, 마우스 클릭, 오브젝트 이동 및 회전등 
모든 기본적인 100여개가 넘는 Action들이 제공 된다. 
• 게임에 맞는 Custom Action을 쉽게 제작하여 추가할 
수 있다.
ACTION 
• 복잡한 게임에서 프로그래머의 역할은 Custom 
Action을 코딩하여 제작하여 넘겨주면, 다른 개발자들 
이 사용할 수 있다. 
• Action은 전부 C#코드로 되어 있고, 소스가 포함되어 
있기 때문에, Action들의 코드만 봐도 유니티의 기본 
스크립트들을 참고할 수 있는 최고의 예제 코드가 된 
다.
EVENT
EVENT 
• 각 스테이트에서 정의한 이벤트가 발생하면, 그 이벤 
트에 연결된 스테이트로 전이된다. 
• 이벤트는 기본적인 시스템 이벤트도 있고, Event 
Browser를 통해서, 커스텀 이벤트를 추가할 수 있다. 
• 커스텀 이벤트는 FSM 제어에 따라서 호출할 수 있다.
Variable
Variable 
• FSM에 체크등에 사용되는 변수들을 추가하고, 정의 
할 수 있다. 
• 오브젝트를 체크할때 사용하는 GameObject 변수 
• 위치와 방향들 – Vector 변수 
• String, Int, Texture 등의 변수를 모두 추가하고 사용할 
수 있다.
실제 사용예 : 인체 전시전
실제 사용예 : 인체 전시전
실제 사용예 : 피격 상태
PlayMaker 정리
PlayMaker 정리 : 단점
PlayMaker 홈페이지
PlayMaker Youtube 채널
Q & A

More Related Content

What's hot

20140514 team blender_v01 (Korean)
20140514 team blender_v01 (Korean)20140514 team blender_v01 (Korean)
20140514 team blender_v01 (Korean)Dongho Kim
 
Make a shooting game using unity
Make a shooting game using unityMake a shooting game using unity
Make a shooting game using unityHyunwoo Kim
 
유니티 고급 과정 -1-
유니티 고급 과정 -1-유니티 고급 과정 -1-
유니티 고급 과정 -1-Kiyoung Moon
 
[141015] cedec 2014 참관기 & 강연 리뷰 #2
[141015] cedec 2014 참관기 & 강연 리뷰 #2[141015] cedec 2014 참관기 & 강연 리뷰 #2
[141015] cedec 2014 참관기 & 강연 리뷰 #2MinGeun Park
 
유니티의 툰셰이딩을 사용한 3D 애니메이션 표현
유니티의 툰셰이딩을 사용한 3D 애니메이션 표현유니티의 툰셰이딩을 사용한 3D 애니메이션 표현
유니티의 툰셰이딩을 사용한 3D 애니메이션 표현MinGeun Park
 
Flappy bird 만들기 세미나 자료(유니티 4.3버전)
Flappy bird 만들기 세미나 자료(유니티 4.3버전)Flappy bird 만들기 세미나 자료(유니티 4.3버전)
Flappy bird 만들기 세미나 자료(유니티 4.3버전)Changwon National University
 
유니티로 flappy brid 만들기(Unity 5.1)
유니티로 flappy brid 만들기(Unity 5.1)유니티로 flappy brid 만들기(Unity 5.1)
유니티로 flappy brid 만들기(Unity 5.1)Changwon National University
 
(게임개발을위한) printf("Hello World!"); 그 이상의 콘솔 프로그래밍
(게임개발을위한) printf("Hello World!"); 그 이상의 콘솔 프로그래밍(게임개발을위한) printf("Hello World!"); 그 이상의 콘솔 프로그래밍
(게임개발을위한) printf("Hello World!"); 그 이상의 콘솔 프로그래밍NDOORS
 
Ndc2010 김주복, v3. 마비노기2아키텍처리뷰
Ndc2010   김주복, v3. 마비노기2아키텍처리뷰Ndc2010   김주복, v3. 마비노기2아키텍처리뷰
Ndc2010 김주복, v3. 마비노기2아키텍처리뷰Jubok Kim
 
[GAMENEXT] 10년을 혈십자와 보내고.. (별바람 스튜디오)
[GAMENEXT] 10년을 혈십자와 보내고.. (별바람 스튜디오)[GAMENEXT] 10년을 혈십자와 보내고.. (별바람 스튜디오)
[GAMENEXT] 10년을 혈십자와 보내고.. (별바람 스튜디오)GAMENEXT Works
 
Unity 3d study #1
Unity 3d study #1Unity 3d study #1
Unity 3d study #1Hyunwoo Kim
 
[IGC 2017] 엔지메이킹 이대희 - 이제는 웹에서 게임을 만들 수 있는 환경 'Construct3를 바탕으로'
[IGC 2017] 엔지메이킹 이대희 - 이제는 웹에서 게임을 만들 수 있는 환경 'Construct3를 바탕으로'[IGC 2017] 엔지메이킹 이대희 - 이제는 웹에서 게임을 만들 수 있는 환경 'Construct3를 바탕으로'
[IGC 2017] 엔지메이킹 이대희 - 이제는 웹에서 게임을 만들 수 있는 환경 'Construct3를 바탕으로'강 민우
 
NDC2013 - 심리학으로 다시 보는 게임 디자인
NDC2013 - 심리학으로 다시 보는 게임 디자인NDC2013 - 심리학으로 다시 보는 게임 디자인
NDC2013 - 심리학으로 다시 보는 게임 디자인Jubok Kim
 
게임 프레임워크의 아키텍쳐와 디자인 패턴
게임 프레임워크의 아키텍쳐와 디자인 패턴게임 프레임워크의 아키텍쳐와 디자인 패턴
게임 프레임워크의 아키텍쳐와 디자인 패턴MinGeun Park
 
마비노기듀얼 이야기-넥슨 김동건
마비노기듀얼 이야기-넥슨 김동건마비노기듀얼 이야기-넥슨 김동건
마비노기듀얼 이야기-넥슨 김동건강 민우
 
Unity 3d study #2
Unity 3d study #2Unity 3d study #2
Unity 3d study #2Hyunwoo Kim
 

What's hot (20)

20140514 team blender_v01 (Korean)
20140514 team blender_v01 (Korean)20140514 team blender_v01 (Korean)
20140514 team blender_v01 (Korean)
 
Unity 시작하기
Unity 시작하기Unity 시작하기
Unity 시작하기
 
신광섭
신광섭신광섭
신광섭
 
Make a shooting game using unity
Make a shooting game using unityMake a shooting game using unity
Make a shooting game using unity
 
유니티 고급 과정 -1-
유니티 고급 과정 -1-유니티 고급 과정 -1-
유니티 고급 과정 -1-
 
[141015] cedec 2014 참관기 & 강연 리뷰 #2
[141015] cedec 2014 참관기 & 강연 리뷰 #2[141015] cedec 2014 참관기 & 강연 리뷰 #2
[141015] cedec 2014 참관기 & 강연 리뷰 #2
 
유니티의 툰셰이딩을 사용한 3D 애니메이션 표현
유니티의 툰셰이딩을 사용한 3D 애니메이션 표현유니티의 툰셰이딩을 사용한 3D 애니메이션 표현
유니티의 툰셰이딩을 사용한 3D 애니메이션 표현
 
Flappy bird 만들기 세미나 자료(유니티 4.3버전)
Flappy bird 만들기 세미나 자료(유니티 4.3버전)Flappy bird 만들기 세미나 자료(유니티 4.3버전)
Flappy bird 만들기 세미나 자료(유니티 4.3버전)
 
유니티로 flappy brid 만들기(Unity 5.1)
유니티로 flappy brid 만들기(Unity 5.1)유니티로 flappy brid 만들기(Unity 5.1)
유니티로 flappy brid 만들기(Unity 5.1)
 
(게임개발을위한) printf("Hello World!"); 그 이상의 콘솔 프로그래밍
(게임개발을위한) printf("Hello World!"); 그 이상의 콘솔 프로그래밍(게임개발을위한) printf("Hello World!"); 그 이상의 콘솔 프로그래밍
(게임개발을위한) printf("Hello World!"); 그 이상의 콘솔 프로그래밍
 
Ndc2010 김주복, v3. 마비노기2아키텍처리뷰
Ndc2010   김주복, v3. 마비노기2아키텍처리뷰Ndc2010   김주복, v3. 마비노기2아키텍처리뷰
Ndc2010 김주복, v3. 마비노기2아키텍처리뷰
 
[GAMENEXT] 10년을 혈십자와 보내고.. (별바람 스튜디오)
[GAMENEXT] 10년을 혈십자와 보내고.. (별바람 스튜디오)[GAMENEXT] 10년을 혈십자와 보내고.. (별바람 스튜디오)
[GAMENEXT] 10년을 혈십자와 보내고.. (별바람 스튜디오)
 
Unity 3d study #1
Unity 3d study #1Unity 3d study #1
Unity 3d study #1
 
[IGC 2017] 엔지메이킹 이대희 - 이제는 웹에서 게임을 만들 수 있는 환경 'Construct3를 바탕으로'
[IGC 2017] 엔지메이킹 이대희 - 이제는 웹에서 게임을 만들 수 있는 환경 'Construct3를 바탕으로'[IGC 2017] 엔지메이킹 이대희 - 이제는 웹에서 게임을 만들 수 있는 환경 'Construct3를 바탕으로'
[IGC 2017] 엔지메이킹 이대희 - 이제는 웹에서 게임을 만들 수 있는 환경 'Construct3를 바탕으로'
 
iOS7 Sprite Kit을 이용한 게임 개발
iOS7 Sprite Kit을 이용한 게임 개발iOS7 Sprite Kit을 이용한 게임 개발
iOS7 Sprite Kit을 이용한 게임 개발
 
[PandoraCube] '게임메이커'에 대해 알아보자
[PandoraCube] '게임메이커'에 대해 알아보자[PandoraCube] '게임메이커'에 대해 알아보자
[PandoraCube] '게임메이커'에 대해 알아보자
 
NDC2013 - 심리학으로 다시 보는 게임 디자인
NDC2013 - 심리학으로 다시 보는 게임 디자인NDC2013 - 심리학으로 다시 보는 게임 디자인
NDC2013 - 심리학으로 다시 보는 게임 디자인
 
게임 프레임워크의 아키텍쳐와 디자인 패턴
게임 프레임워크의 아키텍쳐와 디자인 패턴게임 프레임워크의 아키텍쳐와 디자인 패턴
게임 프레임워크의 아키텍쳐와 디자인 패턴
 
마비노기듀얼 이야기-넥슨 김동건
마비노기듀얼 이야기-넥슨 김동건마비노기듀얼 이야기-넥슨 김동건
마비노기듀얼 이야기-넥슨 김동건
 
Unity 3d study #2
Unity 3d study #2Unity 3d study #2
Unity 3d study #2
 

Viewers also liked

조정훈, 게임 프로그래머를 위한 클래스 설계, NDC2012
조정훈, 게임 프로그래머를 위한 클래스 설계, NDC2012조정훈, 게임 프로그래머를 위한 클래스 설계, NDC2012
조정훈, 게임 프로그래머를 위한 클래스 설계, NDC2012devCAT Studio, NEXON
 
예제로 보는 Pattern 연상법
예제로 보는 Pattern 연상법예제로 보는 Pattern 연상법
예제로 보는 Pattern 연상법hyun soomyung
 
게임 개발에 자주 사용되는 디자인 패턴
게임 개발에 자주 사용되는 디자인 패턴게임 개발에 자주 사용되는 디자인 패턴
게임 개발에 자주 사용되는 디자인 패턴예림 임
 
[Td 2015]너에게만 나는 반응해 반응형 응용프로그램(이규원)
[Td 2015]너에게만 나는 반응해 반응형 응용프로그램(이규원)[Td 2015]너에게만 나는 반응해 반응형 응용프로그램(이규원)
[Td 2015]너에게만 나는 반응해 반응형 응용프로그램(이규원)Sang Don Kim
 
서버 개발자가 바라 본 Functional Reactive Programming with RxJava - SpringCamp2015
서버 개발자가 바라 본 Functional Reactive Programming with RxJava - SpringCamp2015서버 개발자가 바라 본 Functional Reactive Programming with RxJava - SpringCamp2015
서버 개발자가 바라 본 Functional Reactive Programming with RxJava - SpringCamp2015NAVER / MusicPlatform
 
홍성우, 내가 만든 언어로 게임 만들기, NDC2017
홍성우, 내가 만든 언어로 게임 만들기, NDC2017홍성우, 내가 만든 언어로 게임 만들기, NDC2017
홍성우, 내가 만든 언어로 게임 만들기, NDC2017devCAT Studio, NEXON
 
대용량 분산 아키텍쳐 설계 #2 대용량 분산 시스템 아키텍쳐 디자인 패턴
대용량 분산 아키텍쳐 설계 #2 대용량 분산 시스템 아키텍쳐 디자인 패턴대용량 분산 아키텍쳐 설계 #2 대용량 분산 시스템 아키텍쳐 디자인 패턴
대용량 분산 아키텍쳐 설계 #2 대용량 분산 시스템 아키텍쳐 디자인 패턴Terry Cho
 

Viewers also liked (10)

조정훈, 게임 프로그래머를 위한 클래스 설계, NDC2012
조정훈, 게임 프로그래머를 위한 클래스 설계, NDC2012조정훈, 게임 프로그래머를 위한 클래스 설계, NDC2012
조정훈, 게임 프로그래머를 위한 클래스 설계, NDC2012
 
Mvp 이전2
Mvp 이전2Mvp 이전2
Mvp 이전2
 
예제로 보는 Pattern 연상법
예제로 보는 Pattern 연상법예제로 보는 Pattern 연상법
예제로 보는 Pattern 연상법
 
MVP 패턴 소개
MVP 패턴 소개MVP 패턴 소개
MVP 패턴 소개
 
게임 개발에 자주 사용되는 디자인 패턴
게임 개발에 자주 사용되는 디자인 패턴게임 개발에 자주 사용되는 디자인 패턴
게임 개발에 자주 사용되는 디자인 패턴
 
[Td 2015]너에게만 나는 반응해 반응형 응용프로그램(이규원)
[Td 2015]너에게만 나는 반응해 반응형 응용프로그램(이규원)[Td 2015]너에게만 나는 반응해 반응형 응용프로그램(이규원)
[Td 2015]너에게만 나는 반응해 반응형 응용프로그램(이규원)
 
서버 개발자가 바라 본 Functional Reactive Programming with RxJava - SpringCamp2015
서버 개발자가 바라 본 Functional Reactive Programming with RxJava - SpringCamp2015서버 개발자가 바라 본 Functional Reactive Programming with RxJava - SpringCamp2015
서버 개발자가 바라 본 Functional Reactive Programming with RxJava - SpringCamp2015
 
홍성우, 내가 만든 언어로 게임 만들기, NDC2017
홍성우, 내가 만든 언어로 게임 만들기, NDC2017홍성우, 내가 만든 언어로 게임 만들기, NDC2017
홍성우, 내가 만든 언어로 게임 만들기, NDC2017
 
대용량 분산 아키텍쳐 설계 #2 대용량 분산 시스템 아키텍쳐 디자인 패턴
대용량 분산 아키텍쳐 설계 #2 대용량 분산 시스템 아키텍쳐 디자인 패턴대용량 분산 아키텍쳐 설계 #2 대용량 분산 시스템 아키텍쳐 디자인 패턴
대용량 분산 아키텍쳐 설계 #2 대용량 분산 시스템 아키텍쳐 디자인 패턴
 
sungmin slide
sungmin slidesungmin slide
sungmin slide
 

Similar to [스마트벤처 창업학교] 스타트업 프로젝트를 위한 유니티 게임 개발

유니티 기초 - 유니티 설치부터 스크립팅까지 익히기
유니티 기초 - 유니티 설치부터 스크립팅까지 익히기유니티 기초 - 유니티 설치부터 스크립팅까지 익히기
유니티 기초 - 유니티 설치부터 스크립팅까지 익히기주형 고
 
Unity3D Developer Network Study Chapter.2
Unity3D Developer Network Study Chapter.2Unity3D Developer Network Study Chapter.2
Unity3D Developer Network Study Chapter.2Cody Yun
 
Ndc2013 정리(upload버전)
Ndc2013 정리(upload버전)Ndc2013 정리(upload버전)
Ndc2013 정리(upload버전)Minsu Park
 
내 마음대로 정리 해 본 ndc 발표 자료
내 마음대로 정리 해 본 ndc 발표 자료내 마음대로 정리 해 본 ndc 발표 자료
내 마음대로 정리 해 본 ndc 발표 자료SeungMin Yang
 
브릿지 Unity3D 기초 스터디 1회
브릿지 Unity3D 기초 스터디 1회브릿지 Unity3D 기초 스터디 1회
브릿지 Unity3D 기초 스터디 1회BridgeGames
 
Playground 소개
Playground 소개Playground 소개
Playground 소개승우 백
 
코끼리를 냉장고에 넣는 법 - 최부호, NDC2013
코끼리를 냉장고에 넣는 법 - 최부호, NDC2013코끼리를 냉장고에 넣는 법 - 최부호, NDC2013
코끼리를 냉장고에 넣는 법 - 최부호, NDC2013NDOORS
 
영웅의 군단의 테크니컬 아트 - 황재철, 유나이트 코리아 2014
영웅의 군단의 테크니컬 아트 - 황재철, 유나이트 코리아 2014영웅의 군단의 테크니컬 아트 - 황재철, 유나이트 코리아 2014
영웅의 군단의 테크니컬 아트 - 황재철, 유나이트 코리아 2014NDOORS
 
증강현실을 통한 두더지잡기 게임
증강현실을 통한 두더지잡기 게임증강현실을 통한 두더지잡기 게임
증강현실을 통한 두더지잡기 게임Junhee Han
 
디자이너를 위한 NGUI의 이해
디자이너를 위한 NGUI의 이해디자이너를 위한 NGUI의 이해
디자이너를 위한 NGUI의 이해Je Lyoung Kim
 
[NDC17] Protocol:hyperspace Diver 개발 포스트모템
[NDC17] Protocol:hyperspace Diver 개발 포스트모템[NDC17] Protocol:hyperspace Diver 개발 포스트모템
[NDC17] Protocol:hyperspace Diver 개발 포스트모템Young Soo Kim
 
[1002 조진현]unity3d 소개
[1002 조진현]unity3d 소개[1002 조진현]unity3d 소개
[1002 조진현]unity3d 소개진현 조
 
NDC2013 - 인디게임 프로젝트 중도에 포기하지 않는 방법
NDC2013 - 인디게임 프로젝트 중도에 포기하지 않는 방법NDC2013 - 인디게임 프로젝트 중도에 포기하지 않는 방법
NDC2013 - 인디게임 프로젝트 중도에 포기하지 않는 방법ChangHyun Won
 
[KGC2011_박민근] 신입 게임 개발자가 알아야 할 것들
[KGC2011_박민근] 신입 게임 개발자가 알아야 할 것들[KGC2011_박민근] 신입 게임 개발자가 알아야 할 것들
[KGC2011_박민근] 신입 게임 개발자가 알아야 할 것들MinGeun Park
 
증강현실을 통한 두더지잡기 게임
증강현실을 통한 두더지잡기 게임증강현실을 통한 두더지잡기 게임
증강현실을 통한 두더지잡기 게임Junhee Han
 
에어헌터 for kakao 포스트모템(공개용)
에어헌터 for kakao 포스트모템(공개용)에어헌터 for kakao 포스트모템(공개용)
에어헌터 for kakao 포스트모템(공개용)Woo Yeong Choi
 

Similar to [스마트벤처 창업학교] 스타트업 프로젝트를 위한 유니티 게임 개발 (20)

유니티 기초 - 유니티 설치부터 스크립팅까지 익히기
유니티 기초 - 유니티 설치부터 스크립팅까지 익히기유니티 기초 - 유니티 설치부터 스크립팅까지 익히기
유니티 기초 - 유니티 설치부터 스크립팅까지 익히기
 
Unity3D Developer Network Study Chapter.2
Unity3D Developer Network Study Chapter.2Unity3D Developer Network Study Chapter.2
Unity3D Developer Network Study Chapter.2
 
Game engine 2011
Game engine 2011Game engine 2011
Game engine 2011
 
Unity시작하기
Unity시작하기Unity시작하기
Unity시작하기
 
Ndc2013 정리(upload버전)
Ndc2013 정리(upload버전)Ndc2013 정리(upload버전)
Ndc2013 정리(upload버전)
 
내 마음대로 정리 해 본 ndc 발표 자료
내 마음대로 정리 해 본 ndc 발표 자료내 마음대로 정리 해 본 ndc 발표 자료
내 마음대로 정리 해 본 ndc 발표 자료
 
이호민
이호민이호민
이호민
 
브릿지 Unity3D 기초 스터디 1회
브릿지 Unity3D 기초 스터디 1회브릿지 Unity3D 기초 스터디 1회
브릿지 Unity3D 기초 스터디 1회
 
Playground 소개
Playground 소개Playground 소개
Playground 소개
 
코끼리를 냉장고에 넣는 법 - 최부호, NDC2013
코끼리를 냉장고에 넣는 법 - 최부호, NDC2013코끼리를 냉장고에 넣는 법 - 최부호, NDC2013
코끼리를 냉장고에 넣는 법 - 최부호, NDC2013
 
영웅의 군단의 테크니컬 아트 - 황재철, 유나이트 코리아 2014
영웅의 군단의 테크니컬 아트 - 황재철, 유나이트 코리아 2014영웅의 군단의 테크니컬 아트 - 황재철, 유나이트 코리아 2014
영웅의 군단의 테크니컬 아트 - 황재철, 유나이트 코리아 2014
 
증강현실을 통한 두더지잡기 게임
증강현실을 통한 두더지잡기 게임증강현실을 통한 두더지잡기 게임
증강현실을 통한 두더지잡기 게임
 
디자이너를 위한 NGUI의 이해
디자이너를 위한 NGUI의 이해디자이너를 위한 NGUI의 이해
디자이너를 위한 NGUI의 이해
 
[NDC17] Protocol:hyperspace Diver 개발 포스트모템
[NDC17] Protocol:hyperspace Diver 개발 포스트모템[NDC17] Protocol:hyperspace Diver 개발 포스트모템
[NDC17] Protocol:hyperspace Diver 개발 포스트모템
 
[1002 조진현]unity3d 소개
[1002 조진현]unity3d 소개[1002 조진현]unity3d 소개
[1002 조진현]unity3d 소개
 
Start unreal
Start unrealStart unreal
Start unreal
 
NDC2013 - 인디게임 프로젝트 중도에 포기하지 않는 방법
NDC2013 - 인디게임 프로젝트 중도에 포기하지 않는 방법NDC2013 - 인디게임 프로젝트 중도에 포기하지 않는 방법
NDC2013 - 인디게임 프로젝트 중도에 포기하지 않는 방법
 
[KGC2011_박민근] 신입 게임 개발자가 알아야 할 것들
[KGC2011_박민근] 신입 게임 개발자가 알아야 할 것들[KGC2011_박민근] 신입 게임 개발자가 알아야 할 것들
[KGC2011_박민근] 신입 게임 개발자가 알아야 할 것들
 
증강현실을 통한 두더지잡기 게임
증강현실을 통한 두더지잡기 게임증강현실을 통한 두더지잡기 게임
증강현실을 통한 두더지잡기 게임
 
에어헌터 for kakao 포스트모템(공개용)
에어헌터 for kakao 포스트모템(공개용)에어헌터 for kakao 포스트모템(공개용)
에어헌터 for kakao 포스트모템(공개용)
 

More from MinGeun Park

[CSStudy] 코딩인터뷰 완전 분석 #7.pdf
[CSStudy] 코딩인터뷰 완전 분석 #7.pdf[CSStudy] 코딩인터뷰 완전 분석 #7.pdf
[CSStudy] 코딩인터뷰 완전 분석 #7.pdfMinGeun Park
 
[Cs study] 코딩인터뷰 완전 분석 #6
[Cs study] 코딩인터뷰 완전 분석 #6[Cs study] 코딩인터뷰 완전 분석 #6
[Cs study] 코딩인터뷰 완전 분석 #6MinGeun Park
 
[Cs study] 코딩인터뷰 완전 분석 #5
[Cs study] 코딩인터뷰 완전 분석 #5[Cs study] 코딩인터뷰 완전 분석 #5
[Cs study] 코딩인터뷰 완전 분석 #5MinGeun Park
 
[Cs study] 코딩인터뷰 완전 분석 #3
[Cs study] 코딩인터뷰 완전 분석 #3[Cs study] 코딩인터뷰 완전 분석 #3
[Cs study] 코딩인터뷰 완전 분석 #3MinGeun Park
 
[Cs study] 코딩인터뷰 완전 분석 #2
[Cs study] 코딩인터뷰 완전 분석 #2[Cs study] 코딩인터뷰 완전 분석 #2
[Cs study] 코딩인터뷰 완전 분석 #2MinGeun Park
 
[Cs study] 코딩인터뷰 완전 분석
[Cs study] 코딩인터뷰 완전 분석[Cs study] 코딩인터뷰 완전 분석
[Cs study] 코딩인터뷰 완전 분석MinGeun Park
 
[데브루키_언리얼스터디_0525] 애니메이션 노티파이
[데브루키_언리얼스터디_0525] 애니메이션 노티파이[데브루키_언리얼스터디_0525] 애니메이션 노티파이
[데브루키_언리얼스터디_0525] 애니메이션 노티파이MinGeun Park
 
[데브루키 언리얼 스터디] PBR
[데브루키 언리얼 스터디] PBR[데브루키 언리얼 스터디] PBR
[데브루키 언리얼 스터디] PBRMinGeun Park
 
[데브루키 언리얼 스터디] 스터디 안내 OT
[데브루키 언리얼 스터디] 스터디 안내 OT[데브루키 언리얼 스터디] 스터디 안내 OT
[데브루키 언리얼 스터디] 스터디 안내 OTMinGeun Park
 
[데브루키/페차쿠차] 유니티 프로파일링에 대해서 알아보자.
[데브루키/페차쿠차] 유니티 프로파일링에 대해서 알아보자.[데브루키/페차쿠차] 유니티 프로파일링에 대해서 알아보자.
[데브루키/페차쿠차] 유니티 프로파일링에 대해서 알아보자.MinGeun Park
 
[데브루키] Color space gamma correction
[데브루키] Color space gamma correction[데브루키] Color space gamma correction
[데브루키] Color space gamma correctionMinGeun Park
 
[RAPA/C++] 1. 수업 내용 및 진행 방법
[RAPA/C++] 1. 수업 내용 및 진행 방법[RAPA/C++] 1. 수업 내용 및 진행 방법
[RAPA/C++] 1. 수업 내용 및 진행 방법MinGeun Park
 
[Unite17] 유니티에서차세대프로그래밍을 UniRx 소개 및 활용
[Unite17] 유니티에서차세대프로그래밍을 UniRx 소개 및 활용 [Unite17] 유니티에서차세대프로그래밍을 UniRx 소개 및 활용
[Unite17] 유니티에서차세대프로그래밍을 UniRx 소개 및 활용 MinGeun Park
 
[데브루키160409 박민근] UniRx 시작하기
[데브루키160409 박민근] UniRx 시작하기[데브루키160409 박민근] UniRx 시작하기
[데브루키160409 박민근] UniRx 시작하기MinGeun Park
 
[160404] 유니티 apk 용량 줄이기
[160404] 유니티 apk 용량 줄이기[160404] 유니티 apk 용량 줄이기
[160404] 유니티 apk 용량 줄이기MinGeun Park
 
[160402_데브루키_박민근] UniRx 소개
[160402_데브루키_박민근] UniRx 소개[160402_데브루키_박민근] UniRx 소개
[160402_데브루키_박민근] UniRx 소개MinGeun Park
 
[Unite2015 박민근] 유니티 최적화 테크닉 총정리
[Unite2015 박민근] 유니티 최적화 테크닉 총정리[Unite2015 박민근] 유니티 최적화 테크닉 총정리
[Unite2015 박민근] 유니티 최적화 테크닉 총정리MinGeun Park
 
[150124 박민근] 모바일 게임 개발에서 루아 스크립트 활용하기
[150124 박민근] 모바일 게임 개발에서 루아 스크립트 활용하기[150124 박민근] 모바일 게임 개발에서 루아 스크립트 활용하기
[150124 박민근] 모바일 게임 개발에서 루아 스크립트 활용하기MinGeun Park
 
[141217 박민근] Visual Studio 2013의 (잘모르는) 유용한 기능들
[141217 박민근] Visual Studio 2013의 (잘모르는) 유용한 기능들[141217 박민근] Visual Studio 2013의 (잘모르는) 유용한 기능들
[141217 박민근] Visual Studio 2013의 (잘모르는) 유용한 기능들MinGeun Park
 
[데브루키/141206 박민근] 유니티 최적화 테크닉 총정리
[데브루키/141206 박민근] 유니티 최적화 테크닉 총정리[데브루키/141206 박민근] 유니티 최적화 테크닉 총정리
[데브루키/141206 박민근] 유니티 최적화 테크닉 총정리MinGeun Park
 

More from MinGeun Park (20)

[CSStudy] 코딩인터뷰 완전 분석 #7.pdf
[CSStudy] 코딩인터뷰 완전 분석 #7.pdf[CSStudy] 코딩인터뷰 완전 분석 #7.pdf
[CSStudy] 코딩인터뷰 완전 분석 #7.pdf
 
[Cs study] 코딩인터뷰 완전 분석 #6
[Cs study] 코딩인터뷰 완전 분석 #6[Cs study] 코딩인터뷰 완전 분석 #6
[Cs study] 코딩인터뷰 완전 분석 #6
 
[Cs study] 코딩인터뷰 완전 분석 #5
[Cs study] 코딩인터뷰 완전 분석 #5[Cs study] 코딩인터뷰 완전 분석 #5
[Cs study] 코딩인터뷰 완전 분석 #5
 
[Cs study] 코딩인터뷰 완전 분석 #3
[Cs study] 코딩인터뷰 완전 분석 #3[Cs study] 코딩인터뷰 완전 분석 #3
[Cs study] 코딩인터뷰 완전 분석 #3
 
[Cs study] 코딩인터뷰 완전 분석 #2
[Cs study] 코딩인터뷰 완전 분석 #2[Cs study] 코딩인터뷰 완전 분석 #2
[Cs study] 코딩인터뷰 완전 분석 #2
 
[Cs study] 코딩인터뷰 완전 분석
[Cs study] 코딩인터뷰 완전 분석[Cs study] 코딩인터뷰 완전 분석
[Cs study] 코딩인터뷰 완전 분석
 
[데브루키_언리얼스터디_0525] 애니메이션 노티파이
[데브루키_언리얼스터디_0525] 애니메이션 노티파이[데브루키_언리얼스터디_0525] 애니메이션 노티파이
[데브루키_언리얼스터디_0525] 애니메이션 노티파이
 
[데브루키 언리얼 스터디] PBR
[데브루키 언리얼 스터디] PBR[데브루키 언리얼 스터디] PBR
[데브루키 언리얼 스터디] PBR
 
[데브루키 언리얼 스터디] 스터디 안내 OT
[데브루키 언리얼 스터디] 스터디 안내 OT[데브루키 언리얼 스터디] 스터디 안내 OT
[데브루키 언리얼 스터디] 스터디 안내 OT
 
[데브루키/페차쿠차] 유니티 프로파일링에 대해서 알아보자.
[데브루키/페차쿠차] 유니티 프로파일링에 대해서 알아보자.[데브루키/페차쿠차] 유니티 프로파일링에 대해서 알아보자.
[데브루키/페차쿠차] 유니티 프로파일링에 대해서 알아보자.
 
[데브루키] Color space gamma correction
[데브루키] Color space gamma correction[데브루키] Color space gamma correction
[데브루키] Color space gamma correction
 
[RAPA/C++] 1. 수업 내용 및 진행 방법
[RAPA/C++] 1. 수업 내용 및 진행 방법[RAPA/C++] 1. 수업 내용 및 진행 방법
[RAPA/C++] 1. 수업 내용 및 진행 방법
 
[Unite17] 유니티에서차세대프로그래밍을 UniRx 소개 및 활용
[Unite17] 유니티에서차세대프로그래밍을 UniRx 소개 및 활용 [Unite17] 유니티에서차세대프로그래밍을 UniRx 소개 및 활용
[Unite17] 유니티에서차세대프로그래밍을 UniRx 소개 및 활용
 
[데브루키160409 박민근] UniRx 시작하기
[데브루키160409 박민근] UniRx 시작하기[데브루키160409 박민근] UniRx 시작하기
[데브루키160409 박민근] UniRx 시작하기
 
[160404] 유니티 apk 용량 줄이기
[160404] 유니티 apk 용량 줄이기[160404] 유니티 apk 용량 줄이기
[160404] 유니티 apk 용량 줄이기
 
[160402_데브루키_박민근] UniRx 소개
[160402_데브루키_박민근] UniRx 소개[160402_데브루키_박민근] UniRx 소개
[160402_데브루키_박민근] UniRx 소개
 
[Unite2015 박민근] 유니티 최적화 테크닉 총정리
[Unite2015 박민근] 유니티 최적화 테크닉 총정리[Unite2015 박민근] 유니티 최적화 테크닉 총정리
[Unite2015 박민근] 유니티 최적화 테크닉 총정리
 
[150124 박민근] 모바일 게임 개발에서 루아 스크립트 활용하기
[150124 박민근] 모바일 게임 개발에서 루아 스크립트 활용하기[150124 박민근] 모바일 게임 개발에서 루아 스크립트 활용하기
[150124 박민근] 모바일 게임 개발에서 루아 스크립트 활용하기
 
[141217 박민근] Visual Studio 2013의 (잘모르는) 유용한 기능들
[141217 박민근] Visual Studio 2013의 (잘모르는) 유용한 기능들[141217 박민근] Visual Studio 2013의 (잘모르는) 유용한 기능들
[141217 박민근] Visual Studio 2013의 (잘모르는) 유용한 기능들
 
[데브루키/141206 박민근] 유니티 최적화 테크닉 총정리
[데브루키/141206 박민근] 유니티 최적화 테크닉 총정리[데브루키/141206 박민근] 유니티 최적화 테크닉 총정리
[데브루키/141206 박민근] 유니티 최적화 테크닉 총정리
 

[스마트벤처 창업학교] 스타트업 프로젝트를 위한 유니티 게임 개발

  • 1. 스타트업 프로젝트를 위한 유니티 게임 개발 2014.9.18 박민근
  • 2. 알콜코더 박민근(@agebreak) NHN NEXT 게임 전공 교수 쿠키 소프트 – 모바일 격투게임 프로젝트 (Unity) 네오위즈 게임즈 - 야구의 신 개발 NTL-inc - 드래곤볼 온라인 개발 엔씨소프트 – PlayNC 빌링 서버 개발 ‘신입 게임 개발자의 서울 상경기’ (http://agebreak.blog.me) ‘초중급 게임 개발자 스터디 (데브루키)’ (cafe.naver.com/devrookie) 게임 개발자 랩소디 (팟캐스트) (http://www.podbbang.com/ch/3921) 게임 클라이언트 프로그래머 30대… 그리고 오타쿠 프로그래머... 언젠가는 우즈벡에.. 일류젼 우즈벡 지사를 설립할 예정
  • 3.
  • 4. 오늘 이야기… 1. 유니티 소개 2. 개발과 출시, 경험에 대한 이야기 (서형석) 3. UNITY 2D 살펴 보기 4. 유니티가 당신에게 알려주지 않는 진실 (이득우) 5. 유니티와 PLAYMAKER를 이용한 쉽고 빠른 게임 개발
  • 5. 유니티 처음 사용해보면.. • 간편한 에디터 • 드래그 몇 번 하고, 스크립트 작업 잠깐으로 뚝딱뚝딱!! 오오옷~!! • 간단하고 손쉬운 개발 • 필요한건 다 되어 있다. 어려운 프로그래밍 지식이 필요 없다. • 에셋스토어 짱짱~!! 필요한거 다있음!!
  • 8. UNITY 간단한 게임이나 프로토타입 만들기엔 짱!! 하지만 정말 제대로 게임 만들다보면… 제대로 이해하고 해야 되는게 한두가지가 아님.
  • 10. Unity 유니티? - 덴마크 출신의 3명의 개발자들이 개발한 게임엔진 - 사용자 친화적 인터페이스와 멀티플랫폼 지원의 용이함으로 전 세계적 으로 인기를 얻게됨 - 최근 PSP Vita, PS4용 유니티를 무료로 하는 등 매우 공격적인 활보를 보임 (2014.7. 현재까지는 US, Mexico, Central America, South America, Canada 만 지원)
  • 11. Unity 유니티 사용자가 많은 이유 - 툴 형태로 제공되는 사용자 친화적 인터페이스 - 오픈 커뮤니티와 어셋스토어 - 비교적 저렴했던 가격(무료로도 사용 가능)
  • 12. Unity – 개발된 프로젝트 ● 템플런 - 이만지 스튜디오(Imangi Studios)에서 개발한 무한 달리기 게임 - 전 세계 5억다운로드를 이룬 게임
  • 13. Unity – 개발된 프로젝트 ● 쉐도우 건(Shadow Gun) - 매드핑거 개발 - 유니티의 기술력을 내세우기 위해 제작된 게임
  • 14. Unity – 개발된 프로젝트 ● 언데드 슬레이어(Undead Slayer) - 하이디어 김동규 대표 1인 개발. - 유니티를 통한 1인 개발의 대표적인 사례
  • 15. Unity – 개발된 프로젝트 ● 게임 외의 분야
  • 16. Unity – 용어정리 - 씬(Scene) ▷ 게임의 장면 또는 상태를 유니티에서 관리하는 단위 ▷ 씬 관리를 통해서 게임의 레벨 및 상태를 구분 - 어셋(Asset) ▷ 엔진에서 사용되는 모든 자원(Resources) ▷ Resources : 3d model, audio, texture etc..
  • 17. Unity – 용어정리 - 게임오브젝트(GameObject) ▷ 어셋의 기능을 처리하기 위한 오브젝트 ▷ 모든 게임오브젝트는 게임 공간상에 존재하기 위해 Transform 컴퍼넌트를 지님 - 스크립트(Script)와 컴퍼넌트(Component) ▷ 구현된 각각의 기능들을 컴퍼넌트라 호칭 ▷ 사용자들은 컴퍼넌트를 구현하고 게임오브젝트에 추가하여 기능을 동작시킴
  • 18. Unity – 용어정리 - 프리팹(Prefab) ▷ 게임오브젝트에 구성된 기능들을 패키지화 시킨 어셋 ▷ 씬에 배치된 프리팹들은 항상 원본 데이터를 기준으로 동작하나, 필요에 따라 해당 링크를 끊을 수 있음
  • 19. Unity – 사용자 인터페이스
  • 20. Unity – 사용자 인터페이스
  • 21. Unity – 사용자 인터페이스 - 씬(Scene) 뷰 ▷ 3D 세상을 편집하기 위한 편집 뷰 ▷ 오브젝트 배치, 회전, 크기 조절 등 게임을 개발함에 있어 항상 주시하게 되는 뷰 - 게임(Game) 뷰 ▷ 게임이 구성되고 최종적으로 보여지는 뷰 ▷ 이 뷰를 통해 실제 개발된 게임의 모습을 확인하거나 컨트롤이 가능
  • 22. Unity – 사용자 인터페이스 - 계층(Hierachy) 뷰 ▷ 씬뷰 상에 배치된 수많은 오브젝트의 목록을 표시하는 리스트 뷰 ▷ 게임상의 오브젝트 관리를 용이하게 하기 위해 계층구조로 관리를 가능케 하는 뷰 - 프로젝트(Project) 뷰 ▷ 게임을 구성하는 다양한 어셋을 관리하기 위한 뷰 ▷ 유니티 엔진에서 유일하게 하드디스크와 링크된 뷰
  • 23. Unity – 사용자 인터페이스 - 인스펙터(Inspector) 뷰 ▷ 선택된 기능 또는 게임오브젝트의 컴퍼넌트 내용을 보여주는 에디터 뷰 ▷ 코드 수정 없이 인스펙터 뷰 상에 보여지는 값을 수정하여 테스트 가능
  • 26. [UNITE2014] 개발과 출시 경험에 대한 이야기
  • 27. 이것은 단지 경험에 관한 이야기입니다.
  • 28. 인원 : 프로그래머 2 명 2012. 2. [쉐도우진 닌자보이] 출시. 2012. 10. [셀레스티얼 리그] 개발. 2014. 2. [세이빙 몬스터즈 for AfreecaTV] 출시.
  • 29. 강연의 목적 너무 힘들었기 때문에 이야기를 해보고 싶었습니다.
  • 30. SAVING MONSTERS 지금부터 이 게임에 대한 개발 경험을 나누고자 합니다.
  • 31. 게임 개발 과정 2012. 11. 개발시작 - 좋아하는 게임을 만들자
  • 32. 게임 개발 과정 2012. 11. 개발시작 가제 – 인피니티 타워
  • 33. 게임 개발 과정 2012. 11. 개발시작 2013. 3. 프로토 타입 완성
  • 34. 게임 개발 과정 2012. 11. 개발시작 2013. 3. 프로토 타입 완성 2013. 4. UNITE 2013 바람 주자 3D ?
  • 36.
  • 37. 게임 개발 과정 2012. 11. 개발시작 2013. 3. 프로토 타입 완성 2013. 4. UNITE 2013 2013. 5. 대격변 ! 1) 카메라 구조 변경 2) 3 Line 구성 3) 통쾌함을 주자! 4) 타워의 제거
  • 38. 게임 개발 과정 2012. 11. 개발시작 2013. 3. 프로토 타입 완성 2013. 4. UNITE 2013 2013. 5. 대격변 ! 2013. 6. 고난(苦難)의 시기
  • 39.
  • 40.
  • 42. 게임 개발 과정 2012. 11. 개발시작 2013. 3. 프로토 타입 완성 2013. 4. UNITE 2013 2013. 5. 대격변 ! 2013. 6. 고난(苦難)의 시기 2013. 7. 퍼블리싱 계약
  • 43. 게임 개발 과정 2012. 11. 개발시작 2013. 3. 프로토 타입 완성 2013. 4. UNITE 2013 2013. 5. 대격변 ! 2013. 6. 고난(苦難)의 시기 2013. 7. 퍼블리싱 계약 2013. 10. FGT
  • 44. 게임 개발 과정 2012. 11. 개발시작 2013. 3. 프로토 타입 완성 2013. 4. UNITE 2013 2013. 5. 대격변 ! 2013. 6. 고난(苦難)의 시기 2013. 7. 퍼블리싱 계약 2013. 10. FGT 2014. 2. 아프리카 TV 출시
  • 45. 출시 직전 여유로운 시간을 즐기다 진실은 폭풍 전야..
  • 46. 출시 직후 출시에 대한 행복감 출시 소식 전달
  • 47.
  • 49. 출시 직후 무한 로딩 아프리카 TV 장애/버그 신고 발췌
  • 50. 출시 직후 무한 로딩 - 원인 1. AWS 설정 실수 2. AWS 웹 서버 재부팅을 하려 했으나..
  • 51.
  • 52. 출시 직후 무한 로딩 - 대응 1. 퍼블리셔 분들을 토요일에 출근하시도록 하여 긴급 패치… 다시 한번 사과 드리며, 빠른 대응에 진심으로 감사 드립니다..
  • 53. 발생한 문제들 메모리 치트 - 원인 1. 경험에 대한 자만 2. 예상치 못한 해킹 방식
  • 54. 발생한 문제들 메모리 치트 - 대응 1. 치트 유저 밴 2. 치트 프로그램 리스트 갱신 3. 메모리 치트 예방책 강화 4. 서버단에서 주요 로직 처리
  • 55. 발생한 문제들 DB 문제 - 상황 1. 한 순간 치트 유저수가 급격히 증가 2. 모든 데이터 수치가 똑같다?!
  • 56. 발생한 문제들 DB 문제 - 사실상 가장 심각했던 문제 1. 원인 파악이 안 되는 상황…
  • 57. 발생한 문제들 DB 문제 - 그럼 어떻게 문제를 파악했나? 1. 메모리 치트 대응 중 대화를 통한 한 순간의 번뜩임 “어?! 이거 알 것 같아!!” 사실상 운이 좋았습니다.
  • 58. 발생한 문제들 DB 공격 - SQL Injection
  • 59. 발생한 문제들 DB 공격 - 대응은 했지만.. 확인을 하는 과정이 어려웠다..
  • 60. 발생한 문제들 웹 서버 파일 업로드 문제 - 파일 서버로 파일 전송시 빈 파일로 올라가는 문제발생 - 웹 서버가 제거된 상황과 동일한 상황…
  • 61.
  • 62. 발생한 문제들 웹 서버 파일 업로드 문제 - 대응은? 1. 친구에게 질의
  • 63. 발생한 문제들 웹 서버 파일 업로드 문제 - 친구의 대답 “로그를 살펴봐~” - 그리고 찾은 이상한 점 “어?!! 로그파일 용량이 6기가네?”
  • 64. 발생한 문제들 웹 서버 파일 업로드 문제 - 원인 웹 서버 용량 초과 문제 php 에러가 지속적으로 로그를 생성
  • 65.
  • 66. 발생한 문제들 렉 이슈 - 몇몇 기기에서 게임이 불가능 할 정도의 렉이 간혹 발생 - 최신 기종에서 특히 발생
  • 67. 발생한 문제들 렉 이슈 - 원인 추정
  • 68. 발생한 문제들 렉 이슈 - 대응 Unity 4.3 ▶ Unity 4.2 Everyplay 제거
  • 70. 국내 출시로 얻은 것들 10만 이상의 다운로드 평점 4.1 BM 구조의 문제 파악 업데이트에 대한 빠른 피드백 - 약 4400개의 소중한 의견
  • 71. 알수 없던 것들 게임의 사용자들
  • 72. 잘못한 부분 생각지 못하게 길어진 개발 기간 3D 게임 개발 비용 산정 오류 서버 지식의 부재 BM 설계 해킹에 대한 대응 부족 팀내 아티스트의 부재
  • 73. 앞으로의 계획 해외 출시 준비 규모에 맞는 게임 개발
  • 76.
  • 77. Unity 2D 살펴보기 2013.12.14 초중급 게임개발자 스터디 <데브루키> 알콜코더 박민근
  • 80. 근데 테스트 해본 결과 PlayMaker만큼은 못함..ㅡ.ㅡ;; 애니메이션 State만 제어 가능 할 뿐.. http://www.slideshare.net/gukhwanji/unity2d
  • 81. 1.2D Project의 생성 2.2D Sprite Resource 3.Sprite Slice 4.Sprite 애니메이션 5.2D 스켈레톤 애니메이션 6.Animator 7.2D 피직스 컴포넌트 (물리 충돌)
  • 82. 시연과 동영상 위주 입니다. ^^~~
  • 85. 1.2D Project의 생성 2.2D Sprite Resource 3.Sprite Slice 4.Sprite 애니메이션 5.2D 스켈레톤 애니메이션 6.Animator 7.2D 피직스 컴포넌트 (물리 충돌)
  • 87. Scene – 2D Mode 버튼 추가 • Scene View를 2D 모드로 고정 • 무브툴을 2D 이동으로 변경 • Picking이 알파 기반으로 동작 • Sprite를 씬에 끌어다 놓으면, 새로운 GameObject 생성
  • 90. 스프라이트 에디터 Texture Atlas를 관리하고, 각각의 스프라이트로 Slice 한다
  • 92. 스프라이트 에디터 - Slice Atlas를 각각의 스프라이트로 자른다. 크기를 설정할 수 있다. 중심 위치(Pivot) 설정. Trim을 이용해서 자동 설정 가능!! Wow!~!~!
  • 94. 스프라이트 Slice Slice 된 스프라이트는 따로 사용 할 수 있고, 애니메이션으로 사용할 수 있다.
  • 99. 스프라이트 애니메이션 표준 도프 시트(dope Sheets) 모양으로 애니메이션을 설정 스프라이트 체인지, 이동, 회전등 모든 속성을 변경하여, 애니메이션 가능
  • 100. 스프라이트 애니메이션 여러 개의 스프라이트를 선택 후, 씬에 끌어다 놓으면, 스프라이트 애니메이션 자동 생성!!
  • 101. 스켈레톤 애니메이션 앞의 Unite 2013 2D Workflows 동영상 참조
  • 107. Animator 각 상태(State) 애니메이션 세트를 정의 각 상태의 변경 조건을 정의 한다
  • 108. 간단한 Unity 2D 프로젝트 샘플 트리거 이벤트 트리거 이벤트 트리거 발동 -> State 변경
  • 109. 간단한 Unity 2D 프로젝트 샘플 http://agebreak.url.ph/Bin.html
  • 110. 간단한 Unity 2D 프로젝트 샘플 http://agebreak.url.ph/Puyon_Web.html
  • 111. Unity2D의 장점 • 추가 플러그인(2D ToolKit)의 구입 없이, 2D 게임 개발 가능 • 유니티의 기능이기 때문에, 완벽하게 유니티와 통합 • 2D Physics 가 유니티 자체에서 잘 지원 되어 있음 • Sprite의 관리가 용이함 (Sprite Editor, Sprite Packer) • 현재로서는 버그가 좀 있긴 하지만, 앞으로 발전 가능성
  • 112. 참고자료 • Unity2D 소개(KGC13)_지국환 http://www.slideshare.net/gukhwanji/unity2d • Unity2D Workflowhttp://www.youtube.com/watch?v=B1F6fi04qw8&list=PL8F6B414B065FDE58&index=19 • Unity2D 튜토리얼(한글 자막) http://www.youtube.com/watch?v=ksoGW2j2E0Q&list=WL60F612FCDB928D04 • 유니티 4.3 릴리즈 노트 http://korea.unity3d.com/content/content.php?cont=new_unity10 • Unity2D 샘플 1 (by 알콜코더) http://agebreak.url.ph/Bin.html • Unity2D 샘플 2 (by 알콜코더) http://agebreak.url.ph/Puyon_Web.html
  • 114.
  • 115. FSM/AI 등을 에디터에서 드래그&드랍만으로 제작할 수 있는 비주얼 스크립팅 애드온
  • 116.
  • 117.
  • 118. 어떤 물건인지.. 보고 이야기 합시다~
  • 119. 이걸로 뭘 할 수 있을까요?
  • 120.
  • 121.
  • 122.
  • 123.
  • 124.
  • 125.
  • 126.
  • 127.
  • 128.
  • 129.
  • 130.
  • 131.
  • 132.
  • 133.
  • 134.
  • 136.
  • 137. 주요 개념 • FSM • STATE • ACTION • EVENT & TRANSITION • VARIABLE
  • 138. FSM
  • 139. FSM • GameObject에 부착되는 PlayMaker 컴포넌트 • PlayMaker Browser에서 FSM을 마우스 우측클릭으 로 생성하면 자동으로 생성된다. • 한 FSM내에 여러 스테이트와 Action들을 정의한다
  • 140. FSM • 한 오브젝트내에 복수개의 FSM 컴포넌트 생성 가능 • 각가의 FSM이 일종의 레이어처럼 사용 할 수 있다. • FSM 1 – 캐릭터의 상태 변화 제어 • 축소, 확대, 변신, 무적… • FSM 2 – 캐릭터의 행동 변화 제어 • 이동, 달리기, 점프, 공격…
  • 143. STATE • 오브젝트의 각 상태를 정의한다 • IDLE, 이동, 점프, 공격, 피격, 죽음… • 각 상태는 그 상태에서 작동하는 Action들을 추가할 수 있다. (상태에 따라 Action이 없을 수도 있다) • 설정된 EVENT가 발생하면, 다른 State로 전이 (Transition)한다.
  • 144. ACTION
  • 145. ACTION • State안에 설정된 실제 작동하는 행동 • 텍스쳐 변경, 마우스 클릭, 오브젝트 이동 및 회전등 모든 기본적인 100여개가 넘는 Action들이 제공 된다. • 게임에 맞는 Custom Action을 쉽게 제작하여 추가할 수 있다.
  • 146. ACTION • 복잡한 게임에서 프로그래머의 역할은 Custom Action을 코딩하여 제작하여 넘겨주면, 다른 개발자들 이 사용할 수 있다. • Action은 전부 C#코드로 되어 있고, 소스가 포함되어 있기 때문에, Action들의 코드만 봐도 유니티의 기본 스크립트들을 참고할 수 있는 최고의 예제 코드가 된 다.
  • 147. EVENT
  • 148. EVENT • 각 스테이트에서 정의한 이벤트가 발생하면, 그 이벤 트에 연결된 스테이트로 전이된다. • 이벤트는 기본적인 시스템 이벤트도 있고, Event Browser를 통해서, 커스텀 이벤트를 추가할 수 있다. • 커스텀 이벤트는 FSM 제어에 따라서 호출할 수 있다.
  • 150. Variable • FSM에 체크등에 사용되는 변수들을 추가하고, 정의 할 수 있다. • 오브젝트를 체크할때 사용하는 GameObject 변수 • 위치와 방향들 – Vector 변수 • String, Int, Texture 등의 변수를 모두 추가하고 사용할 수 있다.
  • 151.
  • 152.
  • 153.
  • 154.
  • 155. 실제 사용예 : 인체 전시전
  • 156. 실제 사용예 : 인체 전시전
  • 157.
  • 158. 실제 사용예 : 피격 상태
  • 163. Q & A