SlideShare uma empresa Scribd logo
1 de 42
Baixar para ler offline
모바일 플랫폼을 위한 유니티
에서 게임 환경 구축
MJT Project PostMoterm으로 살펴보는
Unity 3D Environment art for mobile platform
Game Tech 2015
Yi SangYun
과르네리 스튜디오
대표작 : 삼한 제국기.
1000vs 1000 실시간 전투
한국 역사 소재 국가 시뮬레이션
2011년 11월 G-star 참가
2012년 8월 독일 게임스컴 참가
이상윤 (Yi SangYun)
(전) Kuno interactive 책임 아티스트, 3D lead Artist
- Defense Technica, The Mansion(Rooms2)
- Kgc2013 defense technica_converting
(현) Guarneri Studio 배경/TA
- MJT Project(가제)
- Facebook 게임 3D 배경 그룹 운영 中
- Contents -
1. 모바일 게임 개발 환경 분석
2. 유니티 아트 개발과 관련하여 고려해야 할 사항들
3. 향후 전망
모바일 게임환경 분석
- 고해상도 디스플레이, 고사양 모바일 디바이스 기기의 보급 가속
Samsung Galaxy S6
5.1인치 2560x1440(QHD)
엑시노스 7420
Octa-core(Quad-core
2.1G + Quad-core 1.5G),
T760 770MHz
3G RAM
(출시 국가 및 세세한 모델
이 따라 스펙 차이 존재)
Android IOS
Apple iphone 6 plus
5.5인치 1920x1080(FHD)
A8 (Dual core – 2.6G +
PowerVR G6650 6 core
cluster)
1G RAM
- 타겟 디바이스
Samsung Galaxy S3
4.8인치 1280x720(HD)
엑시노스 4412
Quad-core 1.4G, MP4
440MHz
2G RAM
(출시 국가 및 세세한 모델
이 따라 스펙 차이 존재)
Android IOS
Apple iphone 5
4인치 1136x640
A6(Dual Core – 1.3G +
PowerVR SGX543 3 Gpu
cluster)
1G RAM
- OS별 시장 점유율
24일(현지시간) 시장조사기관 IDC과 외신에 따르면 지
난해 모바일 운영체제 안드로이드의 시장점유율이
81.5%를 차지했고, iOS는 14.8%를 기록했다. 안드로이
드는 지난해 엄청난 성장률을 기록하면서 시장 점유율이
81.5%에 달했다. 2013년에 비해 출하량과 시장점유율
이 모두 성장했다. 지난해 안드로이드 폰 출하량은 10억
5930만대로 역대 최대 규모다.
반면 iOS의 점유율은 15.1%에서 14.8%로 소폭 하락했
다. 출하량은 1억9270만대로 2013년(1억5340만대)보다
늘었다. 4분기 점유율 증가폭만 놓고 보면 iOS가 안드로
이드보다 높다. 2013년 4분기 17.5%였던 점유율이 다음
해 같은 기간에는 19.7%로 늘어났다.
출처 : 나인투파이브(구글) 및 네이버 뉴스기사 中
Test 영상
유니티 아트 개발과 관련해 고려해야 할 사항
- 게임이 화면에 그려질 때 영향을 주는 부분은 크게 세가지
Game Art
Character
Environmnet
Particle
Game LogicUI
- Drawcall
Scene에 있는 vertex들을 그리기 위해 CPU가 GPU에게 보내는 요청. 카메라를 통해 한 프레임의 화면을
만들어 내는 동안 1개의 셰이더 패스, 1개의 material로 오브젝트를 한번 그리는 작업의 단위.
그래픽 이슈에서 성능과 직결되는 중요한 요소 중 하나.
Texture
Shader
Mesh
Material
Mesh render
DrawCall
Defense Technica Steam steage 19 Defense Technica Mobile steage 19
MJT Project 영지 관리 메뉴
- batching
Drawcall을 소비하여 그려진 mesh를 다시 그릴때 연
산을 줄이기 위한 기법
1) Static Batching(정적배칭)
움직이지 않는 object가 해당되며 300개의
vertex 이하에서만 처리된다. (변동있을수 있음)
정적배칭 처리를 할 경우 드로우콜은 아낄수 있지만
카메라의 뷰에 걸리지 않는 오브젝트 역시 계산을 하
기 때문에 컬링 영역을 잘 계산해서 배치하는 쪽이 좋
다.(scene에 따라 오히려 끄는 쪽이 퍼포먼스에 좋은
경우도 있다)
2) Dynamic Batching(동적 배칭)
움직이는 object가 해당. 정적 배칭에 비해 조금 더
무겁게 처리된다.
3) Project의 batching을 활성화 할 경우 별도로 체크
하지 않더라도 자동으로 활성화 된다
- Mesh animation
Skinned 되지 않는 mesh에 움직임을 부여하는 작업. unity3D animation 윈도우나 3D tool(3DS MAX or
Maya)에서 작업해서 사용. Unity3D는 vertex animation은 지원하지 않으나 mesh animation은 지원한다.
병사 말의 skinned mesh 숫자를 줄이기 위해 사용하여 dynamic batching을 적용
Unity Animation Window
Mesh, Material animation등을 제어할수 있으며 만들어둔 클립을 object에 드래그하여
붙임으로 손쉽게 제어할 수 있다.
영웅유닛용 말
스킨된 메쉬로 구성
Drawcall : 1
Probe light 사용으로
Batching 불가.
최대 scene에 5unit
등장.
병사유닛용 말
Mesh animation 사용
Drawcall : 12
동적배칭 사용
Probe light 미사용
결전맵에서 산술적으로
최대 50unit까지 등장.
MJT Project 영지전 전투 statics : 스킬 사용시 왼쪽 상단에 영웅에 근접한 카메라를 로드하여 연출하는 씬.
- Shadow(그림자)
등장하는 유닛이 많아 화면에 그려지는 양이 엄청나므로 처음부터 plan texture를 쓰는것 부터 고려
Skinned mesh의 경우 초기부터 넣어서 사용하기 시작했으나 건물 프랍의 경우 중반까지도 고심. 디바이스 체크후 써
도 되겠다는 결정후 사용하기 시작
케릭터의 경우 일괄적으로 원으로 된 texture만을 사용하였으나 건물 프리팹의 경우 사각형과 원 두가지를 사용
- LOD
Level of Detail.
초기에는 사용을 고려했으나 poly
counter 감소에 따른 FPS변화가 그리 크
지 않고 아트 퀄리티만 나빠지는 결과가
예상.
많이 생성된 건물 프리팹(건물당 6~10
개 정도의 레벨 디자인)을 제작하게 되어
스케쥴상 비효율적으로 판단(컨셉+모델
링+TA = 1人)
케릭터 쪽 역시 별도의 LOD 메쉬 제작 및 애니메이션 작업 인원이 부족으로 힘들것으로 판단(애니메이션+이펙트 = 1人)
좀 더 쾌적한 퍼포먼스 확보를 위해서는 적용시키는 것이 좋았겠지만 타겟 디바이스 구동시 LOD를 적용하지 않더라도 플
레이가 가능한 퍼포먼스가 나와 작업하지 않음
- Shader 및 probe light
Project의 shader는 모두 별도로 제작하여
사용
(particles에 additive 등 몇가지는 unity 기본
shader사용)
Cg shader 기반의 1 pass shader가 대부분.
케릭터의 경우는 probe light를 사용하게 되
었다(병사용 말의 경우 동적 배칭 때문에 사
용하지 않음
Character shader : 케릭터 셰이더는 기본적으로 probe light를 사용하
는 쪽으로 결정. Scene 내에 많은 숫자(최대 100~120 unit)가 그려지
기 때문에 병사 유닛의 경우 최대한 가볍게 , 영웅 유닛은 전투 화면과
관리 메뉴 양쪽에서 잘 보여야 함
Character Diffuse : 케릭터 기본 shader.
TransparentCutout : alpha source를 사용하는 shader.
CharacterSelfIllumination : 발광하는 효과를 가진 무기, 갑옷 등 장식
및 효과가 필요한 유닛에 사용
SelfilluminBlend : 반투명 몬스터등을 위해 사용. One One으로 제작하
였기에 확대할 경우 부분적으로 뒷면이 보이는 문제가 있으나 작게 그
려지기에 1 pass 방식을 그대로 사용.
좌 : 1 pass로 그린 결과물, 우 : 2 pass로 그린 결과물
참조 : 대충 살아가는 게임개발자(대마왕님 블로그)
결전맵에서 낮 scene과 밤 scene의
probe light 영향 비교
부대편성 화면
유니티 공식 문서에 들어있는 WrapDiffuse코드
실제 적용된 이미지 비교
Character 피부톤을 좀 더 산뜻하게 보여지는
방법을 고심하다 wrap diffuse를 적용해 보기
로 해보았음.(Toon lamp를 고민하다 유니티
공식문서에 나와있는 코드를 참조)
기왕 넣는거 Rim light도 넣어서 테스트
http://jeanmoreno.com/matcap. Asset store에서 받을수 있다. 심지어 무료~!
각 shader test 비교 스샷
Matcap shader 코드는 JP Lee
님. 소스는 unity Asset store의
matcap shader 소스 사용
터치로 확대 축소 및 회전이 가능한 화면
좌 : Probe light / Lambert
우 : Probe light/ Rimlight / WrapDiffuse
배경 이미지의 깃발은 shader animation
으로 깃발이 펄럭이도록 제어
- Lightmapping
Defense Technica mobile
stage list
iphone 4를 제외한 모든 모바
일 디바이스에서 lightmap을
사용하여 발매
퍼포먼스에 크게 영향을 주지
않으며 scene을 보다 풍부하
게 표현해줄 수 있는 있음. 또
한 probe light와 조합하여 사
용할 경우 보다 풍부한 표현을
할 수 있음
배경
영지맵, 결전맵, 탐험맵의 3종류를 주야로 조명만 달리
하여 제작
영지맵, 결전맵, 탐험맵의 3종류를 주야로 조명만 달리
하여 제작
Lightmap size는 작은 prop이 많기 때문에 1024x1024
를 사용(lightmap texture size를 더 줄일경우 퀄리티 저
하가 드러남)
Prop의 경우
대부분 Unlit Diffuse, Unlit Transparent
Cutout 사용.
파티클은 전투시작시 자동으로 꺼짐
- 연출
Texture atlas를 이용해 UV 이동으로 배경 프랍이 작동할때 연출을 표현.
Prop이 scene에서 서서히 사라지는 효과를 위한 shader
- texture option
Character 및 배경은 ETC로 압축된 texture를 기본으로 사용. 타겟 디
바이스가 S3(1280x1024)였기 때문에 너무 작은 texture 사용은 지양
ETC로 압축된 texture의 경우 해상도 변경에 따른 용량 증가가 크게 부
담될 수준은 아니라고 판단(1024x1024의 경우 0.7MB)
반면 UI에 사용되는 texture의 경우 RGBA 16bit만으로도 4배의 용량
을 차지하게 됨. 알파영역을 가진 PNG파일의 경우 디더링으로 인한 품
질저하 때문에 RGBA 32bit를 사용할 경우 8배의 용량을 가지게 됨.
케릭터 정보창 배경에 쓰인 이미지의 각 texture compressed option에 따른 용량. Alpha영역이 없더라도 ETC와 RGBA 24bit와의
texture size는 6배 차이가 난다. 화면 전체를 그리는 큰 이미지이므로 RGBA 24bit를 사용했다.
- texture compressed option에 따른 texture quality 비교
Keijiro 씨의 texture compression plug-in
16bit RGBA 이미지의 디더링 현상을 개선시
켜준다.
이미지 자체를 변경 시키므로 롤백이 안된다.
UI 담당 디자이너가 툴을 이해하고 직접 엔진에 올리
면서 작업하지 않을경우 별도의 담당자 필요.
셀 채색 방식의 이미지는 괜찮은 효과를 보여주지만
그렇지 않을경우 이미지가 뭉개지는 현상 발생. 결국
사용하지 못함
Advanced option에서
Mipmap 적용으로 인해 정보창에서 케릭터 얼굴의 디더링
증상때문에 케릭터 텍스쳐의 경우는 mipmap을 사용하지 않
음
배경의 경우 mipmap 적용 여부를 개발 중반부까지 고심하
였으나 test 결과 케릭터에 비해 스케일이 다양하게 보이는
점과 전체 유닛들을 모였을때 지글거림이 눈을 피로하게 한
다는 느낌으로 mipmap을 사용하였으나 filtering 방식을 기
본 BOX에서 Kaiser 방식으로 변경.(결고물에 따라 끄거나
옵션이 다르게 셋팅)
유닛 합성 창에 사용되는 바닥 texture의 경우 Aniso level과
Filter mode를 조정.
Daikon forge
저렴하다(sale할때 구매)
NGUI에 비해 완성도가 낮음.
UI를 위한 미들웨어보다 라이브러리 모음집 같은 느낌
NGUI와 대동소이한 기능
초심자에게는 사용하기 좋음
퍼포먼스가 나오지 않음
자잘한 버그가 많음
현재 UI 사업 철수
UI programming
NGUI
전통의 강자
버그가 적음(버젼업할수록 개선)
사용자 편의성이 좋음
퍼포먼스가 잘나옴
Server programming
유닛 연산 서버로 전송 결과 산출 디바이스에 전송 결과 반영
클라이언트의 연산을 서버로 가져오는 구조를 취함. 이로 인해 클라이언트에서 연산의 많은 부분을 비쥬
얼 퍼포먼스에서 확보 할 수 있었음
화면에 등장하는 유닛의 숫자가 많기 때문에 클라이언트 연산을 최대한 분산하기 위한 해결책으로 개발
(서버쪽 작업 진행여부에 따라서 수시로 타겟 디바이스에서 퍼포먼스 체크)
연산, 충돌처리, 길찾기 등 전투에서 발생하는 많은 부분을 서버에서 처리 해줌으로 퍼포먼스 확보. 전투
에서 서버에서 처리되는 부분에서 지연되는 현상을 줄이기 위해 여러 방법 고려(패킷 줄이기, 쓰레드 추
가 등)
제작 후기
- 프로젝트 중반까지 계속해서 FPS(Frame per second) 체크. 화면에 올려서 구동되는 것 만으로는 안정
적으로 구동되는지 확인 할 수 없기 때문에 명확해지는 단계까지 계속해서 체크
- engine version up에 다른 변동 사항 체크. 대규모 마이그레이션은 프로젝트 진행상황에 맞춰서 결정할
것
- build 용량은 프로젝트 성격에 맞춰서 결정. 가이드가 분명하다면 프로젝트 퀄리티가 떨어지는 부분을
명확히 인지하고 작업
- 프로젝트 진행 단계에서 리소스 작업 가이드를 분명하게 결정하고 진행(불필요한 리소스를 최대한 줄여
낼 수 있다)
- poly counter, texture size를 줄인다고 퍼포먼스가 무조건 좋아지지 않는다.(타겟 디바이스에서의 프레
임 레이트 체크 및 profiler 활용)
- batching 과 mipmap의 사용 여부는 프로젝트 성격에 따라서 결정.
향후 전망
Apple metal API
Nvidia Shield
Cloud Gaming(NC soft Lineage Enternal)
High Quality 2D Games
FireMonkeys Studio
Mint 3D Engine(2013)
Madfinger Games, ShadowGun
Unity3D Engine(2011)
Midoki, Plunder Pirates
(2015)
Chair Entertainment, Infinity Blade
Unreal 3 Engine(2010)
AimToG, Angel in the Sky
Unreal 4 Engine(미정)
Unreal 4
월 $19의 가격 정책을 취하다 완전 무료화 선언
분기별 게임 또는 애플리케이션당 $3,000(약 310만원 연간
1200만원 가량)를 초과한 매출의 5%를 지불 혹은 별도의 라
이선싱 계약 체결
Unity 5
대부분 기능은 무료로 개발 가능
Free 버전은 이전 회계연도 기준 연간 총수입이나 예산이 US
$10만을 초과하는 기업, 아카데미, 비영릴 또는 정비 기업의
경우 프로 라이선스 사용 불가.
Pro version 월$75 or 165만원
IOS, Android add-on 각 165만원.
기존라이센스 업그레이드 82만5천원
단점
상용 엔진의 무료버젼 베포로 인해 접근성은 높아졌으나 필요한 인력을 여유있게 구성할 정도로 여력이 있
는 개발사가 많지 않음.
개발기간을 여유있게 확보하기 힘들기 때문에 프로토 단계에서의 충분한 테스트가 쉽지 않음.
높아진 게임 퀄리티로 인한 시장에서의 요구치는 올라갔으나 수익은 기대하기 쉽지 않은 상황.(MMORPG가
많이 개발되던 시기와 같은 딜레마가 모바일 개발환경에서도 발생)
게임 3D 배경 아티스트(Game 3D Environment Artist Forum)
https://www.facebook.com/groups/3Dbackground/
Yi SangYun(3D Environment Artist, TA)
illustor@gmail.com
+82 01 9313 0583
Q&A
終

Mais conteúdo relacionado

Mais procurados

NDC2015 광개토태왕 테크니컬 아트
NDC2015 광개토태왕 테크니컬 아트NDC2015 광개토태왕 테크니컬 아트
NDC2015 광개토태왕 테크니컬 아트재철 황
 
NDC2015 유니티 정적 라이팅 이게 최선인가요
NDC2015 유니티 정적 라이팅 이게 최선인가요  NDC2015 유니티 정적 라이팅 이게 최선인가요
NDC2015 유니티 정적 라이팅 이게 최선인가요 Wuwon Yu
 
Unity3D로 풀3D web mmorpg 만들기
Unity3D로 풀3D web mmorpg 만들기Unity3D로 풀3D web mmorpg 만들기
Unity3D로 풀3D web mmorpg 만들기JP Jung
 
[Ndc11 박민근] deferred shading
[Ndc11 박민근] deferred shading[Ndc11 박민근] deferred shading
[Ndc11 박민근] deferred shadingMinGeun Park
 
2009-2016 기본기(손맵)의 중요성
2009-2016 기본기(손맵)의 중요성2009-2016 기본기(손맵)의 중요성
2009-2016 기본기(손맵)의 중요성Gunho Shin
 
LCD Monitor 선택 가이드와 Gamma의 이해
LCD Monitor 선택 가이드와 Gamma의 이해LCD Monitor 선택 가이드와 Gamma의 이해
LCD Monitor 선택 가이드와 Gamma의 이해SangYun Yi
 
[Kgc2012] deferred forward 이창희
[Kgc2012] deferred forward 이창희[Kgc2012] deferred forward 이창희
[Kgc2012] deferred forward 이창희changehee lee
 
multi plaform Full3D MMO 만들기 "삼국지를 품다"의 테크니컬 아트
multi plaform Full3D MMO 만들기 "삼국지를 품다"의 테크니컬 아트multi plaform Full3D MMO 만들기 "삼국지를 품다"의 테크니컬 아트
multi plaform Full3D MMO 만들기 "삼국지를 품다"의 테크니컬 아트JP Jung
 
NDC2016 프로젝트 A1의 AAA급 캐릭터 렌더링 기술
NDC2016 프로젝트 A1의 AAA급 캐릭터 렌더링 기술NDC2016 프로젝트 A1의 AAA급 캐릭터 렌더링 기술
NDC2016 프로젝트 A1의 AAA급 캐릭터 렌더링 기술Ki Hyunwoo
 
유니티 Rpg게임배경 스타트업 6번째 스터디자료
유니티 Rpg게임배경 스타트업 6번째 스터디자료유니티 Rpg게임배경 스타트업 6번째 스터디자료
유니티 Rpg게임배경 스타트업 6번째 스터디자료Je Lyoung Kim
 
[데브루키/141206 박민근] 유니티 최적화 테크닉 총정리
[데브루키/141206 박민근] 유니티 최적화 테크닉 총정리[데브루키/141206 박민근] 유니티 최적화 테크닉 총정리
[데브루키/141206 박민근] 유니티 최적화 테크닉 총정리MinGeun Park
 
스크린 스페이스 데칼에 대해 자세히 알아보자(워햄머 40,000: 스페이스 마린)
스크린 스페이스 데칼에 대해 자세히 알아보자(워햄머 40,000: 스페이스 마린)스크린 스페이스 데칼에 대해 자세히 알아보자(워햄머 40,000: 스페이스 마린)
스크린 스페이스 데칼에 대해 자세히 알아보자(워햄머 40,000: 스페이스 마린)포프 김
 
니시카와젠지의 3 d 게임 팬을 위한 ps4
니시카와젠지의 3 d 게임 팬을 위한 ps4니시카와젠지의 3 d 게임 팬을 위한 ps4
니시카와젠지의 3 d 게임 팬을 위한 ps4민웅 이
 
구세대 엔진 신데렐라 만들기 최종본 유트브2
구세대 엔진 신데렐라 만들기 최종본 유트브2구세대 엔진 신데렐라 만들기 최종본 유트브2
구세대 엔진 신데렐라 만들기 최종본 유트브2Kyoung Seok(경석) Ko(고)
 
모바일 게임 최적화
모바일 게임 최적화 모바일 게임 최적화
모바일 게임 최적화 tartist
 
191019 Forward / Deferred Rendering
191019 Forward / Deferred Rendering191019 Forward / Deferred Rendering
191019 Forward / Deferred RenderingKWANGIL KIM
 
게임 개발을 위한 렌더링 기법 한성환
게임 개발을 위한 렌더링 기법   한성환게임 개발을 위한 렌더링 기법   한성환
게임 개발을 위한 렌더링 기법 한성환Yggdrasil610
 
[0326 박민근] deferred shading
[0326 박민근] deferred shading[0326 박민근] deferred shading
[0326 박민근] deferred shadingMinGeun Park
 
gametech 2012 Gladius project
gametech 2012 Gladius projectgametech 2012 Gladius project
gametech 2012 Gladius projectWuwon Yu
 

Mais procurados (20)

NDC2015 광개토태왕 테크니컬 아트
NDC2015 광개토태왕 테크니컬 아트NDC2015 광개토태왕 테크니컬 아트
NDC2015 광개토태왕 테크니컬 아트
 
NDC2015 유니티 정적 라이팅 이게 최선인가요
NDC2015 유니티 정적 라이팅 이게 최선인가요  NDC2015 유니티 정적 라이팅 이게 최선인가요
NDC2015 유니티 정적 라이팅 이게 최선인가요
 
Unity3D로 풀3D web mmorpg 만들기
Unity3D로 풀3D web mmorpg 만들기Unity3D로 풀3D web mmorpg 만들기
Unity3D로 풀3D web mmorpg 만들기
 
[Ndc11 박민근] deferred shading
[Ndc11 박민근] deferred shading[Ndc11 박민근] deferred shading
[Ndc11 박민근] deferred shading
 
2009-2016 기본기(손맵)의 중요성
2009-2016 기본기(손맵)의 중요성2009-2016 기본기(손맵)의 중요성
2009-2016 기본기(손맵)의 중요성
 
LCD Monitor 선택 가이드와 Gamma의 이해
LCD Monitor 선택 가이드와 Gamma의 이해LCD Monitor 선택 가이드와 Gamma의 이해
LCD Monitor 선택 가이드와 Gamma의 이해
 
[Kgc2012] deferred forward 이창희
[Kgc2012] deferred forward 이창희[Kgc2012] deferred forward 이창희
[Kgc2012] deferred forward 이창희
 
multi plaform Full3D MMO 만들기 "삼국지를 품다"의 테크니컬 아트
multi plaform Full3D MMO 만들기 "삼국지를 품다"의 테크니컬 아트multi plaform Full3D MMO 만들기 "삼국지를 품다"의 테크니컬 아트
multi plaform Full3D MMO 만들기 "삼국지를 품다"의 테크니컬 아트
 
NDC2016 프로젝트 A1의 AAA급 캐릭터 렌더링 기술
NDC2016 프로젝트 A1의 AAA급 캐릭터 렌더링 기술NDC2016 프로젝트 A1의 AAA급 캐릭터 렌더링 기술
NDC2016 프로젝트 A1의 AAA급 캐릭터 렌더링 기술
 
유니티 Rpg게임배경 스타트업 6번째 스터디자료
유니티 Rpg게임배경 스타트업 6번째 스터디자료유니티 Rpg게임배경 스타트업 6번째 스터디자료
유니티 Rpg게임배경 스타트업 6번째 스터디자료
 
[데브루키/141206 박민근] 유니티 최적화 테크닉 총정리
[데브루키/141206 박민근] 유니티 최적화 테크닉 총정리[데브루키/141206 박민근] 유니티 최적화 테크닉 총정리
[데브루키/141206 박민근] 유니티 최적화 테크닉 총정리
 
스크린 스페이스 데칼에 대해 자세히 알아보자(워햄머 40,000: 스페이스 마린)
스크린 스페이스 데칼에 대해 자세히 알아보자(워햄머 40,000: 스페이스 마린)스크린 스페이스 데칼에 대해 자세히 알아보자(워햄머 40,000: 스페이스 마린)
스크린 스페이스 데칼에 대해 자세히 알아보자(워햄머 40,000: 스페이스 마린)
 
니시카와젠지의 3 d 게임 팬을 위한 ps4
니시카와젠지의 3 d 게임 팬을 위한 ps4니시카와젠지의 3 d 게임 팬을 위한 ps4
니시카와젠지의 3 d 게임 팬을 위한 ps4
 
구세대 엔진 신데렐라 만들기 최종본 유트브2
구세대 엔진 신데렐라 만들기 최종본 유트브2구세대 엔진 신데렐라 만들기 최종본 유트브2
구세대 엔진 신데렐라 만들기 최종본 유트브2
 
모바일 게임 최적화
모바일 게임 최적화 모바일 게임 최적화
모바일 게임 최적화
 
191019 Forward / Deferred Rendering
191019 Forward / Deferred Rendering191019 Forward / Deferred Rendering
191019 Forward / Deferred Rendering
 
게임 개발을 위한 렌더링 기법 한성환
게임 개발을 위한 렌더링 기법   한성환게임 개발을 위한 렌더링 기법   한성환
게임 개발을 위한 렌더링 기법 한성환
 
[0326 박민근] deferred shading
[0326 박민근] deferred shading[0326 박민근] deferred shading
[0326 박민근] deferred shading
 
Motion blur
Motion blurMotion blur
Motion blur
 
gametech 2012 Gladius project
gametech 2012 Gladius projectgametech 2012 Gladius project
gametech 2012 Gladius project
 

Semelhante a Gametech2015

Ndc2013 정리(upload버전)
Ndc2013 정리(upload버전)Ndc2013 정리(upload버전)
Ndc2013 정리(upload버전)Minsu Park
 
[1002 조진현]unity3d 소개
[1002 조진현]unity3d 소개[1002 조진현]unity3d 소개
[1002 조진현]unity3d 소개진현 조
 
Ndc2010 김주복, v3. 마비노기2아키텍처리뷰
Ndc2010   김주복, v3. 마비노기2아키텍처리뷰Ndc2010   김주복, v3. 마비노기2아키텍처리뷰
Ndc2010 김주복, v3. 마비노기2아키텍처리뷰Jubok Kim
 
20140514 team blender_v01 (Korean)
20140514 team blender_v01 (Korean)20140514 team blender_v01 (Korean)
20140514 team blender_v01 (Korean)Dongho Kim
 
[IGC 2016] 넷게임즈 김영희 - Unreal4를 사용해 모바일 프로젝트 제작하기
[IGC 2016] 넷게임즈 김영희 - Unreal4를 사용해 모바일 프로젝트 제작하기[IGC 2016] 넷게임즈 김영희 - Unreal4를 사용해 모바일 프로젝트 제작하기
[IGC 2016] 넷게임즈 김영희 - Unreal4를 사용해 모바일 프로젝트 제작하기강 민우
 
전형규, 가성비 좋은 렌더링 테크닉 10선, NDC2012
전형규, 가성비 좋은 렌더링 테크닉 10선, NDC2012전형규, 가성비 좋은 렌더링 테크닉 10선, NDC2012
전형규, 가성비 좋은 렌더링 테크닉 10선, NDC2012devCAT Studio, NEXON
 
증강현실을 통한 두더지잡기 게임
증강현실을 통한 두더지잡기 게임증강현실을 통한 두더지잡기 게임
증강현실을 통한 두더지잡기 게임Junhee Han
 
Gamebryo LightSpeed (Korean)
Gamebryo LightSpeed (Korean)Gamebryo LightSpeed (Korean)
Gamebryo LightSpeed (Korean)Gamebryo
 
증강현실을 통한 두더지잡기 게임
증강현실을 통한 두더지잡기 게임증강현실을 통한 두더지잡기 게임
증강현실을 통한 두더지잡기 게임Junhee Han
 
증강현실을 통한 두더지잡기 게임
증강현실을 통한 두더지잡기 게임증강현실을 통한 두더지잡기 게임
증강현실을 통한 두더지잡기 게임Junhee Han
 
에코노베이션 3차 세미나 교안
에코노베이션 3차 세미나 교안에코노베이션 3차 세미나 교안
에코노베이션 3차 세미나 교안Lee Jungpyo
 
유니티 Rpg게임배경 스타트업 두번째 스터디자료
유니티 Rpg게임배경 스타트업 두번째 스터디자료유니티 Rpg게임배경 스타트업 두번째 스터디자료
유니티 Rpg게임배경 스타트업 두번째 스터디자료Je Lyoung Kim
 
이미지와 애니메이션 효과 적용하기
이미지와 애니메이션 효과 적용하기이미지와 애니메이션 효과 적용하기
이미지와 애니메이션 효과 적용하기Devgear
 
NDC2011 - 카메라 시스템을 통해 살펴보는 인터랙티브 시스템 개발의 문제점
NDC2011 - 카메라 시스템을 통해 살펴보는 인터랙티브 시스템 개발의 문제점NDC2011 - 카메라 시스템을 통해 살펴보는 인터랙티브 시스템 개발의 문제점
NDC2011 - 카메라 시스템을 통해 살펴보는 인터랙티브 시스템 개발의 문제점Jubok Kim
 
Unity4 Mecanim 활용
Unity4 Mecanim 활용Unity4 Mecanim 활용
Unity4 Mecanim 활용희운 강
 
June report in korean
June report in koreanJune report in korean
June report in koreannao takatoshi
 
모바일웹Ui개발 저자세미나 1부
모바일웹Ui개발 저자세미나 1부모바일웹Ui개발 저자세미나 1부
모바일웹Ui개발 저자세미나 1부NAVER D2
 
[IGC 2017] 넥스트플로어 김영수 - Protocol:hyperspace Diver 개발 포스트모템
[IGC 2017] 넥스트플로어 김영수 - Protocol:hyperspace Diver 개발 포스트모템[IGC 2017] 넥스트플로어 김영수 - Protocol:hyperspace Diver 개발 포스트모템
[IGC 2017] 넥스트플로어 김영수 - Protocol:hyperspace Diver 개발 포스트모템강 민우
 
브릿지 Unity3D 기초 스터디 2회
브릿지 Unity3D 기초 스터디 2회브릿지 Unity3D 기초 스터디 2회
브릿지 Unity3D 기초 스터디 2회BridgeGames
 
노동진 Mega splatting
노동진 Mega splatting노동진 Mega splatting
노동진 Mega splattingdrandom
 

Semelhante a Gametech2015 (20)

Ndc2013 정리(upload버전)
Ndc2013 정리(upload버전)Ndc2013 정리(upload버전)
Ndc2013 정리(upload버전)
 
[1002 조진현]unity3d 소개
[1002 조진현]unity3d 소개[1002 조진현]unity3d 소개
[1002 조진현]unity3d 소개
 
Ndc2010 김주복, v3. 마비노기2아키텍처리뷰
Ndc2010   김주복, v3. 마비노기2아키텍처리뷰Ndc2010   김주복, v3. 마비노기2아키텍처리뷰
Ndc2010 김주복, v3. 마비노기2아키텍처리뷰
 
20140514 team blender_v01 (Korean)
20140514 team blender_v01 (Korean)20140514 team blender_v01 (Korean)
20140514 team blender_v01 (Korean)
 
[IGC 2016] 넷게임즈 김영희 - Unreal4를 사용해 모바일 프로젝트 제작하기
[IGC 2016] 넷게임즈 김영희 - Unreal4를 사용해 모바일 프로젝트 제작하기[IGC 2016] 넷게임즈 김영희 - Unreal4를 사용해 모바일 프로젝트 제작하기
[IGC 2016] 넷게임즈 김영희 - Unreal4를 사용해 모바일 프로젝트 제작하기
 
전형규, 가성비 좋은 렌더링 테크닉 10선, NDC2012
전형규, 가성비 좋은 렌더링 테크닉 10선, NDC2012전형규, 가성비 좋은 렌더링 테크닉 10선, NDC2012
전형규, 가성비 좋은 렌더링 테크닉 10선, NDC2012
 
증강현실을 통한 두더지잡기 게임
증강현실을 통한 두더지잡기 게임증강현실을 통한 두더지잡기 게임
증강현실을 통한 두더지잡기 게임
 
Gamebryo LightSpeed (Korean)
Gamebryo LightSpeed (Korean)Gamebryo LightSpeed (Korean)
Gamebryo LightSpeed (Korean)
 
증강현실을 통한 두더지잡기 게임
증강현실을 통한 두더지잡기 게임증강현실을 통한 두더지잡기 게임
증강현실을 통한 두더지잡기 게임
 
증강현실을 통한 두더지잡기 게임
증강현실을 통한 두더지잡기 게임증강현실을 통한 두더지잡기 게임
증강현실을 통한 두더지잡기 게임
 
에코노베이션 3차 세미나 교안
에코노베이션 3차 세미나 교안에코노베이션 3차 세미나 교안
에코노베이션 3차 세미나 교안
 
유니티 Rpg게임배경 스타트업 두번째 스터디자료
유니티 Rpg게임배경 스타트업 두번째 스터디자료유니티 Rpg게임배경 스타트업 두번째 스터디자료
유니티 Rpg게임배경 스타트업 두번째 스터디자료
 
이미지와 애니메이션 효과 적용하기
이미지와 애니메이션 효과 적용하기이미지와 애니메이션 효과 적용하기
이미지와 애니메이션 효과 적용하기
 
NDC2011 - 카메라 시스템을 통해 살펴보는 인터랙티브 시스템 개발의 문제점
NDC2011 - 카메라 시스템을 통해 살펴보는 인터랙티브 시스템 개발의 문제점NDC2011 - 카메라 시스템을 통해 살펴보는 인터랙티브 시스템 개발의 문제점
NDC2011 - 카메라 시스템을 통해 살펴보는 인터랙티브 시스템 개발의 문제점
 
Unity4 Mecanim 활용
Unity4 Mecanim 활용Unity4 Mecanim 활용
Unity4 Mecanim 활용
 
June report in korean
June report in koreanJune report in korean
June report in korean
 
모바일웹Ui개발 저자세미나 1부
모바일웹Ui개발 저자세미나 1부모바일웹Ui개발 저자세미나 1부
모바일웹Ui개발 저자세미나 1부
 
[IGC 2017] 넥스트플로어 김영수 - Protocol:hyperspace Diver 개발 포스트모템
[IGC 2017] 넥스트플로어 김영수 - Protocol:hyperspace Diver 개발 포스트모템[IGC 2017] 넥스트플로어 김영수 - Protocol:hyperspace Diver 개발 포스트모템
[IGC 2017] 넥스트플로어 김영수 - Protocol:hyperspace Diver 개발 포스트모템
 
브릿지 Unity3D 기초 스터디 2회
브릿지 Unity3D 기초 스터디 2회브릿지 Unity3D 기초 스터디 2회
브릿지 Unity3D 기초 스터디 2회
 
노동진 Mega splatting
노동진 Mega splatting노동진 Mega splatting
노동진 Mega splatting
 

Mais de SangYun Yi

Rooms2 vr ArtWorks
Rooms2 vr ArtWorksRooms2 vr ArtWorks
Rooms2 vr ArtWorksSangYun Yi
 
Unite Seoul 2017 Yi SangYun
Unite Seoul 2017 Yi SangYunUnite Seoul 2017 Yi SangYun
Unite Seoul 2017 Yi SangYunSangYun Yi
 
Unity Surface Shader for Artist 04
Unity Surface Shader for Artist 04Unity Surface Shader for Artist 04
Unity Surface Shader for Artist 04SangYun Yi
 
Unity Surface Shader for Artist 03
Unity Surface Shader for Artist 03Unity Surface Shader for Artist 03
Unity Surface Shader for Artist 03SangYun Yi
 
Unity Surface Shader for Artist 02
Unity Surface Shader for Artist 02Unity Surface Shader for Artist 02
Unity Surface Shader for Artist 02SangYun Yi
 
Unity Surface Shader for Artist 01
Unity Surface Shader for Artist 01Unity Surface Shader for Artist 01
Unity Surface Shader for Artist 01SangYun Yi
 
Display color와 Digital texture format의 이해
Display color와 Digital texture format의 이해Display color와 Digital texture format의 이해
Display color와 Digital texture format의 이해SangYun Yi
 
Igc2016 Technical Artist가 뭐하는 사람이에요?
Igc2016 Technical Artist가 뭐하는 사람이에요?Igc2016 Technical Artist가 뭐하는 사람이에요?
Igc2016 Technical Artist가 뭐하는 사람이에요?SangYun Yi
 
Unite seoul 2016 Rooms2 mobile to VR
Unite seoul 2016 Rooms2 mobile to VRUnite seoul 2016 Rooms2 mobile to VR
Unite seoul 2016 Rooms2 mobile to VRSangYun Yi
 
Unite2015 probelight English version
Unite2015 probelight English versionUnite2015 probelight English version
Unite2015 probelight English versionSangYun Yi
 

Mais de SangYun Yi (10)

Rooms2 vr ArtWorks
Rooms2 vr ArtWorksRooms2 vr ArtWorks
Rooms2 vr ArtWorks
 
Unite Seoul 2017 Yi SangYun
Unite Seoul 2017 Yi SangYunUnite Seoul 2017 Yi SangYun
Unite Seoul 2017 Yi SangYun
 
Unity Surface Shader for Artist 04
Unity Surface Shader for Artist 04Unity Surface Shader for Artist 04
Unity Surface Shader for Artist 04
 
Unity Surface Shader for Artist 03
Unity Surface Shader for Artist 03Unity Surface Shader for Artist 03
Unity Surface Shader for Artist 03
 
Unity Surface Shader for Artist 02
Unity Surface Shader for Artist 02Unity Surface Shader for Artist 02
Unity Surface Shader for Artist 02
 
Unity Surface Shader for Artist 01
Unity Surface Shader for Artist 01Unity Surface Shader for Artist 01
Unity Surface Shader for Artist 01
 
Display color와 Digital texture format의 이해
Display color와 Digital texture format의 이해Display color와 Digital texture format의 이해
Display color와 Digital texture format의 이해
 
Igc2016 Technical Artist가 뭐하는 사람이에요?
Igc2016 Technical Artist가 뭐하는 사람이에요?Igc2016 Technical Artist가 뭐하는 사람이에요?
Igc2016 Technical Artist가 뭐하는 사람이에요?
 
Unite seoul 2016 Rooms2 mobile to VR
Unite seoul 2016 Rooms2 mobile to VRUnite seoul 2016 Rooms2 mobile to VR
Unite seoul 2016 Rooms2 mobile to VR
 
Unite2015 probelight English version
Unite2015 probelight English versionUnite2015 probelight English version
Unite2015 probelight English version
 

Gametech2015

  • 1. 모바일 플랫폼을 위한 유니티 에서 게임 환경 구축 MJT Project PostMoterm으로 살펴보는 Unity 3D Environment art for mobile platform Game Tech 2015 Yi SangYun
  • 2. 과르네리 스튜디오 대표작 : 삼한 제국기. 1000vs 1000 실시간 전투 한국 역사 소재 국가 시뮬레이션 2011년 11월 G-star 참가 2012년 8월 독일 게임스컴 참가 이상윤 (Yi SangYun) (전) Kuno interactive 책임 아티스트, 3D lead Artist - Defense Technica, The Mansion(Rooms2) - Kgc2013 defense technica_converting (현) Guarneri Studio 배경/TA - MJT Project(가제) - Facebook 게임 3D 배경 그룹 운영 中
  • 3. - Contents - 1. 모바일 게임 개발 환경 분석 2. 유니티 아트 개발과 관련하여 고려해야 할 사항들 3. 향후 전망
  • 4. 모바일 게임환경 분석 - 고해상도 디스플레이, 고사양 모바일 디바이스 기기의 보급 가속 Samsung Galaxy S6 5.1인치 2560x1440(QHD) 엑시노스 7420 Octa-core(Quad-core 2.1G + Quad-core 1.5G), T760 770MHz 3G RAM (출시 국가 및 세세한 모델 이 따라 스펙 차이 존재) Android IOS Apple iphone 6 plus 5.5인치 1920x1080(FHD) A8 (Dual core – 2.6G + PowerVR G6650 6 core cluster) 1G RAM
  • 5. - 타겟 디바이스 Samsung Galaxy S3 4.8인치 1280x720(HD) 엑시노스 4412 Quad-core 1.4G, MP4 440MHz 2G RAM (출시 국가 및 세세한 모델 이 따라 스펙 차이 존재) Android IOS Apple iphone 5 4인치 1136x640 A6(Dual Core – 1.3G + PowerVR SGX543 3 Gpu cluster) 1G RAM
  • 6. - OS별 시장 점유율 24일(현지시간) 시장조사기관 IDC과 외신에 따르면 지 난해 모바일 운영체제 안드로이드의 시장점유율이 81.5%를 차지했고, iOS는 14.8%를 기록했다. 안드로이 드는 지난해 엄청난 성장률을 기록하면서 시장 점유율이 81.5%에 달했다. 2013년에 비해 출하량과 시장점유율 이 모두 성장했다. 지난해 안드로이드 폰 출하량은 10억 5930만대로 역대 최대 규모다. 반면 iOS의 점유율은 15.1%에서 14.8%로 소폭 하락했 다. 출하량은 1억9270만대로 2013년(1억5340만대)보다 늘었다. 4분기 점유율 증가폭만 놓고 보면 iOS가 안드로 이드보다 높다. 2013년 4분기 17.5%였던 점유율이 다음 해 같은 기간에는 19.7%로 늘어났다. 출처 : 나인투파이브(구글) 및 네이버 뉴스기사 中
  • 8. 유니티 아트 개발과 관련해 고려해야 할 사항 - 게임이 화면에 그려질 때 영향을 주는 부분은 크게 세가지 Game Art Character Environmnet Particle Game LogicUI
  • 9. - Drawcall Scene에 있는 vertex들을 그리기 위해 CPU가 GPU에게 보내는 요청. 카메라를 통해 한 프레임의 화면을 만들어 내는 동안 1개의 셰이더 패스, 1개의 material로 오브젝트를 한번 그리는 작업의 단위. 그래픽 이슈에서 성능과 직결되는 중요한 요소 중 하나. Texture Shader Mesh Material Mesh render DrawCall
  • 10. Defense Technica Steam steage 19 Defense Technica Mobile steage 19
  • 11. MJT Project 영지 관리 메뉴
  • 12. - batching Drawcall을 소비하여 그려진 mesh를 다시 그릴때 연 산을 줄이기 위한 기법 1) Static Batching(정적배칭) 움직이지 않는 object가 해당되며 300개의 vertex 이하에서만 처리된다. (변동있을수 있음) 정적배칭 처리를 할 경우 드로우콜은 아낄수 있지만 카메라의 뷰에 걸리지 않는 오브젝트 역시 계산을 하 기 때문에 컬링 영역을 잘 계산해서 배치하는 쪽이 좋 다.(scene에 따라 오히려 끄는 쪽이 퍼포먼스에 좋은 경우도 있다) 2) Dynamic Batching(동적 배칭) 움직이는 object가 해당. 정적 배칭에 비해 조금 더 무겁게 처리된다. 3) Project의 batching을 활성화 할 경우 별도로 체크 하지 않더라도 자동으로 활성화 된다
  • 13. - Mesh animation Skinned 되지 않는 mesh에 움직임을 부여하는 작업. unity3D animation 윈도우나 3D tool(3DS MAX or Maya)에서 작업해서 사용. Unity3D는 vertex animation은 지원하지 않으나 mesh animation은 지원한다. 병사 말의 skinned mesh 숫자를 줄이기 위해 사용하여 dynamic batching을 적용 Unity Animation Window Mesh, Material animation등을 제어할수 있으며 만들어둔 클립을 object에 드래그하여 붙임으로 손쉽게 제어할 수 있다.
  • 14. 영웅유닛용 말 스킨된 메쉬로 구성 Drawcall : 1 Probe light 사용으로 Batching 불가. 최대 scene에 5unit 등장. 병사유닛용 말 Mesh animation 사용 Drawcall : 12 동적배칭 사용 Probe light 미사용 결전맵에서 산술적으로 최대 50unit까지 등장.
  • 15. MJT Project 영지전 전투 statics : 스킬 사용시 왼쪽 상단에 영웅에 근접한 카메라를 로드하여 연출하는 씬.
  • 16. - Shadow(그림자) 등장하는 유닛이 많아 화면에 그려지는 양이 엄청나므로 처음부터 plan texture를 쓰는것 부터 고려 Skinned mesh의 경우 초기부터 넣어서 사용하기 시작했으나 건물 프랍의 경우 중반까지도 고심. 디바이스 체크후 써 도 되겠다는 결정후 사용하기 시작 케릭터의 경우 일괄적으로 원으로 된 texture만을 사용하였으나 건물 프리팹의 경우 사각형과 원 두가지를 사용
  • 17. - LOD Level of Detail. 초기에는 사용을 고려했으나 poly counter 감소에 따른 FPS변화가 그리 크 지 않고 아트 퀄리티만 나빠지는 결과가 예상. 많이 생성된 건물 프리팹(건물당 6~10 개 정도의 레벨 디자인)을 제작하게 되어 스케쥴상 비효율적으로 판단(컨셉+모델 링+TA = 1人) 케릭터 쪽 역시 별도의 LOD 메쉬 제작 및 애니메이션 작업 인원이 부족으로 힘들것으로 판단(애니메이션+이펙트 = 1人) 좀 더 쾌적한 퍼포먼스 확보를 위해서는 적용시키는 것이 좋았겠지만 타겟 디바이스 구동시 LOD를 적용하지 않더라도 플 레이가 가능한 퍼포먼스가 나와 작업하지 않음
  • 18. - Shader 및 probe light Project의 shader는 모두 별도로 제작하여 사용 (particles에 additive 등 몇가지는 unity 기본 shader사용) Cg shader 기반의 1 pass shader가 대부분. 케릭터의 경우는 probe light를 사용하게 되 었다(병사용 말의 경우 동적 배칭 때문에 사 용하지 않음
  • 19. Character shader : 케릭터 셰이더는 기본적으로 probe light를 사용하 는 쪽으로 결정. Scene 내에 많은 숫자(최대 100~120 unit)가 그려지 기 때문에 병사 유닛의 경우 최대한 가볍게 , 영웅 유닛은 전투 화면과 관리 메뉴 양쪽에서 잘 보여야 함 Character Diffuse : 케릭터 기본 shader. TransparentCutout : alpha source를 사용하는 shader. CharacterSelfIllumination : 발광하는 효과를 가진 무기, 갑옷 등 장식 및 효과가 필요한 유닛에 사용 SelfilluminBlend : 반투명 몬스터등을 위해 사용. One One으로 제작하 였기에 확대할 경우 부분적으로 뒷면이 보이는 문제가 있으나 작게 그 려지기에 1 pass 방식을 그대로 사용. 좌 : 1 pass로 그린 결과물, 우 : 2 pass로 그린 결과물 참조 : 대충 살아가는 게임개발자(대마왕님 블로그)
  • 20. 결전맵에서 낮 scene과 밤 scene의 probe light 영향 비교
  • 22. 유니티 공식 문서에 들어있는 WrapDiffuse코드 실제 적용된 이미지 비교 Character 피부톤을 좀 더 산뜻하게 보여지는 방법을 고심하다 wrap diffuse를 적용해 보기 로 해보았음.(Toon lamp를 고민하다 유니티 공식문서에 나와있는 코드를 참조) 기왕 넣는거 Rim light도 넣어서 테스트
  • 23. http://jeanmoreno.com/matcap. Asset store에서 받을수 있다. 심지어 무료~!
  • 24. 각 shader test 비교 스샷 Matcap shader 코드는 JP Lee 님. 소스는 unity Asset store의 matcap shader 소스 사용
  • 25. 터치로 확대 축소 및 회전이 가능한 화면 좌 : Probe light / Lambert 우 : Probe light/ Rimlight / WrapDiffuse 배경 이미지의 깃발은 shader animation 으로 깃발이 펄럭이도록 제어
  • 26. - Lightmapping Defense Technica mobile stage list iphone 4를 제외한 모든 모바 일 디바이스에서 lightmap을 사용하여 발매 퍼포먼스에 크게 영향을 주지 않으며 scene을 보다 풍부하 게 표현해줄 수 있는 있음. 또 한 probe light와 조합하여 사 용할 경우 보다 풍부한 표현을 할 수 있음
  • 27. 배경 영지맵, 결전맵, 탐험맵의 3종류를 주야로 조명만 달리 하여 제작 영지맵, 결전맵, 탐험맵의 3종류를 주야로 조명만 달리 하여 제작 Lightmap size는 작은 prop이 많기 때문에 1024x1024 를 사용(lightmap texture size를 더 줄일경우 퀄리티 저 하가 드러남)
  • 28. Prop의 경우 대부분 Unlit Diffuse, Unlit Transparent Cutout 사용. 파티클은 전투시작시 자동으로 꺼짐
  • 29. - 연출 Texture atlas를 이용해 UV 이동으로 배경 프랍이 작동할때 연출을 표현. Prop이 scene에서 서서히 사라지는 효과를 위한 shader
  • 30. - texture option Character 및 배경은 ETC로 압축된 texture를 기본으로 사용. 타겟 디 바이스가 S3(1280x1024)였기 때문에 너무 작은 texture 사용은 지양 ETC로 압축된 texture의 경우 해상도 변경에 따른 용량 증가가 크게 부 담될 수준은 아니라고 판단(1024x1024의 경우 0.7MB) 반면 UI에 사용되는 texture의 경우 RGBA 16bit만으로도 4배의 용량 을 차지하게 됨. 알파영역을 가진 PNG파일의 경우 디더링으로 인한 품 질저하 때문에 RGBA 32bit를 사용할 경우 8배의 용량을 가지게 됨.
  • 31. 케릭터 정보창 배경에 쓰인 이미지의 각 texture compressed option에 따른 용량. Alpha영역이 없더라도 ETC와 RGBA 24bit와의 texture size는 6배 차이가 난다. 화면 전체를 그리는 큰 이미지이므로 RGBA 24bit를 사용했다. - texture compressed option에 따른 texture quality 비교
  • 32. Keijiro 씨의 texture compression plug-in 16bit RGBA 이미지의 디더링 현상을 개선시 켜준다. 이미지 자체를 변경 시키므로 롤백이 안된다. UI 담당 디자이너가 툴을 이해하고 직접 엔진에 올리 면서 작업하지 않을경우 별도의 담당자 필요. 셀 채색 방식의 이미지는 괜찮은 효과를 보여주지만 그렇지 않을경우 이미지가 뭉개지는 현상 발생. 결국 사용하지 못함
  • 33. Advanced option에서 Mipmap 적용으로 인해 정보창에서 케릭터 얼굴의 디더링 증상때문에 케릭터 텍스쳐의 경우는 mipmap을 사용하지 않 음 배경의 경우 mipmap 적용 여부를 개발 중반부까지 고심하 였으나 test 결과 케릭터에 비해 스케일이 다양하게 보이는 점과 전체 유닛들을 모였을때 지글거림이 눈을 피로하게 한 다는 느낌으로 mipmap을 사용하였으나 filtering 방식을 기 본 BOX에서 Kaiser 방식으로 변경.(결고물에 따라 끄거나 옵션이 다르게 셋팅) 유닛 합성 창에 사용되는 바닥 texture의 경우 Aniso level과 Filter mode를 조정.
  • 34. Daikon forge 저렴하다(sale할때 구매) NGUI에 비해 완성도가 낮음. UI를 위한 미들웨어보다 라이브러리 모음집 같은 느낌 NGUI와 대동소이한 기능 초심자에게는 사용하기 좋음 퍼포먼스가 나오지 않음 자잘한 버그가 많음 현재 UI 사업 철수 UI programming NGUI 전통의 강자 버그가 적음(버젼업할수록 개선) 사용자 편의성이 좋음 퍼포먼스가 잘나옴
  • 35. Server programming 유닛 연산 서버로 전송 결과 산출 디바이스에 전송 결과 반영 클라이언트의 연산을 서버로 가져오는 구조를 취함. 이로 인해 클라이언트에서 연산의 많은 부분을 비쥬 얼 퍼포먼스에서 확보 할 수 있었음 화면에 등장하는 유닛의 숫자가 많기 때문에 클라이언트 연산을 최대한 분산하기 위한 해결책으로 개발 (서버쪽 작업 진행여부에 따라서 수시로 타겟 디바이스에서 퍼포먼스 체크) 연산, 충돌처리, 길찾기 등 전투에서 발생하는 많은 부분을 서버에서 처리 해줌으로 퍼포먼스 확보. 전투 에서 서버에서 처리되는 부분에서 지연되는 현상을 줄이기 위해 여러 방법 고려(패킷 줄이기, 쓰레드 추 가 등)
  • 36. 제작 후기 - 프로젝트 중반까지 계속해서 FPS(Frame per second) 체크. 화면에 올려서 구동되는 것 만으로는 안정 적으로 구동되는지 확인 할 수 없기 때문에 명확해지는 단계까지 계속해서 체크 - engine version up에 다른 변동 사항 체크. 대규모 마이그레이션은 프로젝트 진행상황에 맞춰서 결정할 것 - build 용량은 프로젝트 성격에 맞춰서 결정. 가이드가 분명하다면 프로젝트 퀄리티가 떨어지는 부분을 명확히 인지하고 작업 - 프로젝트 진행 단계에서 리소스 작업 가이드를 분명하게 결정하고 진행(불필요한 리소스를 최대한 줄여 낼 수 있다) - poly counter, texture size를 줄인다고 퍼포먼스가 무조건 좋아지지 않는다.(타겟 디바이스에서의 프레 임 레이트 체크 및 profiler 활용) - batching 과 mipmap의 사용 여부는 프로젝트 성격에 따라서 결정.
  • 37. 향후 전망 Apple metal API Nvidia Shield Cloud Gaming(NC soft Lineage Enternal) High Quality 2D Games
  • 38. FireMonkeys Studio Mint 3D Engine(2013) Madfinger Games, ShadowGun Unity3D Engine(2011) Midoki, Plunder Pirates (2015) Chair Entertainment, Infinity Blade Unreal 3 Engine(2010) AimToG, Angel in the Sky Unreal 4 Engine(미정)
  • 39. Unreal 4 월 $19의 가격 정책을 취하다 완전 무료화 선언 분기별 게임 또는 애플리케이션당 $3,000(약 310만원 연간 1200만원 가량)를 초과한 매출의 5%를 지불 혹은 별도의 라 이선싱 계약 체결 Unity 5 대부분 기능은 무료로 개발 가능 Free 버전은 이전 회계연도 기준 연간 총수입이나 예산이 US $10만을 초과하는 기업, 아카데미, 비영릴 또는 정비 기업의 경우 프로 라이선스 사용 불가. Pro version 월$75 or 165만원 IOS, Android add-on 각 165만원. 기존라이센스 업그레이드 82만5천원
  • 40. 단점 상용 엔진의 무료버젼 베포로 인해 접근성은 높아졌으나 필요한 인력을 여유있게 구성할 정도로 여력이 있 는 개발사가 많지 않음. 개발기간을 여유있게 확보하기 힘들기 때문에 프로토 단계에서의 충분한 테스트가 쉽지 않음. 높아진 게임 퀄리티로 인한 시장에서의 요구치는 올라갔으나 수익은 기대하기 쉽지 않은 상황.(MMORPG가 많이 개발되던 시기와 같은 딜레마가 모바일 개발환경에서도 발생)
  • 41. 게임 3D 배경 아티스트(Game 3D Environment Artist Forum) https://www.facebook.com/groups/3Dbackground/
  • 42. Yi SangYun(3D Environment Artist, TA) illustor@gmail.com +82 01 9313 0583 Q&A 終