47
Playground 소소 소소소소 [Dev Rookie] 소소소소소소

Playground 소개

  • Upload
    -

  • View
    216

  • Download
    5

Embed Size (px)

Citation preview

Page 1: Playground 소개

Playground 소개

데브루키 [Dev Rookie]요술같은솜씨

Page 2: Playground 소개

목 차

1. Playground 란 ?

2. Playground 개념도

3. Playground 의 특징

4. Playground 프로젝트

5. Playground Tool

6. Playground 정리

7. 참조자료

Page 3: Playground 소개

1. Playground 란 ?

Page 4: Playground 소개

1. Playground 란 ?

Klab 이 자체 개발 한 2D / 2.5D 를 위한 게임 엔진

Page 5: Playground 소개

소규모로 개발 한 2D 게임에 특화된 게임 개발용 프레임워크

1. Playground 란 ?

Page 6: Playground 소개

1. Playground 란 ?

동작환경

게임엔진본체 : Windows XP 이상 , iOS 5.0 이상 , Android 2.3 이상

주변도구 ( 툴 ) : Windows XP 이상 , Mac OS X 10.8 이상 ,

Ubuntu 12.04 이상

텍스쳐 /GUI 양식 작성 유틸리티는 Windows XP 이후

Page 7: Playground 소개

Playground 개발 / 공개 배경

1. Playground 란 ?

고속으로 동작하고 간단한 API 세트로 스마트 폰 2D 게임을

개발할 수 있는 환경을 구축한다 .

Playground 의 소스 코드를 공개 함으로 인해 게임엔진의 품질과

성능 향상에 기여 , 이것이 경쟁력을 높이고 , 게임업계 기술발전에도

연결된다고 생각하여 오픈소스화를 결정

Page 8: Playground 소개

2. Playground 개념도

Page 9: Playground 소개

2. Playground 개념도

게임 본체

게임엔진

