cocos2 d 모바일 게임 개발하기 & 게임...

37
Cocos2D 모바일 게임 개발하기 개발환경을 중심으로 인디 게임 개발자 스터디 이평섭 ( [email protected] )

Upload: alex-kang

Post on 31-May-2015

1.324 views

Category:

Technology


6 download

DESCRIPTION

인디 게임 개발자 스터디 1회 오픈 세미나 "Cocos2 d 모바일 게임 개발하기 & 게임 서비스 준비를 위한 tip" by 이평섭

TRANSCRIPT

Page 1: Cocos2 d 모바일 게임 개발하기 & 게임 서비스 준비를 위한 tip

Cocos2D 모바일 게임 개발하기 개발환경을 중심으로

인디 게임 개발자 스터디 이평섭 ( [email protected] )

Page 2: Cocos2 d 모바일 게임 개발하기 & 게임 서비스 준비를 위한 tip

http://www.cocos2d-x.org/wiki/Relationships_in_Cocos2d_Family

Page 3: Cocos2 d 모바일 게임 개발하기 & 게임 서비스 준비를 위한 tip

http://www.cocos2d-x.org/wiki/Relationships_in_Cocos2d_Family

Page 4: Cocos2 d 모바일 게임 개발하기 & 게임 서비스 준비를 위한 tip

http://www.cocos2d-x.org/wiki/Supported_Platforms_and_Programming_Languages

Page 5: Cocos2 d 모바일 게임 개발하기 & 게임 서비스 준비를 위한 tip

Cocos2d 개발 Kit

배포환경 !개발환경

Android iOS/OSX MS Windows

MS Windows

Android SDK Android NDK

CygWin Eclipse

Android Studio

Visual Studio

OSX Mac

Android SDK Android NDK

Eclipse Android Studio

iOS SDK Xcode

Linux

Android SDK Android NDK

Eclipse Android Studio

Page 6: Cocos2 d 모바일 게임 개발하기 & 게임 서비스 준비를 위한 tip

버전 관리

• http://tortoisesvn.net

!

• http://www.visualsvn.com/

!

!

• github.com

• yobi.io

Page 7: Cocos2 d 모바일 게임 개발하기 & 게임 서비스 준비를 위한 tip

Cocos2d Sample Demo

• Cocos2d-x : iOS, Android

• Cocos2d-iPhone : iOS

Page 8: Cocos2 d 모바일 게임 개발하기 & 게임 서비스 준비를 위한 tip

Cocos2d 개발 이슈• 멀티플랫폼 • 해상도 • UI

• 애니메이션 • In App Purchase

• Unique ID

Page 9: Cocos2 d 모바일 게임 개발하기 & 게임 서비스 준비를 위한 tip

멀티플랫폼

• iOS 7

Page 10: Cocos2 d 모바일 게임 개발하기 & 게임 서비스 준비를 위한 tip

멀티플랫폼

• Android

http://upload.wikimedia.org/wikipedia/commons/7/7e/Android_historical_version_distribution.png

Page 11: Cocos2 d 모바일 게임 개발하기 & 게임 서비스 준비를 위한 tip

Cocos2d-x Multi Resolution

http://www.cocos2d-x.org/wiki/Multi_resolution_support

Page 12: Cocos2 d 모바일 게임 개발하기 & 게임 서비스 준비를 위한 tip

iOS 해상도

http://www.koboldtouch.com/display/IDCAR/Developing+for+Multiple+Screen+Resolutions

Page 13: Cocos2 d 모바일 게임 개발하기 & 게임 서비스 준비를 위한 tip

UI

http://cocosbuilder.com/ http://code.zynga.com/2012/10/creating-a-game-with-cocosbuilder/

Page 14: Cocos2 d 모바일 게임 개발하기 & 게임 서비스 준비를 위한 tip

애니메이션

http://esotericsoftware.com/

Page 15: Cocos2 d 모바일 게임 개발하기 & 게임 서비스 준비를 위한 tip

Atlas

http://www.codeandweb.com/texturepacker

Page 16: Cocos2 d 모바일 게임 개발하기 & 게임 서비스 준비를 위한 tip

iOS In App Purchase

https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/StoreKitGuide/Introduction.html

Page 17: Cocos2 d 모바일 게임 개발하기 & 게임 서비스 준비를 위한 tip

