24
에코노베이션 3차 세미나 교안 주제 : 3D 게임 개발과 미니 스크럼을 통한 탄력적 개발.

에코노베이션 3차 세미나 교안

Embed Size (px)

Citation preview

Page 1: 에코노베이션 3차 세미나 교안

에코노베이션 3차 세미나 교안

주제 :

3D 게임 개발과 미니 스크럼을 통한 탄력적 개발.

Page 2: 에코노베이션 3차 세미나 교안

ㅡ.,ㅡ’

Page 3: 에코노베이션 3차 세미나 교안

AGENDA

상품개발

정보

루나 디펜스

개발 커뮤니션

Page 4: 에코노베이션 3차 세미나 교안

KEYWORD

상품개발을 위한 접근

알아 가는 지식들

나만의 NITCH MARKET(틈새 시장) 들여다 보기

최적화 요구와 마켓 지배 디바이스.

루나 디펜스 개발 이야기

알고리즘적 최적화와 게임시스템 수정을 통한 최적화.

개발 커뮤니케이션 도구와 빌드 스프린트

Page 5: 에코노베이션 3차 세미나 교안

상품개발 …나만의 NITCH MARKET(틈새 시장) 들여다 보기

남들보다 3년 가까이 늦게 시작했는데…

홍보는 어떻게 하지…?

해 본 거라고는 온라인 게임 개발 뿐인데…

온라인 게임 개발사의 프로모션 플레폼 역할을 할 수 있겠다.

크로스 마케팅 이라면 우리 엡 게임도 홍보가 될 거야.

Page 6: 에코노베이션 3차 세미나 교안

상품개발 …나만의 NITCH MARKET(틈새 시장) 들여다 보기

EVENT Planning Part1.

LUNA USER

INSTALL APP

Playin

g

GAME

Social Posting

Constantly

exposure

*Incoming new

Users

Update News

LUNA

APP

*Update news via

Loading image

EVENT

MISSION

COMPLETE

Potential

Users

Page 7: 에코노베이션 3차 세미나 교안

알아가는 지식들 …최적화 요구와 마켓 지배 디바이스.

5 대

3대

0 대

1 대

국내 G모 모바일 퍼블리셔 테스트 기기 (2011 년 6월 2일.)

처음 아이페드용 으로 개발 하려 했으나 지배적 디바이스는 3GS

Page 8: 에코노베이션 3차 세미나 교안

루나 디펜스 알고리즘적 최적화와 게임시스템 수정을 통한 최적화.

루나 디펜스

자원을 재사용 하여 만들고 있는

루나 소셜 알피지 프로토타이핑

Page 9: 에코노베이션 3차 세미나 교안

루나 디펜스 알고리즘적 최적화와 게임시스템 수정을 통한 최적화.

디버그 로그의 활용.

폴리곤 최적화 , 드로우 콜

스킨드 메시 노드의 최적화

게임시스템 계획을 통한 객채수 컨트롤 최적화

동적 할당 피하기 / 가비지 콜렉팅을 최소화.

빠른 검색 사용을 위한 Map

아이폰 게임 스테이지 라도 오쿨루젼 컬링 사용하기.

Page 10: 에코노베이션 3차 세미나 교안

루나 디펜스 알고리즘적 최적화와 게임시스템 수정을 통한 최적화.

디버깅 하기.

윈도우 상에서의 디버깅.

IDE 의 지원.

★ Visual Studio 2010 or Express 2010

★ MONO Develop 2.4 에서의 디버깅.

Visual Studio 2010.

★ 문법적 오류 검사

★ 인텔리센스 지원

★ 디버깅 안됨

★ 게임프로그래밍 숙련자의 경우 함수의 시작과 끝에

디버그 로드를 성실하게 달아 주는 것이 좋음.

MONO Develop.

★ Break point , Break trace

★ Attach process for Device remote debugging

★ iOS , Android Remote 디버깅 가능.

Page 11: 에코노베이션 3차 세미나 교안

루나 디펜스 알고리즘적 최적화와 게임시스템 수정을 통한 최적화.

디버깅 하기.

로그 모니터링.

Page 12: 에코노베이션 3차 세미나 교안

루나 디펜스 알고리즘적 최적화와 게임시스템 수정을 통한 최적화.

디버깅 하기.

로그 모니터링.

Visual Studio 개발 환경을 선호 하는 개발자에게 편리 함.

주석 처리 보다 함수의 시작과 끝 또는 중간에 작성 할 것.

다른 팀원과 공동 개발 경우에도 디버그 하여 함수를 찾아 들어 가기 전에 문제가 발견 된 함수를 빨리 찾아 갈 수 있음.

Page 13: 에코노베이션 3차 세미나 교안

루나 디펜스 알고리즘적 최적화와 게임시스템 수정을 통한 최적화.

디버깅 하기.

모노 디벨롭을 이용한 원격 프로세스 디버깅.

맥OS 또는 윈도우 환경에서는 일반적인 개발 코드 디버깅

만 가능.

실제로 디바이스에서 발생 하는 오류 추적 디버깅 제공.

Page 14: 에코노베이션 3차 세미나 교안

루나 디펜스 알고리즘적 최적화와 게임시스템 수정을 통한 최적화.

디버깅 하기.

모노 디벨로을 이용한 원격 프로세스 디버깅.

Page 15: 에코노베이션 3차 세미나 교안

루나 디펜스 알고리즘적 최적화와 게임시스템 수정을 통한 최적화.

디버깅 하기.

폴리곤 최적화 , 드로우 콜

스킨드 메시 노드의 최적화

1 웨이브(우리 게임에서는 스테이지 개념이다.) 에서 20 마

리 까지 스키닝 된 몬스터가 나와야 하기 때문에 폴리곤 옵

티마이징과 스킨드 본의 개수 최적화가 필요했다.

객체 당 30개 이하의 본.

500개 이하의 폴리곤

화면상의 상태 표현을 위해 Texture Only Shader 를 포기.

Mobile diffuse Shader + vertex colored Shader사용.

Cull off 쉐이더 처리 보다 양면 처리는 DCC 툴에서 미리

면을 복사 + Flip 하여 사용 하는 것이 좋다.

다만 애초에 이런 디자인을 하지 않는 것이 좋겠다.

Page 16: 에코노베이션 3차 세미나 교안

루나 디펜스 알고리즘적 최적화와 게임시스템 수정을 통한 최적화.

서버에서

벗어나니

디바이스가

사람 잡네.

폴리곤 최적화 , 드로우 콜

스킨드 메시 노드의 최적화

Draw Call 을 최소화 하는 것에 집중 하라.

프레임에 가장 큰 비용을 지불 하는 것은 스킨드 메시 와 메

터리얼 드로우 콜.

같은 메터리얼을 사용 하는 객체는 그룹으로 묶어 static

처리 해 주면 Draw Call 을 줄일 수 있다.

눈에 보일 듯 말듯 한 개체는 과감이 포기.

★ 선행 키워드 ★게임 설계 시 부터 자원의 비용 지불에 대한 벨런스를 생각

하고 합의 할 것.

Page 17: 에코노베이션 3차 세미나 교안

루나 디펜스 알고리즘적 최적화와 게임시스템 수정을 통한 최적화.

서버에서

벗어나니

디바이스가

사람 잡네.

오브젝트 객체 검색을 C# dictionary (map) 을 사용하여

foreach 로…

불필요한 콜리션 처리 최소화.( EZ GUI )

UIButton.cs 에서 콜리션 생성/반영 함수 제거

UIButtonNoColl.cs 형태로 이름 변경하여 저장.

Inspectors 에 UIButtonNoCollInspector.cs 를 등록~

객체의 생성과 파괴는 최대한 피하도록… 프리팹 메니져

사용하여 미리 생성 해 두자.

Page 18: 에코노베이션 3차 세미나 교안

루나 디펜스 알고리즘적 최적화와 게임시스템 수정을 통한 최적화.

서버에서

벗어나니

디바이스가

사람 잡네.

씬 단위 로드와 프리팹 단위 관리.

씬 아래의 하위 콤포넌트의 집합을 프리팹으로

통합 하여

활성 / 비활성 제어로 데이터 로드를 최소화.

구조적인 설계를 검토 하여 씬 단위 로딩이 일어 나지 않도

록 한다.

Page 19: 에코노베이션 3차 세미나 교안

루나 디펜스 알고리즘적 최적화와 게임시스템 수정을 통한 최적화.

산 넘어 산.

ㅡ.,ㅡ

디바이스에서의 한글 입출력.

유니티는 모바일 다이나믹 폰트 지원 안함.

그럼 우짜지…;;

3D Text 에 유니코드 폰트 쓰면 되나?

아놔 … 한글 유니코드 2만개가 넘는디…; 텍스쳐 크기 우

짤?

동영상을 보시면 나름 간단히 해결 하는 법을 아실 수 있습

니다.

Page 20: 에코노베이션 3차 세미나 교안

개발 커뮤니케이션과 스프린트 빌드

개발인력 분포

PD 1 프로그래머 1 그래픽 1

전체 진행.

외부 업무협력 진행.

예산 집행 진행.

스크럼 마스터.

인터페이스 제작.

애니메이션 제작.

유니티 어셋 통합 오

쏘링.

전체 프로그래밍

개발.

외부 API 분석

폴리곤 최적화.

그래픽 어셋 작성.

어셋 서버(형상관리 툴) 통한 유연한 자원 관리와 버전 관리.

Page 21: 에코노베이션 3차 세미나 교안

개발 커뮤니케이션과 스프린트 빌드

통합 마일스톤

3일 빌드 백로그 분석 3일 빌드 백로그 분석

스몰 스크럼

지속적 반복 프로그래밍과 구현

월간 스프린트 도달

전형적이지만 잊어서는 안될 것!

Page 22: 에코노베이션 3차 세미나 교안

질문과 답변

Page 23: 에코노베이션 3차 세미나 교안

질문과 답변

질문이 없기를 간절히 기도 드립니다. ㅜㅜ;

Page 24: 에코노베이션 3차 세미나 교안

마치며…

Human relationship 과 Topology

미분기하위상수학에서 토폴로지의 개념을 예로 든 고무판 위의 사각형 그림 이라는 것이 있다.

사각형 그림을 원이 될 수 있다는 예로 고무판은 찢어 지지 않는다는 조건을 두고 같은 힘으로 늘여 보면 사각형은 원이 된다.

여기서 나는 사람간의 교감관계가 동일한 끌어 당김으로 상호 관계가 원만해 질 수 있는 것을 이해 했다.

... ‘뫼비우스의 띄’ 처럼 사람과 사람의 관계가 서로 이어져 있는 것역시 토폴로지 라고 볼 수 있다.

함께 일 하는 사람과 내가 서로 끌어 당김이 같아야 원만한 개발과교감을 이루어 낼 수 있는 것이다.

누구 한쪽이 더 세면 그 원은 바른 원이 되지 않기 때문이다.

- 이군.-