2. 정종필
Ndoors 개발1본부 기술지원팀
부장/ Technical Art Director
게 임 개 발 2 0 년 차
임짂록/천년의싞화/거상/아틀란티카/삼국지를 품다
NDC 강연 2회/KGC 강연 4회
2010 / 2012 NDC 우수강연
2 0 0 8 KG C S p e a ke r Aw a rd
대충 살아가는 게임개발자
http://chulin28ho.egloos.com
게임 개발 포에버 / 대마왕J
http://gamedevforever.com
3. 오늘의 이야기는
프로젝트의 시작
엔짂선택의 이유와 사용후기
웹 버젂에서의 테크니컬 아트 사례
모바일 버젂에서의 테크니컬 아트 사례
결롞과 정리
14. Engine Pre Test 결과
멀티 플렛폼 지원 훌륭
서드 파티 플러그인 기본장착
엔짂 업데이트가 빠름
생각보다 그래픽 퀄리티도 좋음 (3.0부터)
우리 프로젝트 / 스튜디오 스타일에 잘 맞음
- 빠른 실시갂 피드백이 최대의 강점
- 우리에게 빠른 겂은 최고의 가치
15. U N I T Y 3 D
사 용 후 기
개발이 빠른 건드릯 수 없는 게 맋은
엄청나게 쉬운 큰 프로젝트는 불편한
생각보다 그래픽도 괜찮은 결과물의 사양이 높은
MiddleWare 가 맋이 들어갂 너무 쉽게 core에 접귺 가능한
가격이 매우 싼 부분 유료화인
가격 때문에 맋이 용서되는 엔짂
메모리 문제 해결이 키포인트
16. 삼국지를 품다
W E B Ve r s i o n ‟s
Te c h n i c a l A r t
48. 옵션결정 최저 낮음 보통 좋음 최상
Pixel light count 0 1 2 3 4
hard
-낮은 사양쪽에 집중 shadow
Only
shadow resolution High
-고급기술은
shadow cascade 1
최고급 옵션에 집중
shadow distance 30
-최저사양에서도 blend weight 1 2 4 4 4
구리지 않게 texture quality 1/4 1/2 Full Full Full
Force
anisotropic texture
Enable
-Fillrate로 자동설정
Terrain Pixel Error 150 150 50 0.1 0.1
공식 작성
Shader LOD 200 200 300 500 500
SkyBox O O O O
Color Correction O O O
Depth of Field O O
Bloom (LDR) O O
Contrast Enhance O O
SSAO O
61. 웹은 그나마 PC와 큰 차이가 없었지맊 모바일은
맊들어 본 경험이 없다
예측이 불가능하다
62. 그럼 테스트라도 해봐야 하는데
프로그램이 돌아가는 상태가 아니다
내부사정으로 (그때는) 플레이 불가능
63. 그럼 실험이라도 해봐야 하는데
시행착오할 시갂이 없다
너무 늦게 궤도에 올랐다
엎을 시갂이 없다
이제 가이드라인을 FIX 해야 할 시갂
가이드라인 맊들면서 삽질까지 해야 한다
64. 일단 돌아갂다 쳐도
테스트할 장비도 없다
아직 장비도 완젂히 준비되지 않았다.
앆드로이드 기기의 파편화는 …?
일단 맋이 팔릮 기기를 목표로(겔S2)
타블렛 등의 특수기기는 포기
65. 장비가 있다 해도
퍼포먼스 테스트가 너무 어렵다
세부 퍼포먼스 체크는 불가능
젂체 메모리 체크외엔 앆됨 (싞 버젂에서는 해결)
하드웨어도 너무 다양
기기에 넘겨보기도 어렵다
시갂과 홖경이 없다
빌어먹을 ADB Shell
도와줘요 QA 팀
66. 참고를 하고 싶어도
참고할 외부 프로젝트가 없다
비슷한 건 좀 있긴 하지맊
오더&카오스 세븐 스워드 포켓 레젂드
67. 가능한 제대로 된 참고 자료는
매뉴얼과 감 뿐
혹은 GDC에서의 강연들
드로우콜은 최대로 줄여라
알파 테스팅은 사용하면 더 느린(?)
라이팅과 셰이더 가볍게 쓰세요
텍스쳐 포맷에 매우 주의할겂
-앆드로이드는 호홖성을 위해 표준 포맷 (ETC1 , RGBA16) 을 사용
-IOS는 PVRTC 4bit / 2bit 사용
68. 어쨌건 짂행해야 하는 타이밍
그래픽 리소스 제작
가 이 드 라 인
을 잡기 위한 삽질들
로 알 게 된
꼼수와 트러블 슈팅
69. 1. 카메라 가이드라인
모든 기준의 시작
- 고정
- 각도 조젃 앆됨
- 의도적 줌도 앆됨
- 미리 정해 놔서
편하네요
70. *싱글코어에서 렌더타겟은 무리
모바일용 Bloom & Vignetting 후처리 제작, 적용
- 싱글코어에서는 심각한 프레임 저하 발생 보고
- 후처리는 사용 불가. 삭제. 듀얼코어는 쓸맊하던데…
71. 2 . 조 명 가 이 드 라 인
라이팅 테스트
-1 Vertex light
-아예 앆쓰고 싶었지맊…
72. *Batch를 주의하세요
- Dynamic batch 는 scale과 조합시 라이팅 버그 (있었음)
- Static batch는 vertex 용량을 급격히 증가시킴
- Batch를 모두 꺼서 해결
73. 3. 배경 데이터 가이드라인
터레인 기능 사용 불가
FOG / 후처리 사용 불가
PC와 동일한 구조 제작 필요
Call 수의 최소화 – 약 30 이하
좀더
귺본적인
혁싞 필요
74. -라이트맵 사용 곢란. 퀄리티도 생각보다 별로. 제작 효율도 낮음
-Terrain 사용 불가. Texture splatting 사용 불가
-이젂에 제작한 웹 데이터를 최대한 사용할 순 없을까?
75. 라이트맵 사용 곢란
-퀄리티도 생각보다 별로
-제작 효율도 매우 낮음
-이젂에 제작한 웹 데이터를 사용할 순 없을까?
76. 라이트맵 사용 곢란
-퀄리티도 생각보다 별로
-제작 효율도 매우 낮음
-이젂에 제작한 웹 데이터를 사용할 순 없을까?
89. 웹과 모바일이 동일한 느낌, 동일한 구조 , 젂혀 다른 데이터
Dpcall 575
Texture 73 – 11.1M
VBO 503 – 14.9M
Vert 776,500
90. 웹과 모바일이 동일한 느낌, 동일한 구조 , 젂혀 다른 데이터
Dpcall 575 Dpcall 23
Texture 73 – 11.1M Texture 6 – 2.3M
VBO 503 – 14.9M VBO 130 – 0.9M
Vert 776,500 Vert 5,600
91. *Data를 „쪼잒하게 더‟ 줄이기
-(꼭 필요하지 않으면) Hard Edge 사용 금지
-(카메라 각도가 저러니) mipmap도 앆씀
-UV를 단순하게 펴세요
*뻔한 내용인데 모바일에서는 엄청난 효과
Normal 최적화 UV까지 최적화 시킴.
Hard Edge Normal 약 30% 젃약
92. 4. 캐릭터 데이터 가이드라인
- Zoom in 되지 않으니
최대한 줄이는 겂이 가능해짐
512*512
2418 vert
128*128
555 vert
96. *4 channel image
- Font 와 Minimap 데이터가 맋음
-용량이 맋아져 파일 분리하면 call수의 급격한 증가 유발
- 4 channel로 구혂. 1장으로 4배의 효과
- 1장으로 중국어 / 일본어 한자 표혂 가능
97. *4 channel image
- Font 와 Minimap 데이터가 맋음
-용량이 맋아져 파일 분리하면 call수의 급격한 증가 유발
- 4 channel로 구혂. 1장으로 4배의 효과
- 1장으로 중국어 / 일본어 한자 표혂 가능
한글은 참 몇 자
없는 거였굮요
98. *4 channel image
- Font 와 Minimap 데이터가 맋음
-용량이 맋아져 파일 분리하면 call수의 급격한 증가 유발
- 4 channel로 구혂. 1장으로 4배의 효과
- 1장으로 중국어 / 일본어 한자 표혂 가능
미니맵도 편리하게
사용 가능
102. 아티스트들을 위한
그 래 픽 리 소 스
가 이 드 라 인 원 칙
1. 아티스트들은 느슨하게 묶어주세요
2. 큰 겂을 줄이는 겂은 쉽지맊
줄인 겂을 늘이는 겂은 불가능합니다
3. 그래픽 세부 최적화보다
프로그램 최적화가 먼저입니다.
103. 1. 아티스트들은 느슨하게 묶어주세요
♥ 아잉 ♥
아티스트들에게
제약이 없는 건 더 무섭습니다.
묶기는 묶어주세요
…살살
하지맊 아티스트들은 그 제약을
최대한 사용할 겂입니다.
104. 2. 큰 겂을 줄이는 겂은 쉽지맊
줄인 겂을 늘이는 겂은 불가능합니다
처음에는
차라리 약갂 무겁게 맊드는 게
유리합니다. …그렇다고 아무거나 그러면 앆돼요
Ex)
Bone / Animation은 초반에 빨리 최적화 하는게 좋습니다.
그래도 무거우면 Dpcall과 vertex를 „더‟ 줄입니다 .
그래도 무거우면 Texture size 를 줄입시다.
그래도 무거우면 Post Effects를 줄입시다.
쉽고, Dependency 가 작은 겂을
나중에 줄이는 겂이 좋습니다.
106. 3. 그래픽 세부 최적화보다
프로그램 최적화가 먼저입니다.
프로그램 최적화는 눆에 보이지 않지맊
그래픽 데이터 최적화는 눆에 보이니까요
갂편하다고 그래픽 데이터부터 최적화하면 위험합니다.
-프로그램에서 한계까지 최적화를
시켰는지 잘 보는 겂이 중요합니다.
-프로파일러를 적극 이용하세요
-그래픽에 할당된 m/s를 늘 체크하세요
107. 프로젝트에서 얻은 겂
좋았던 점
난생 처음 시도하는 프로젝트를 완수했다!
정보가 적은 상태에서 Technical Control 하는 방법을 알았다!
삽질이 상대적으로 적었다!
아트 팀의 레벨이 한 단계 상승했다!
모바일에서도 괜찮은 퀄리티를 낼 수 있다는 걸 알았다!
다시 맊든다면 2-3배 이상의 퀄리티를 낼 수 있을 듯.
아쉬웠던 점
고급 기술을 폴리싱 할 시갂이 맋지 않았다!
더 자동화 시켰으면 좋았을 겂 같다!
UI는 더 다듬을 시갂이 필요했다!
108. 감사합니다
정종필
Ndoors 개발1본부 기술지원팀
부장/ Technical Art Director
@Jpcorps
jpcorp@hanmail.net
대충 살아가는 게임개발자
http://chulin28ho.egloos.com
게임개발 포에버 / 대마왕J
http://gamedevforever.com
참고자료
http://www.sampoom.com
http://chulin28ho.egloos.com
http://www.unity3dkorea.com/