104
GLADIUS PROJECT 로 로 로로로로 (GAMEBRYO LIGHTSPEED) 로로 로로로로 ( 주 ) 주주주주주 주주주 3D Env Artist / TA

gametech 2012 Gladius project

Embed Size (px)

DESCRIPTION

'Gladius project' with commercial middleware game engine 'gamebryo lightspeed'

Citation preview

Page 1: gametech 2012 Gladius project

GLADIUS PROJECT 로 본상용엔진 (GAMEBRYO LIGHT-

SPEED) 적용 개발사례

( 주 ) 동양게임즈 유우원 3D Env Artist / TA

Page 2: gametech 2012 Gladius project

Movieclip

Page 3: gametech 2012 Gladius project

[ 프로젝트의 목표 ]I. Gladius Project

Page 4: gametech 2012 Gladius project

I. The Gladius Project - 우리가 목표로 했던 것 -

Arena battle Close-combat-style PvP Based game Resonable art style Productivity & Flexibility

Page 5: gametech 2012 Gladius project

Arena battle 상대적으로 좁은 공간에 디테일 집중 .

관객들이 보도록 만들어진 아레나의 디자인 특성 상 시선차단을 거의 기대할 수 없음 . ( PVS not so much help-ful here )

Page 6: gametech 2012 Gladius project

Close-combat-style PvP Based game 빠른 템포의 근접 전투스타일을 목표

총기등 거리상 이점이 없는 상황에서 넓은 맵은 집중을 흐트림 .

Page 7: gametech 2012 Gladius project

Art & Render style Hardcore & Bloody 실사베이스 아트를 목표 / 장비의 반짝임과 근육의 표현 태양광 SUNLIGHT 을 주광으로 조명 설계

Page 8: gametech 2012 Gladius project

Productivity & Flexibility 물리적인 시간은 쓰되 , 시행착오 최소화 퍼포먼스와 비주얼 간의 합리적인 Deal 다양한 모드 등의 추가게임요소 확장성을 염두에 둠

게임플레이를 검증하기 위한 빠른 프로토타이핑 필요

Page 9: gametech 2012 Gladius project

II. 먼저 해결해야 했던 문제들 - 현실적인 문제에 접근하다 -

Page 10: gametech 2012 Gladius project

II.   해결해야 했던 문제들 .

요구 조건 플레이 검증을 위한 유연한 제작과정 그래픽적으로도 멋지게 보일 것

현실적 문제 아트 인력의 부족 R&D 시간의 상대적인 부족

양립할 수 없는 조건들 ...

Page 11: gametech 2012 Gladius project

요구 조건 플레이 검증을 위한 유연한 제작과정 . 그래픽적으로도 멋지게 보일 것 .

Page 12: gametech 2012 Gladius project

양립할 수 없는 조건들 ... 아트 / 개발 인력의 부족 R&D 시간의 상대적인 부족

Page 13: gametech 2012 Gladius project

양립할 수 없는 조건들 ... 아트 / 개발 인력의 부족 R&D 시간의 상대적인 부족 + @( 비용 )

????

Page 14: gametech 2012 Gladius project

대책 미들웨어로 게임브리오 라이트스피드를 선택 바닐라 -Vanilla 최대한 기본 엔진만의 성능을 살려 개발

(with no serious Modifica-tion)

Page 15: gametech 2012 Gladius project

III. 개발 중 Gamebryo Lightspeed 엔진의 장점

Page 16: gametech 2012 Gladius project

III. 개발 중 Gamebryo Lightspeed 엔진의 장점

Lighting & shadow Easy Material manipulations Flexibility : Rapid Prototyping Flexibility : Various Plugins Flexibility : Instant Feedback

* 명확한 목표가 있었기에 다행이었던 점 .

Page 17: gametech 2012 Gladius project

Lighting & shadow 캐릭터와 애니메이션 기믹 ( 트랩 등 ) : Dynamic Shadow 적용 셀프쉐도우 = 칼 그림자가 아닌 부드러운 Filtered(Soft) Shadow

-> NiPCFShadow Technique 사용 대부분이 해결됨

배경은 Static lighting - Lightmap 적용초기에는 다이나믹 라이팅으로 기본 조명 설계 .

( 이쁜 음영을 위해 )

NO TexturesDynamic Shadow

For Lighting Design

Page 18: gametech 2012 Gladius project

Easy Material manipulation 기존 맥스 매트리얼 적용 방식 그대로 이용할 수 있음 . Mid-

dleware 의 장점 Normal / Gloss / parallax map 슬롯 등을 이용해서