스크립트 시스템 (Lua/C#) & 라이브러리 계수 (C/C++)

태스크 시스템

에셋 관리

통신관리

2D 신 그래프

이용가능한 30 종류정도의 표준 태스크

FreeType2 에 의한 텍스트 랜더링 기타

랜더링 시스템데이터베이스지적 재산 암호화

랜더링 래퍼

OS 기능 ( 파일 , 스레드 , 음성 , …)

OS 별 포팅

Page 10: Playground 소개

3. Playground 의 특징

Page 11: Playground 소개

3. Playground 의 특징

1. 멀티 플랫폼 대상의 개발이 가능하다 .

iOS 와 Android 에서 화면 그리기 , 멀티 터치를 포함한 UI 이벤트 처리 ,

사운드 출력 , 네트워크 처리 , 어플리케이션 내 과금 및 푸시 알림 구조를

망라하고 있습니다 .

Page 12: Playground 소개

3. Playground 의 특징

2. 뛰어난 그래픽 성능

2D 그래픽에 초점을 맞춘 특성을 살리기 위해 , 다음과 같은 최적화를

실시 했습니다 . 풍부한 표현을 포함한 게임은 최신 단말기보다 1 세대 전

까지만 가도 원활하게 작동하지 않는 경우가 많은 가운데 ,

“Playground” 에서는 2 세대 이상 오래된 휴대폰에서도 쾌적한

게임 플레이를 실현하고 있습니다 .

Page 13: Playground 소개

3. Playground 의 특징모바일 용 Graphic Pipeline

Vertex Gather

Vertex ShaderPrimitive Assem-

blyRasterizer

Pixel ShaderDepth / Sten-

cilBuffer BlendDither 고정기능

프로그램 가능

있는 상태로 설정하고、실행。

이미지

Vertex Gather

벡터 데이터

Page 14: Playground 소개

3. Playground 의 특징상태 변경의 비용

프레임n 프레임n +1Vertex Gather

Vertex ShaderPrimitive Assem-

blyRasterizer

Pixel Shader

Depth / StencilBuffer Blend

Dither

실행순서

Page 15: Playground 소개

3. Playground 의 특징실행순서와 부담을 줄이기 위한 일반적인 방법

전혀 그리게 하지 않기 위하여 처리 픽셀당 부담을 줄이기 또한 상태변경을 감소카메라 공간에 없는 물건은 그리지 않는다。 ( 컬링 )

고급 게임은 모델 Occlusion 을 계산

투명하지 않은 오브젝트를「근처멀리」로 정렬

투명한 오브젝트를「멀리근처」로 정렬

쉐이더의 종류・파라미터로 정렬텍스쳐로 정렬

A A A B B B

Page 16: Playground 소개

3. Playground 의 특징

2. 뛰어난 그래픽 성능

2D 화면 랜더링의 폴리곤 특성을 살려 Z 버퍼의 이용을 제한

엔진 내부에서 유지하는 폴리곤 정점이 가지는 데이터 양을 2D 용으로 절감

랜더링 대상의 좌표계산을 CPU 내에서 실시하는 것으로 , GPU 로 처리하기 이전 단계에서 일괄처리를 실현

폴리곤의 드로우 콜을 가능한 한 자동으로 일괄처리하여 , OpenGL 의 드로우 콜을 자동 삭감

CPU 아키텍쳐를 고려한 데이터 캐시를 실시

엔진 내부 상태 업데이트를 가능한 한 국소화 함으로써 CPU 처리 부하를 저감

Page 17: Playground 소개

3. Playground 의 특징

3. 높은 성능의 사운드 출력

iOS 에서 뿐만 아니라 Android 상에서 낮은 사운드 출력 지연 시간을

실현 했습니다 .

따라서 , 두 플랫폼의 리듬 액션 게임 제작의 개발 비용을 줄일 수 있습니다 .

Page 18: Playground 소개

3. Playground 의 특징

4. 지적 재산권 보호를 위한 데이터 암호화 기능을 플러그인으로 추가 가능

게임 제작 요구 사항에 맞게 적절히 암호화 프레임 워크를 추가 할 수 있는

구조로 되어있습니다 .

( 실제 게임에서 사용되는 암호화 관련 코드는 오픈 소스화 대상에 포함되지 않습니다 .)

Page 19: Playground 소개

3. Playground 의 특징

5. 프로그래밍 언어

게임 본체를 기술하는 프로그래밍 언어로 Lua, C, C++, C#

선택 할 수 있습니다 .

Page 20: Playground 소개

4. Playground 프로젝트

Page 21: Playground 소개

4. Playground 프로젝트1. Rise to the Throne

무대는 각지에서 전쟁이 일어나 혼란이 일어나고 있는 중세 기반의 판타지 세계 .

그 혼란기 속에 일어난 한 사람의 영주인 주인공이 세계의 패권을 목표로

전우와 전투 모습을 아름다운 그래픽으로 그려져 있는 게임

Page 22: Playground 소개

4. Playground 프로젝트1. Rise to the Throne

Rise to the Throne 의 특징

(1) Battle : 택티컬 배틀

(2) Rob : 약탈

(3) Building : 가상의 모형 마을

(4) Duel : 길드 배틀

Page 23: Playground 소개

4. Playground 프로젝트1. Rise to the Throne

Page 24: Playground 소개

4. Playground 프로젝트1. Rise to the Throne

Page 25: Playground 소개

4. Playground 프로젝트1. Rise to the Throne

Page 26: Playground 소개

4. Playground 프로젝트1. Rise to the Throne

Page 27: Playground 소개

4. Playground 프로젝트1. Rise to the Throne

Rise to the Throne Play Movie

Page 28: Playground 소개

4. Playground 프로젝트2. LoveLive ~school idol festival~

Page 29: Playground 소개

4. Playground 프로젝트2. LoveLive ~school idol festival~

Page 30: Playground 소개

4. Playground 프로젝트2. LoveLive ~school idol festival~

Page 31: Playground 소개

4. Playground 프로젝트2. LoveLive ~school idol festival~

Page 32: Playground 소개

4. Playground 프로젝트2. LoveLive ~school idol festival~

Page 33: Playground 소개

4. Playground 프로젝트2. LoveLive ~school idol festival~

LoveLive ~school idol festival~ Pv

Page 34: Playground 소개

4. Playground 프로젝트2. LoveLive ~school idol festival~

LoveLive ~school idol festival~ Review

Page 35: Playground 소개

5. Playground Tool

Page 36: Playground 소개

5. Playground ToolToboggan

Toboggan 기본화면

Page 37: Playground 소개

5. Playground ToolToboggan texture asset

Page 38: Playground 소개

5. Playground ToolToboggan texture asset

Page 39: Playground 소개

5. Playground ToolToboggan -Uieditor-

Page 40: Playground 소개

5. Playground ToolToboggan -Uieditor-

Page 41: Playground 소개

5. Playground ToolToboggan -Uieditor-

Page 42: Playground 소개

5. Playground ToolToboggan 스크립트 편집

Page 43: Playground 소개

5. Playground ToolToboggan Publish

Page 44: Playground 소개

5. Playground ToolToboggan Game run

Page 45: Playground 소개

6. Playground 정리

Page 46: Playground 소개

7. 참조자료Playground GitHub

https://github.com/KLab/PlaygroundOSS

Youtube

Rise to the Throne – PlayMovie –https://www.youtube.com/watch?v=JwC1hlnlHt4

LoveLive PVhttps://www.youtube.com/watch?v=xFyVkvaNcUA

온게임넷 게임 플러스 24 화https://www.youtube.com/watch?v=ZD7eDluhYtI

Page 47: Playground 소개

감사합니다 .