2016 W3C Conference #8 : IONIC으로 하이브리드 앱 개발하기, 사례와 시사점양재동 코드랩2016년 12월에 진행되었던 W3C HTML5 Conference 2016의 오후 트렉 (웹프레임워크)의 발표 자료입니다.
캔고루 개발팀장이신 김응주님께서 ‘IONIC으로 하이브리드 앱 개발하기, 사례와 시사점’이라는 주제로 발표를 진행하였습니다. . IONIC에 대한 전반적인 소개뿐 아니라 실제 개발하면서 경험한 다양한 시사점도 공유하였습니다.
2019 아이펀팩토리 Dev Day 세션5 아이펀엔진으로 만든 게임 성능 분석 및 디버깅 - 남승현iFunFactory Inc.2019년 10월 10일 개최된 아이펀팩토리 데브데이 (Dev Day) 에서 남승현 시니어 프로그래머가 발표한 아이펀 엔진으로 만든 게임의 성능 분석 및 디버깅 방법에 대한 내용입니다.
2019 아이펀팩토리 Dev Day 세션4 아이펀엔진에 MO 게임 콘텐츠 채워 넣기 - 남승현iFunFactory Inc.2019년 10월 10일 개최된 아이펀팩토리 데브데이 (Dev Day) 에서 남승현 시니어 프로그래머가 발표한 아이펀 엔진 상에서 MO 게임 콘텐츠를 채워 넣는 방법에 대한 내용입니다.
[KGC2013] dynamic and realistic game development using Havok MiddlewaresAlex KangThe document is a presentation by Alex Kang from Havok Korea about using Havok middleware for dynamic and realistic game development. It introduces Havok's physics, animation, cloth and destruction tools and provides examples of how they have been used in games to enable features like character movement, clothing simulation, and destructible environments. Case studies are presented but it is noted they may not reflect actual game implementations.
클라우드 기반 Unity 게임 서버 구축, 60분이면 충분하다Dae KimCloudBread는 클라우드 기반 무료 오픈소스 프로젝트로, 모바일 게임과 모바일 앱에 최적화된 게임 서버 엔진입니다. 이번 Unity United 세션에서는 어떻게 게임서버를 구축하고 Unity 게임에서 호출하는지 과정을 소개해 드립니다.
magicEco recruiting (서버개발자/하드웨어개발자/디자이너 모집)Hugh Choi 최형욱매직에코와 함께 할 서버개발자, 하드웨어 개발자, 그리고 디자이너를 모집합니다. 세상의 모든 것을 연결하여 새로운 가치를 만들어 낼 비전을 함께 실현시킬 열정넘치는 분들의 지원을 손꼽아 기다립니다~
ٰ21ƦᄋƵᆷᅦᅳᅳᅡᅩᆼᄒƪ5ᅧᆫᄋƴᄀƵᄅƩᆨ屷䳧ճƵᆷᅩᆼᄋƯᆫ.Jongwon KimNDC 2021에서 발표하였던 '게임 테스트 자동화 5년의 기록'이라는 주제로 NCSOFT에서 5년 동안 진행했던 게임 테스트 자동화에 대한 내용을 정리한 회고 내용입니다.
영상은 https://youtu.be/ckqUzRyIPoA 에 올라와 있습니다.
* 문서에 적용된 폰트나 아이콘 등의 문서 형식에 대한 권리는 Nexon에 있으니 배포 시 유의하시기 바랍니다
[Korea Linux Forum] Implementing web based online multiplayer tetris with Ope...JinKwon LeeImplementing Web Based Online MultiPlyaer Tetris with OpenSource
Android Native Module 안정적으로 개발하기hanbeom Park개발은 혼자 할 수 있을까? 혹은 개발자들끼리 할 수 있을까? 저는 아니라고 생각합니다. 개발은 개발에 관여된 모든 부서와 종사자들이 함께하는 겁니다. 개발자가 어떻게 하냐에 따라 SE와 QA 그리고 심지어 Sales 까지 하나의 팀으로 공동의 목표를 쫓아 시너지를 낼 수 있습니다. 저는 그렇게 믿습니다.
클라우드 기반 Unity 게임 서버 구축, 60분이면 충분하다Dae KimCloudBread는 클라우드 기반 무료 오픈소스 프로젝트로, 모바일 게임과 모바일 앱에 최적화된 게임 서버 엔진입니다. 이번 Unity United 세션에서는 어떻게 게임서버를 구축하고 Unity 게임에서 호출하는지 과정을 소개해 드립니다.
magicEco recruiting (서버개발자/하드웨어개발자/디자이너 모집)Hugh Choi 최형욱매직에코와 함께 할 서버개발자, 하드웨어 개발자, 그리고 디자이너를 모집합니다. 세상의 모든 것을 연결하여 새로운 가치를 만들어 낼 비전을 함께 실현시킬 열정넘치는 분들의 지원을 손꼽아 기다립니다~
ٰ21ƦᄋƵᆷᅦᅳᅳᅡᅩᆼᄒƪ5ᅧᆫᄋƴᄀƵᄅƩᆨ屷䳧ճƵᆷᅩᆼᄋƯᆫ.Jongwon KimNDC 2021에서 발표하였던 '게임 테스트 자동화 5년의 기록'이라는 주제로 NCSOFT에서 5년 동안 진행했던 게임 테스트 자동화에 대한 내용을 정리한 회고 내용입니다.
영상은 https://youtu.be/ckqUzRyIPoA 에 올라와 있습니다.
* 문서에 적용된 폰트나 아이콘 등의 문서 형식에 대한 권리는 Nexon에 있으니 배포 시 유의하시기 바랍니다
[Korea Linux Forum] Implementing web based online multiplayer tetris with Ope...JinKwon LeeImplementing Web Based Online MultiPlyaer Tetris with OpenSource
Android Native Module 안정적으로 개발하기hanbeom Park개발은 혼자 할 수 있을까? 혹은 개발자들끼리 할 수 있을까? 저는 아니라고 생각합니다. 개발은 개발에 관여된 모든 부서와 종사자들이 함께하는 겁니다. 개발자가 어떻게 하냐에 따라 SE와 QA 그리고 심지어 Sales 까지 하나의 팀으로 공동의 목표를 쫓아 시너지를 낼 수 있습니다. 저는 그렇게 믿습니다.
NDC2014 랙돌을 활용한 물리기반 캐릭터 애니메이션Alex KangThe document is a confidential overview of Havok's physics engine and its applications in character animation, focusing on rigid body simulation, constraints, and ragdoll setup. It includes technical details on physical properties, collision detection, and best practices for creating realistic animations. The content is intended for technical artists and programmers working with Havok technology.
프로젝트 아나키 파일 포멧 설명 및 워크플로우 요약Alex KangThe document discusses Havok's workflow and tools for animation and game development. It covers Havok Vision Engine which exports assets, Havok Contents Tool for file management, and Havok Animation Studio for character animation and pipelines. Contact information is provided for tutorials on using Havok's behavior and animation tools.
Tig13 dynamic and realistic game dev_using d_aAlex KangHavok is a leading provider of middleware for game development. Their product suite includes Havok Physics for physics simulation, Havok Destruction for realistic destruction effects, and Havok Animation Studio for character animation. Havok Destruction allows for fracturing, deformation, and destruction of buildings and structures. Havok Animation Studio enables environment interactions, parameter-driven animation, blending between animation and physics ragdolls, and inverse kinematics. These tools provide core techniques for developing dynamic and realistic games.
5. Cocos2d 개발 Kit
배포환경
!
개발환경
Android
MS
Windows
Android SDK
Android NDK
CygWin
Eclipse
Android Studio
OSX
Mac
Android SDK
Android NDK
Eclipse
Android Studio
Linux
Android SDK
Android NDK
Eclipse
Android Studio
iOS/OSX
MS Windows
Visual Studio
iOS SDK
Xcode
16. iOS In App Purchase
https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/StoreKitGuide/Introduction.html
17. Android In App Billing
http://developer.android.com/google/play/billing/billing_overview.html
18. Unique ID
Unique ID Type
iOS
Android
디바이스
제조사의 ID
디바이스 기반 UDID 사용시
앱 심사 리젝사유
OS 버전별로 다양
OS 버전별 호환성 이슈
Universally Unique
Identifier
OS 기본 제공
identifierForVendor
Universally Unique Identifier
구현하여 사용
Wifi Mac Address
iOS에서 Mac Address값이
부여된 값으로 나오지 않음
(iOS7 02:00:00:00:00:00)
Wifi가 없는 디바이스가 있어,
이 경우는 불가
OS 제공 플랫폼
GameCenter
google play account
3rd Party ID
소셜 플랫폼에서 제공하는 계정기반의 고유 ID 사용
ex) Kakao, Facebook, OpenFeint
19. 개발 마무리
•
소셜 플랫폼 적용하기
•
•
•
•
Kakao, Line, Wechat > 플랫폼 사업자가 선정
Facebook, OpenFeint, Twitter > 누구나 사용
Apple GameCenter > iOS
Google Play Games > Android
20. 개발 마무리
•
마케팅 플랫폼 적용하기
•
•
•
http://www.flurry.com/
http://www.playhaven.com/
http://www.google.com/analytics/
22. 게임 서비스 준비를 위한 Tip
인디 게임 개발자 스터디
이평섭 ( pyongsub@gmail.com )
23. 서비스 전략
• 서비스 정책
무점검
점검
!
!
• 마일스톤
업데이트
이벤트
소셜플랫폼은
제공하지 않음
알아서구현.
24. 서비스 전략
• 고객대응 Page
App Store
Facebook, Twitter
Cafe, Blog
Email
기타
!
• 운영툴
소셜플랫폼은
제공하지 않음
알아서구현.
25. 앱스토어 심사 준비
• 심사 체크 사항
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 심사기간
첫 심사기간 > 업데이트 심사 기간
• 스토어에 표시되는 게임 타이틀
심사 중 변경 안됨
26. 앱스토어 심사 준비
• 심사 리젝 회피하기
심사시에는 disable 하고, 서비스 시작시에는 enable하기
ex) 서버에서 상태값을 설정하고, 이를 클라이언트가 연동하여 회피
!
!
• 사례
★ iOS
★ 게임내 저장소는 Library - Cache 폴더 사용
★ 로그인 없이도 게임 진행이 되게 하기
★ 캐시 구매 아이템 다른 사용자에 전달불가
27. 게임 서버 & 클라이언트 준비 #1
● 서비스 시작 전(개발 중 & 개발 완료)
!
!
!
!
!
개발
!
!
!
!
!
!
!
알파
라이브
베타
개발 = 알파 = 베타
라이브(앱스토어 심사용)
● 서비스 시작
라이브 서버 & 심사를 통과한 클라이언트로 서비스 시작
28. 게임 서버 & 클라이언트 준비 #2
● 서비스 후(업데이트 개발 순서)
개발
개발 중인 서버 & 클라이언트
알파
개발 완료된 서버 & 클라이언트
베타
라이브
라이브 서버와 동일한 상태의 서버로 업데이트시 앱스토어 심사용으로 사용
클라이언트는 앱스토어 심사 제출용으로 사용
라이브 서버 & 심사 통과 클라이언트
29. 서비스 상태 관리
서비스 상태
점검
업데이트
이벤트
서비스
점검 기간 알림 /
점검시 게임진행 가능여부 /
게임 진행 중 점검 상태 진입 처리
App Upate : 앱스토어 연결 / 게임 진행 가능 여부
In App Update : 앱 내부에서 업데이트 진행 / 업데이트 완료 후 게임 진행
특정 기간에 진행되는 이벤트 알림
게임 컨텐츠에 따라, 앱 내부, 외부 이벤트 연동 처리가 달라짐.
정상적인 게임 플레이가 되는 상태
30. 서비스 상태 흐름 예 #점검
서비스 상태
관리 서버
클라이언트
시작
서비스 상태 체크
점검 상태
점검 UI 표시
시작시 상태서버에 접속하여 상태를 받아 옴.
점검
31. 서비스 상태 흐름 예 #In App 업데이트
서비스 상태
관리
서버
클라이언트
업데이트
서버
시작시 상태서버에 접속하여 상태를 받아 옴.
서비스 상태 체크
업데이트
업데이트 상태
업데이트
가져오기
업데이트 진행 UI
업데이트 버전관리
32. 서비스 상태 흐름 예 #App 업데이트
서비스 상태
관리
서버
클라이언트
앱 스토어
시작시 상태서버에 접속하여 상태를 받아 옴.
서비스 상태 체크
업데이트
업데이트 상태
업데이트
다운로드 링크 UI
업데이트
33. 서비스 상태 흐름 예 #이벤트
서비스 상태
관리
서버
클라이언트
이벤트
서버
시작시 상태서버에 접속하여 상태를 받아 옴.
서비스 상태 체크
이벤트
이벤트 상태
이벤트 가져오기
이벤트 진행 UI
이벤트 버전관리
34. 서비스 상태 흐름 예 #서비스
서비스 상태
관리
서버
클라이언트
서비스 상태 체크
서비스 상태
게임 진행
시작시 상태서버에 접속하여 상태를 받아 옴.
서비스
35. 서비스 상태 흐름 예 #플레이 중 점검
서비스 상태
관리
서버
클라이언트
플레이
서비스 상태 체크
점검 상태
점검 UI 표시
시작시 상태서버에 접속하여 상태를 받아 옴.
점검
36. 게임 데이터 보안
•
통신 프로토콜 정의, 프로토콜 command로 서버와 데이터 교환
•
!
get/set Property 를 이용한 데이터 보안
•
!
서버 통신 보안
프로토콜정의를 통해 보안처리의 수준 및 내용을 파악하기
get/set Property 내에서 데이터 암호화
get/set Property 로만 데이터에 접근하게 되므로, 데이터에 직접 접근을 피함
보안키 교환
중요데이터 암호화/복호화 송수신
서버-클라이언트 데이터 비교
서버에서 중요데이터 생성 후 클라이언트에 전송
!
!
!