NDC13 24일

Etc 2013. 4. 26. 10:37 |

회사의 결재를 받아서 NDC13 에 다녀왔습니다.


원래 보고서 대신으로 회사 팀블로그에 바로 올려야 하는데, 회사 팀블로그가 자동 저장 기능이 없어서 일단 블로그에도 쓰고 옮겨야 겠습니다


잘 아시다시피 NDC 발표자료는 대부분 나중에 사이트에 올라옵니다

http://ndc.nexon.com/

http://www.thisisgame.com/board/list.php?category=8202

http://www.inven.co.kr/webzine/news/?keyword=NDC2013


그러니 참고하시기 바랍니다





Typescript, javascript 의 안정성을 높이기 위한 시도 - 최호영 (넥슨)



사실 js 세션이라고 생각하고 들어간 시간이었습니다. Typescript 에 대해서는 세션에 들어와서 처음 알게 되었죠...


들어보니 언어의 이름대로 데이터형(Type)을 지정해 줄 수 있는 javascript 라고 보면 됩니다. (단 컴파일 타임에서만 체크가 가능합니다.) 사실은 그냥 javascript 이죠



들어보니 actionscript2 와 거의 똑같다는 생각이 드네요...


클래스를 만들 수 있고, 그걸로 형을 지정할 수 있는... 말이죠...



클래스를 만들고 (js 에는 클래스가 없죠) 그걸로 형을 지정할 수 있다보면, 대규모 개발에 있어서 개발자가 좀 더 편리할 수는 있을 겁니다.



하지만 as2를 클래스 문법으로 짜다 보면 나오는 결과와 같이, 클래스 문법으로 js를 짜다보면 자연스레 객체의 생성이 많이 발생하게 됩니다.

그러다 보면 성능의 하락도 이어질 것이고, js의 장점을 많이 퇴색시키는 것이 되지 않을까 싶네요





Unity3D 로 2D 게임 최적화 이야기 - 갤럭시S에서 풀프레임 퍼즐주주 만들기 - 임석의 (넥슨)



Unity 로 이미 만든 게임을 저가폰에 맞추어 최적화하는 이야기 였습니다


사실 대세가 대세이니만큼 NDC 에 Unity 세션이 굉장히 많을 것이라 생각하고 기대했습니다.