Android In App Billing

http://developer.android.com/google/play/billing/billing_overview.html

Page 18: Cocos2 d 모바일 게임 개발하기 & 게임 서비스 준비를 위한 tip

Unique ID

Unique ID Type iOS Android

디바이스 제조사의 ID

디바이스 기반 UDID 사용시 앱 심사 리젝사유

OS 버전별로 다양 OS 버전별 호환성 이슈

Universally Unique Identifier

OS 기본 제공 identifierForVendor

Universally Unique Identifier 구현하여 사용

Wifi Mac AddressiOS에서 Mac Address값이 부여된 값으로 나오지 않음 (iOS7 02:00:00:00:00:00)

Wifi가 없는 디바이스가 있어, 이 경우는 불가

OS 제공 플랫폼 GameCenter google play account

3rd Party ID소셜 플랫폼에서 제공하는 계정기반의 고유 ID 사용

ex) Kakao, Facebook, OpenFeint

Page 19: Cocos2 d 모바일 게임 개발하기 & 게임 서비스 준비를 위한 tip

개발 마무리

• 소셜 플랫폼 적용하기 • Kakao, Line, Wechat > 플랫폼 사업자가 선정

• Facebook, OpenFeint, Twitter > 누구나 사용

• Apple GameCenter > iOS

• Google Play Games > Android

Page 20: Cocos2 d 모바일 게임 개발하기 & 게임 서비스 준비를 위한 tip

개발 마무리

• 마케팅 플랫폼 적용하기 • http://www.flurry.com/

• http://www.playhaven.com/

• http://www.google.com/analytics/

Page 21: Cocos2 d 모바일 게임 개발하기 & 게임 서비스 준비를 위한 tip

Q & A

Page 22: Cocos2 d 모바일 게임 개발하기 & 게임 서비스 준비를 위한 tip

게임 서비스 준비를 위한 Tip

인디 게임 개발자 스터디 이평섭 ( [email protected] )

Page 23: Cocos2 d 모바일 게임 개발하기 & 게임 서비스 준비를 위한 tip

서비스 전략

• 서비스 정책 무점검 점검 !!

• 마일스톤 업데이트 이벤트

소셜플랫폼은 제공하지 않음알아서구현.

Page 24: Cocos2 d 모바일 게임 개발하기 & 게임 서비스 준비를 위한 tip

서비스 전략

• 고객대응 App Store Page Facebook, Twitter Cafe, Blog Email 기타 !

• 운영툴

소셜플랫폼은 제공하지 않음알아서구현.

Page 25: Cocos2 d 모바일 게임 개발하기 & 게임 서비스 준비를 위한 tip

앱스토어 심사 준비

• 심사 체크 사항 iOS

https://developer.apple.com/appstore/guidelines.html https://developer.apple.com/icloud/documentation/data-storage/

Android http://play.google.com/about/developer-content-policy.html

!• 심사 시점

미국 휴가시즌에 심사하는 경우 일정이 더 길어짐. iOS, Android 심사 통과 시점이 다름.

평균적으로 iOS 심사기간 > Android 심사기간 첫 심사기간 > 업데이트 심사 기간

• 스토어에 표시되는 게임 타이틀 심사 중 변경 안됨

Page 26: Cocos2 d 모바일 게임 개발하기 & 게임 서비스 준비를 위한 tip

앱스토어 심사 준비

• 심사 리젝 회피하기 심사시에는 disable 하고, 서비스 시작시에는 enable하기 ex) 서버에서 상태값을 설정하고, 이를 클라이언트가 연동하여 회피 !!

• 사례 ★ iOS ★ 게임내 저장소는 Library - Cache 폴더 사용 ★ 로그인 없이도 게임 진행이 되게 하기 ★ 캐시 구매 아이템 다른 사용자에 전달불가

Page 27: Cocos2 d 모바일 게임 개발하기 & 게임 서비스 준비를 위한 tip

게임 서버 & 클라이언트 준비 #1

● 서비스 시작 전(개발 중 & 개발 완료) !!!!!

!!!!!!!

● 서비스 시작 라이브 서버 & 심사를 통과한 클라이언트로 서비스 시작

개발 알파 베타

라이브

개발 = 알파 = 베타

라이브(앱스토어 심사용)

Page 28: Cocos2 d 모바일 게임 개발하기 & 게임 서비스 준비를 위한 tip

게임 서버 & 클라이언트 준비 #2

● 서비스 후(업데이트 개발 순서)

개발

알파

베타

라이브 라이브 서버 & 심사 통과 클라이언트

라이브 서버와 동일한 상태의 서버로 업데이트시 앱스토어 심사용으로 사용 클라이언트는 앱스토어 심사 제출용으로 사용

개발 완료된 서버 & 클라이언트

개발 중인 서버 & 클라이언트

Page 29: Cocos2 d 모바일 게임 개발하기 & 게임 서비스 준비를 위한 tip

서비스 상태 관리

점검

업데이트

이벤트

서비스 상태

점검 기간 알림 / 점검시 게임진행 가능여부 / 게임 진행 중 점검 상태 진입 처리

App Upate : 앱스토어 연결 / 게임 진행 가능 여부 In App Update : 앱 내부에서 업데이트 진행 / 업데이트 완료 후 게임 진행

특정 기간에 진행되는 이벤트 알림 게임 컨텐츠에 따라, 앱 내부, 외부 이벤트 연동 처리가 달라짐.

서비스 정상적인 게임 플레이가 되는 상태

Page 30: Cocos2 d 모바일 게임 개발하기 & 게임 서비스 준비를 위한 tip

서비스 상태 흐름 예 #점검

클라이언트 서비스 상태 관리 서버

시작시 상태서버에 접속하여 상태를 받아 옴.점검

점검 상태

점검 UI 표시

서비스 상태 체크

시작

Page 31: Cocos2 d 모바일 게임 개발하기 & 게임 서비스 준비를 위한 tip

서비스 상태 흐름 예 #In App 업데이트

클라이언트서비스 상태 관리 서버

시작시 상태서버에 접속하여 상태를 받아 옴.

업데이트

업데이트 상태

업데이트 서버

업데이트 가져오기

업데이트 버전관리

업데이트 진행 UI

서비스 상태 체크

Page 32: Cocos2 d 모바일 게임 개발하기 & 게임 서비스 준비를 위한 tip

서비스 상태 흐름 예 #App 업데이트

클라이언트서비스 상태 관리 서버

시작시 상태서버에 접속하여 상태를 받아 옴.

업데이트

업데이트 상태

앱 스토어

업데이트 다운로드 링크 UI

업데이트

서비스 상태 체크

Page 33: Cocos2 d 모바일 게임 개발하기 & 게임 서비스 준비를 위한 tip

서비스 상태 흐름 예 #이벤트

클라이언트서비스 상태 관리 서버

시작시 상태서버에 접속하여 상태를 받아 옴.

이벤트

이벤트 상태

이벤트 서버

이벤트 가져오기 이벤트 버전관리

이벤트 진행 UI

서비스 상태 체크

Page 34: Cocos2 d 모바일 게임 개발하기 & 게임 서비스 준비를 위한 tip

서비스 상태 흐름 예 #서비스

클라이언트서비스 상태 관리 서버

시작시 상태서버에 접속하여 상태를 받아 옴.서비스

서비스 상태

게임 진행

서비스 상태 체크

Page 35: Cocos2 d 모바일 게임 개발하기 & 게임 서비스 준비를 위한 tip

서비스 상태 흐름 예 #플레이 중 점검

클라이언트서비스 상태 관리 서버

시작시 상태서버에 접속하여 상태를 받아 옴.점검

점검 상태

점검 UI 표시

플레이

서비스 상태 체크

Page 36: Cocos2 d 모바일 게임 개발하기 & 게임 서비스 준비를 위한 tip

게임 데이터 보안

• 통신 프로토콜 정의, 프로토콜 command로 서버와 데이터 교환 프로토콜정의를 통해 보안처리의 수준 및 내용을 파악하기 !

• get/set Property 를 이용한 데이터 보안 get/set Property 내에서 데이터 암호화 get/set Property 로만 데이터에 접근하게 되므로, 데이터에 직접 접근을 피함 !

• 서버 통신 보안 보안키 교환 중요데이터 암호화/복호화 송수신 서버-클라이언트 데이터 비교 서버에서 중요데이터 생성 후 클라이언트에 전송 !!!

Page 37: Cocos2 d 모바일 게임 개발하기 & 게임 서비스 준비를 위한 tip

Q & A