재질표현에 쉽게 적응

Page 19: gametech 2012 Gladius project

Flexibility : Rapid Prototyping 기본 기획서와 사양서에 따른 목업구조 제작 , 바로 설치후 플레이

전평면 스케일로 거리 및 크기 비례 조절 , 원하는 공간에 대한 빠른 피드백

Free ScaleAdjust

Page 20: gametech 2012 Gladius project

Various Plugins

개발을 도와주는 여러가지 플러그인들 . Sun dog 사의 Silverlining 사용 . 차후 여러가지 도움을 줌 .공개된 여러 쉐이더 적용이 쉬웠음 .

BASE

Plugin Module+

Page 21: gametech 2012 Gladius project

◆ 명확한 목표가 있었기에 다행이었던 점 .

터레인 (Terrain/Landscape) 제거

- 시야제한으로 대규모의 터레인이 필요하지 않음 .- Zbrush 로 지형 및 어셋 제작 .  

아레나 방식 스테이지

- 존로딩 방식- 심리스 seamless 월드에 대한 고려 필요하지 않음 .- 동적로딩에 대한 부담 없음

Page 22: gametech 2012 Gladius project

IV. Vanilla 개발의 한계와 트릭

Page 23: gametech 2012 Gladius project

유저가 기대하는 그래픽 SSAO (SSDO) Depth of Field Bloom Effect Tessellation / Displacement mapping Local Reflection Differed Rendering/Lighting DirectX 11 Full Features FXAA Etc…

Page 24: gametech 2012 Gladius project

유저가 기대하는 그래픽 SSAO (SSDO) Depth of Field Bloom Effect Tessellation / Displacement mapping Local Reflection Differed Rendering/Lighting DirectX 11 Full Features FXAA Etc…

Page 25: gametech 2012 Gladius project

유저가 기대하는 그래픽 SSAO (SSDO) Depth of Field Bloom Effect Tessellation / Displacement mapping Local Reflection Differed Rendering/Lighting DirectX 11 Full Features FXAA Etc…

Page 26: gametech 2012 Gladius project

유저가 기대하는 그래픽 SSAO (SSDO) Depth of Field Bloom Effect Tessellation / Displacement mapping Local Reflection Differed Rendering/Lighting DirectX 11 Full Features FXAA Etc…

할 수 있는 것만 .

We are not making the TechDemo.We Just make the GAME!

Page 27: gametech 2012 Gladius project

플레이어에게 - 크게 어필할 수 있는 부분을 선별

Dynamic / Self Shadow SSAO Bloom Effect ( 유사 HDR ) + Lighting Tricks Parallax Map Photonic Tune

HDR AO

Self-Shadow

Page 28: gametech 2012 Gladius project

Dynamic / Self Shadow / Soft Shadow

Page 29: gametech 2012 Gladius project

Dynamic / Self Shadow / Soft Shadow

전적으로 기본 제공되는 NiPCFShadow Technique 사용-> 대부분이 해결됨

Page 30: gametech 2012 Gladius project

Dynamic / Self Shadow / Soft Shadow

전적으로 기본 제공되는 NiPCFShadow Technique 사용-> 대부분이 해결됨

Page 31: gametech 2012 Gladius project

Dynamic / Self Shadow / Soft Shadow

전적으로 기본 제공되는 NiPCFShadow Technique 사용-> 대부분이 해결됨

Page 32: gametech 2012 Gladius project

Dynamic / Self Shadow / Soft Shadow

전적으로 기본 제공되는 NiPCFShadow Technique 사용-> 대부분이 해결됨

Page 33: gametech 2012 Gladius project

Dynamic / Self Shadow / Soft Shadow

전적으로 기본 제공되는 NiPCFShadow Technique 사용-> 대부분이 해결됨

Page 34: gametech 2012 Gladius project

Dynamic / Self Shadow / Soft Shadow

전적으로 기본 제공되는 NiPCFShadow Technique 사용

Page 35: gametech 2012 Gladius project

Dynamic / Self Shadow / Soft Shadow

전적으로 기본 제공되는 NiPCFShadow Technique 사용

Page 36: gametech 2012 Gladius project

Ambient Occlusion Lightmap

Page 37: gametech 2012 Gladius project

GI : Global Illumination?

Page 38: gametech 2012 Gladius project

Global Illimination

천구 (Skydome) 및 모든 물체가 반사체이며 광원이라는 개념

Page 39: gametech 2012 Gladius project

Ambient Occlusion Lightmap

각 경기장별 날씨에 맞는 HDR Image 이용한 GI Lightmap Baking

HDR image for Source of environment lighting

Page 40: gametech 2012 Gladius project

Ambient Occlusion LightmapBleeding 은 최종 Bloom 에서 너무 심하게 나타나는 번아웃 때문에 텍스쳐의 Diffuse 는 반영하지 않고 기본 Grey 로 베이킹 .

Ambient 조명인 하늘색으로 암부를 부드럽게 풀어주듯이 표현하는데 주력

HDR image for source of environ-ment lighting

Page 41: gametech 2012 Gladius project

Ambient Occlusion Lightmap

Lightmap 에 AO 강조해서 Bake함

Page 42: gametech 2012 Gladius project

Ambient Occlusion Lightmap

AO 를 적절히 표현하되 , Falloff 를 적절히 운용해서 너무 지저분한 느낌이 들지 않도록 .

Page 43: gametech 2012 Gladius project

Ambient Occlusion Lightmap

해상도는 어느정도 확보하는 대신 , 용량을 줄이기 위해 DXT1 으로 압축 .

디퓨즈칼라를 반영하지 않아 손실압축에도 부작용 적음 .

DXT1 RGB Compression

Page 44: gametech 2012 Gladius project

Ambient Occlusion Lightmap

Lightmap Quality = Static Light Quality

가능한 256 음영 레인지를 풀로 사용 하도록수많은 테스트를 통해 가장 좋은 값을 선택

Page 45: gametech 2012 Gladius project

3-Point Lighting

Page 46: gametech 2012 Gladius project

3-Point Lighting Fallout 3

Page 47: gametech 2012 Gladius project

3-Point Lighting Fallout 3

GOOD

Page 48: gametech 2012 Gladius project

3-Point Lighting Fallout 3

Page 49: gametech 2012 Gladius project

3-Point Lighting

???

Fallout 3

Page 50: gametech 2012 Gladius project

3-Point Lighting

???

Fallout 3

Page 51: gametech 2012 Gladius project

3-Point Lighting

V = CameraL = LightSrcN = Normal

No light = No spec

Page 52: gametech 2012 Gladius project

3-Point Lighting

Sunlight = Key light 로 사용

+ FillLight (No shadow casting)

+ Silverlight Directional light - As Ambient backlight

(No shadow casting )

Page 53: gametech 2012 Gladius project

3-Point Lighting

Composition

Page 54: gametech 2012 Gladius project

3-Point Lighting

Sun light Only (We do not use Ambient light)

Page 55: gametech 2012 Gladius project

3-Point Lighting

Fill Light Only

Page 56: gametech 2012 Gladius project

3-Point Lighting

Sun + Fill Light

Page 57: gametech 2012 Gladius project

3-Point Lighting

Off / On Fill light

Off On

Page 58: gametech 2012 Gladius project

3-Point Lighting

Silverlining light (as BackLight)

Page 59: gametech 2012 Gladius project

3-Point Lighting

Sun + Silverlight light (as BackLight)

Page 60: gametech 2012 Gladius project

3-Point Lighting

Final Render

Page 61: gametech 2012 Gladius project

3-Point Lighting Front view

Sun Light Only

Page 62: gametech 2012 Gladius project

3-Point Lighting Front view

SUN + Fill Light

Page 63: gametech 2012 Gladius project

3-Point Lighting Front view

Final Render (with Bloom Effect)

Page 64: gametech 2012 Gladius project

3-Point Lighting

OFF Silverlining AmbientLight

Page 65: gametech 2012 Gladius project

3-Point Lighting

ON Silverlining AmbientLight

Page 66: gametech 2012 Gladius project

3-Point Lighting Front view

Sun Light Only

Page 67: gametech 2012 Gladius project

3-Point Lighting Front view

Sun Light + Fill Light

Page 68: gametech 2012 Gladius project

3-Point Lighting Front view

Sun Light

Page 69: gametech 2012 Gladius project

3-Point Lighting Front view

Sun Light + Fill Light

Fresnel Effent

Page 70: gametech 2012 Gladius project

3-Point Lighting Front view

MovieClip

Page 71: gametech 2012 Gladius project

Parallax Map

Page 72: gametech 2012 Gladius project

Parallax Map

Normal map

Page 73: gametech 2012 Gladius project

Parallax Map

Parallax map

Page 74: gametech 2012 Gladius project

Parallax Map

How to assign Parallax map(from Zbrush Extracted)

Page 75: gametech 2012 Gladius project

Bloom effect

Page 76: gametech 2012 Gladius project

Bloom Effect

Bloom Off

Page 77: gametech 2012 Gladius project

Bloom Effect

Bloom ON

Page 78: gametech 2012 Gladius project

Bloom Effect

Bloom Off

Page 79: gametech 2012 Gladius project

Bloom Effect

Bloom Comparison

Page 80: gametech 2012 Gladius project

Bloom Effect

Bloom Comparison

Bright +

Color + (add)

Page 81: gametech 2012 Gladius project

Weather Effect

Page 82: gametech 2012 Gladius project

Weather Effect

Overcast

Page 83: gametech 2012 Gladius project

Weather Effect

Rain

Page 84: gametech 2012 Gladius project

Weather Effect

Page 85: gametech 2012 Gladius project

Filmic Tune

Page 86: gametech 2012 Gladius project

What is Filmic tonemapping?

Page 87: gametech 2012 Gladius project

Filmic Tonemapping• This is with a linear curve.

Page 88: gametech 2012 Gladius project

Filmic Tonemapping• And here is filmic.

Page 89: gametech 2012 Gladius project

Filmic Tonemapping

Page 90: gametech 2012 Gladius project

Filmic Curve• Crisp blacks, saturated dark end, and nice high-

lights.

Page 91: gametech 2012 Gladius project

Filmic Tonemapping• Linear.

Page 92: gametech 2012 Gladius project

Filmic Tonemapping• Fade from Reinhard to filmic.

Page 93: gametech 2012 Gladius project

Filmic Tune

-Can Access Dark, Medium, Highlight

Without adjust Sun & FillLight

세가지 파라메터로 각각의 톤 조절 가능 Ambient dimmer Diffuse dimmer Specular dimmer

Page 94: gametech 2012 Gladius project

Filmic Tune

Ambient dimmer parameter 0.9

Page 95: gametech 2012 Gladius project

Filmic Tune

Ambient dimmer set to 0

Page 96: gametech 2012 Gladius project

Filmic Tune

Basic Ambient Light (Classic)

Bloom Off

Page 97: gametech 2012 Gladius project

Filmic Tune

Contrast/Tone Adjusted

Bloom Off

Page 98: gametech 2012 Gladius project

추가된 부분 / 추가할 부분추가된 부분 .

비네팅 이펙트 Vignetting effect

– 최대한 단순하게 구현 , UI 만 최종으로 그리도록 .

추가할 부분 Depth of Field Radial Blur (for effect)

Page 99: gametech 2012 Gladius project

가장 중점을 두고 접근한 부분

프레임이 납득 되도록 유지되고최종 클라이언트에서 예쁘게 보이면 OK

왜 그렇게 보이는가 이론적으로 분석 ,

어떤 식으로 구현할 수 있는지를 고민

쓸 수 있는 것은 다 쓴다

Page 100: gametech 2012 Gladius project

V. Gamebryo Lightspeed 상용 미들웨어 사용후기

Page 101: gametech 2012 Gladius project

1. Gamebryo Lightspeed 사용후기

신뢰성 있는 Workhorse배경에 사용한 폴리곤 7 만 ~40 만 + 캐릭터 @ +멀티라이트

사용 환경하에 프레임이 납득하도록 유지됨

편리하고 빠른 Feedback 제작 중에도 에러를 쉽게 잡아낼 수 있는 Viewer 별다른 재교육 필요없이 바로 사용할 수 있는 익스포트 마지막까지 최종 클라이언트 켜 놓은 상태에서 실시간 업데이팅 가능

유연성 / 확장성 플러그인이나 셰이더 스크립트등 확장성 용이

Page 102: gametech 2012 Gladius project

2. 상용엔진 사용의 득과 실 PROS

제작비 절감과 빠른 프로젝트 진행기본 지원되는 툴들로 비주얼 프로토타입 제작이 용이

CONS내부제작 엔진만큼 맞춤옷처럼 소통하기는 힘들다 .알수없는 문제가 발생시 원활한 서포트가 없을 경우 지연발생엔진업데이트 / 마이그레이션시 잠재적인 스트레스 .

TIP프로젝트 와 시장 타겟 , 버짓을 고려해 세심하게 미들웨어 선별 .출시당시의 해당 마켓의 Hareware 트렌드등도 고려대상 .

해당 엔진 Reference 숙지 , 기능을 계속 추가하거나 포기하기보다 모듈 내에서 해결될 가능성을 타진 , 가능한 경우 해당 엔진 기능을 백분 활용 , 또는 트릭으로 처리할 수 있는가를 고민 .

Page 103: gametech 2012 Gladius project

그리고…

Page 104: gametech 2012 Gladius project

END감사합니다 .