얼마 전에 Unity에서 직접 연 행사가 있었습니다만(http://korea.unity3d.com/content/content.php?cont=unity2013) 회사에서 제가 맡고 있는 것이 언리얼의 UI 개발이다보니 유니티 행사에 보내달라고 하기는 설득력이 떨어졌기 때문입니다.

물론 제 휴가를 내고 갈 수도 있지만 곧 NDC 가 있으니 그럴 필요까지는 없다고 생각했지요



그런데 의외로 Unity 세션은 적어보였습니다. 아마도 보름 전에 열린 유니티 행사가 있기 때문이겠지요...



뭐 어쨌든 몇개 안되는 세션이니 찾아들었습니다. 사람도 많더군요...



일단 풀어보자면


로직개선 : 효과가 별로 없다.


오브젝트 풀 : 효과가 있다... 뭐 대부분의 언어가 풀링기법은 권장하고 있으니 당연한 결과일 것입니다


Draw Call : 텍스처 패키징 (그런데 이건 다 하는거 아닌가요?), 텍스처 재활용, 화려한 애니메이션 대신 스케일 애니메이션으로 리소스 줄임, 텍스처의 색만 바꿔가며 사용 -> dc 절반으로 줄였다는 얘기


폰트 : 2048*2048 의 이미지 폰트를 사용하고 있었음 Packed font 기술 사용(https://www.google.co.kr/webhp?sourceid=chrome-instant&ion=1&ie=UTF-8#newwindow=1&output=search&sclient=psy-ab&q=packedfont&oq=&gs_l=&pbx=1&fp=f3076b9f1cd33cde&ion=1&bav=on.2,or.r_cp.r_qf.&bvm=bv.45645796,d.aGc&biw=1920&bih=955)

대충 설명하자면, 폰트는 색이 아닌 형태만이 중요한 것이기 때문에 이미지에 저장할 때, rgba 채널별로 다른 이미지를 저장한 후 사용할 때는 채널별로 불러와서 사용하는 방법을 말하는 겁니다.

총 4개의 채널을 사용하니 당연히 메모리가 1/4 로 줄어듭니다


UI : 한상태만 보이는 UI로 구성 - 기존의 화면에 팝업이 계속 뜨는 형태가 아닌 하나의 화면만 보이게 해서 줄였다는 얘기입니다


Sound : 

1. 사운드 편집기로 파형이 없는 부분 삭제

2. Streo 사운드를 mono로 바꿈 - 스마트폰 스피커는 대부분 mono 임

3. 압축 사운드를 압축/비압축 두가지로 나눔 - 디코딩 과정이 없어져서 cpu 점유율을 3배 정도 낮춤. 대신 용량이 늘어나므로 적절히 나눌 것




NDC13 KEYNOTE - 서민 (넥슨 대표이사)



점심 시간 이후의 세션은 키노트밖에 없더군요... 동시간대에 세션이 하나 뿐이니 놀지 않는 이상 무조건 들어야 하는!!!

(뭐, 그래도 이런 좋은 행사를 열어주었으니 감사하는 마음으로 듣기는 했습니다)


그런데 혼자 하는 것이 아닌 허영만 화백님을 모셔놓고 서민 대표께서 진행을 하는 식이었습니다 (진행은 전문 진행자가 아닌걸 생각할 때 그럭저럭 원할했습니다)


허영만 화백님을 모신다고 하길래, 예상하기로는 요즘 이슈 중의 하나인 문화산업 탄압에 관한 이야기를 꺼낼 줄 알았습니다만 의외로 컨텐츠 쪽으로 집중하더군요.


허영만 화백님의 얘기의 마무리만 요약하자면,


내가 즐거워야 남도 즐겁습니다. 즐겁게 만드세요... 입니다 :^)





게임회사에서 모바일앱 만들기 - 임수진 (넥슨 사이퍼즈)



게임앱이 아닙니다. 그냥 앱을 만드는 내용입니다.

게임회사에서 웬 앱인가 싶겠지만 사실 그런 앱이 많습니다.

와우의 전투정보실이라던지, 경매장 앱이라던지 OTP 라던지 말이죠...


사이퍼즈 스튜디오에서는 게임의 마케팅과 유용성을 모두 고려했습니다

앱주소(https://play.google.com/store/apps/details?id=kr.co.neople.voicebox&feature=search_result#?t=W251bGwsMSwyLDEsImtyLmNvLm5lb3BsZS52b2ljZWJveCJd)


어차피 게임을 만들면 수많은 리소스가 생깁니다. 그걸 그대로 활용했죠


게임의 성우의 목소시를 스마트폰의 각종 효과음(벨소리, 알림음 등)으로 사용할 수 있게 된겁니다


보통의 앱들이 많아봐야 50,000 정도의 다운로드가 일어나고 이벤트성앱은 바로 지워지는데에 반해서 이 앱은 80,000 회의 다운로드와 앱 유지도 이뤘답니다



더욱 중요한 것은 가지고 있는 리소스를 활용했고, 어렵지 않은 앱이었기에 비용이 크지 않았다는 것이죠





아이러브커피 개발 포스트모템 - 임태형 (파티게임즈)



애니팡의 그늘에 가려진 감도 있었지만, 의외로 꾸준함을 보인건 애니팡보다도 아이러브 커피였죠...


어쨌든 그 얘기입니다.


원래는 플래시의 actionscript 를 이용해서 웹버전을 서비스 하던 중이였지만 모바일로 개발하던 과정을 말해줬습니다



코딩라인수 : 웹버전 40,000 > 모바일 62,000

UI 변경 : 웹의 mouse over 이벤트가 사라졌기 때문에 모든 UI 새로 개발

게임엔진 : cocos 2dx 로 개발 - 오픈소스지만 버그가 많고 툴이 없다... 결국 툴은 자체 개발

로직컨버팅 : 엔진은 c++, 로직은 루아로 개발

디버깅 : 루아는 디버깅이 힘들어서 디버깅 콘솔 만듬, 리포트 서버 만듬, 루아 훅패치를 통해 좀 빨라짐(제가 루아를 안해봐서 훅버그가 뭔지는 모르겠습니다)

리소스포맷은 rgba4444 사용

서버최적화 : 보통의 sng와 달리 웹서버 사용안함, 자바소켓서버 사용, mongo db 사용

서비스


k사 클라우드 서버 - 아마존보다 50% 저렴하지만 기능 부족 (월 40 정도) 새벽에 가끔 멈춰서 결국 자체 서버 구매, redis 도입


db서버 1대, 앱서버 3대, idc 임대료 70만원 정도로 운영하는데 큰 문제 없음





HTML5로 만드는 진짜 가능성 있는 게임엔진 제작기법 - 이석준 (우석대학)




솔직한 감상평을 말하자면 개인적으로 가장 별로였던 세션이 아니었을까 싶네요


제목과 달리 사실 HTML5 는 거의 안나옵니다.

분량으로 말하자면 webgl 조금, js 조금, canvas눈꼽만큼, dom 조금, css 꽤 나오지요...


그리고 발표한 것은 게임엔진이라기 보다는 렌더링 엔진입니다.


렌더링에 대해서만 말했을 뿐이지, 사운드나 인풋에 관한건 전혀 언급되지 않았습니다.


질문으로 물어보려고도 했지만, 회사에서 하지 말랬다면서 질문도 받지 않겠다고 하더군요...


뭐... 어쩌겠습니까...ㅡ.,ㅡ;;;




Prediction Model을 통한 AI 와 애니메이션의 통합 - 사이먼맥 (Natural Motion)


사실 이 시간 대의 다른 세션들이 확 당기는 것이 없어서 영어공부라도 할겸(?) 들어온 세션이었지만...

미들웨어 회사에서 나온 듯 했습니다


처음에 원론적인 얘기를 계속 하다가


자기네 회사에서 만든 MorphemeConnect 라는 비쥬얼 환경의 모션컨트럴 + 애니메이션 툴을 자주 보여주더군요 (키즈멧 비슷하더라는...) 


뭐, 제가 삐딱하게 생각해서인지 모르겠지만 광고지요...


음... 역시 외국 세션은 게임회사에서 온 사람들 것만 듣는게 나을 듯 합니다





UX, 애자일 하고 싶어요 - 김수영 (전KTH)



첫째날의 마지막 세션입니다.


게임이나 관련 회사의 분은 아니지요.

KTH 에서 애자일로 일을 하시던 얘기입니다.



저희 팀도 애자일을 일부 도입하고 있습니다.


잘 하고 있다고 하기는 사실 힘듭니다만... 어쨌든 아침에 삼삼오오 모여서 스크럼 회의도 하고 회고도 하지요...



뭐, 애자일 방법론에 대해서는 하도 인터넷에 많이 나와 있으니... 그걸 참고하셔도 될 듯 합니다





Posted by 미나토
: