2012년 10월 8일 월요일

0046 KGC 2012 - 1일

한국 게임 개발자 컨퍼러스를 다녀왔다. 3일 간의 일정을 풀로 소화할 예정이기 때문에, 매일의 강연 내용을 리뷰로 남길 생각이다.

개인적으로 매우 기대되는 컨퍼런스였기 때문에 어떤 식의 강의가 진행될까 무척 기대됐다. 강의는 다음과 같이 다양한 종류의 강의가 시간 대 별로 있어, 각각의 시간에 원하는 강의를 원하는 강연장에 가서 듣는 식의 구조다. 마치 작은 '학기'를 연상케 한다.



1인 개발자로서의 도전을 진행하고 있는 내가 이번 KGC 2012에서 얻어가고 싶은 것은 '다양한 파트별 다양한 관점'이다. 때문에 Programming이나 Design에 얽매이지 않고 사운드나 그래픽, 비지니스 파트의 강연도 다양하게 수강하려고 마음 먹었다.

첫 시간에 고른 것은 havok destruction엔진에 관한 소개다. 이미 물리엔진으로 유명한 havok 엔진 진가를 느낄 수 있었다. 엔진툴은 매우 디테일하게 설정할 수 있게 만들어져 있어 최첨단 기술이 실무에 어떻게 사용되는가를 느껴볼 수 있었다.
3D엔진에서 파괴효과를 어떻게 구현하는지 알아볼 수 있는 시간이었는데 미리 파편의 구획을 나눠놓고 처리한다는 점과 얼마나 디테일하게 파괴되게 할 것인지 등등 이것저것을 customizing할 수 있게 만들어 놓은 것을 보고 정말 대단한 사람들이 많구나, 라는 것을 느꼈다.

다음은 Unity엔진에 관한 강연. Unity는 언젠가 써봐야지 하고 있는, 요즘 이슈가 되는 통합개발 엔진이다. 앞선 havok이 최첨단 기술의 major개발사에서 사용할 법한 엔진이라면, unity는 다양한 엔진들을 통합하고 좀 더 소규모 개발자에게 적합하게 만들어진 엔진이다. 핵심적인 것은 역시 '멀티플랫폼'이었다. java의 jvm처럼 한 번의 추상화를 더 거치기 때문에 다양한 플랫폼에서 돌아갈 수 있게 만들어 놓은 것 같다. 이 역시 다 하드웨어가 빨라졌기 때문에 가능한 현실일 것이다.

그 다음은 개발 최적화에 관한 강연. 앞서 다양한 분야의 강연을 듣기로 마음먹었지만, 그래도 기술적 호기심이 앞서는 바람에 비지니스 강연과 이것 중에 고민하다 이 강연을 듣게 됐다. havok의 핵심 프로그래머 분이 강연해주셨는데, serializing이나 scripting, versioning 등을 자동화하기 위해 어떤 방법들을 사용하는 지 보여줬다. 소스코드 자체를 파싱해서 데이터로 갖고 있으면, serializing이나 versioning을 할 때 간단한 변경 사항에 대한 함수만 적용해주면 자동으로 관리가 되도록 설계하는 것을 보고 감탄을 금치 못 했다. 최근에 lua를 조금 공부했었기 때문에 lua를 사용하여 function을 추상화하여 script 프로그램으로 관리하는 방법도 흥미로웠다.

다음으로 두 번의 기조강연이 이어젔다. Rift라는 대작 MMORPG의 CEO분과, 그 유명한 Epic Game의 Chief Programmer분이 나와서 강연해주셨다. 앞의 기조강연은 거대자본화와 Mass Media와 게임 산업의 결합에 관한 이야기를 많이 해줬다. 다만, 이것이 자사의 게임 홍보와 이어지는 것 같아 아쉬웠다. 확실히 Trion(Rift개발사)의 신작 게임이나 몇몇 게임들은 정말 흥미로웠다. 뒤의, Epic Game의 기조강연은 좀 더 기술적인 부분과 앞으로의 전망을 짚어주었다. 기술적인 부분은 3D 그래픽에서 사실성을 주는 데의 핵심인 Lighting에 관해 더 새로운 기술을 소개해주었다..만 3D는 개념만 짚어봤고 실제 경험은 없는 지라 이해하는 정도였다. 앞으로의 미래의 게임산업 대한 부분은 "멀티플랫폼"에 대한 강조를 시작으로 새로운 기술들(위치기반기술, 동작인식, 음성인식, Cloud 등)의 활용에 대한 설명으로 이어졌다.

다음으로 오늘의 가장 뜻 깊었던 강연인 Mass Effect Trilogy을 들었다. Mass Effect의 Lead Designer분이 직접오셔서 1,2,3를 제작하면서 겪었던 일에 대한 강연을 해주셨다. 게임 디자인은 스토리, 레벨디자인, 극적 스토리 디자인, 게임 플레이 디자인으로 나눠진다. "그럴듯한 느낌을 주는 것". 게임디자인을 할 때, 전체적인 게임 내부 생태계 관점에서 보는 것이 중요하다고 강조했다. "게임을 하는 사람이 무엇을 원하는가"에 관심을 갖으라는 말도 했다. Risk/Reward라는 하나의 패턴 장치를 통해 게이머가 뭘 해야할지에 대한 가이드라인을 쉽게 만들어 줄 수 있다고 했다. 가장 중요한 것은, 팀원들과의 의사소통이었다. lead designer로서 팀원들에게 지시하기 보다는 특정 부분에 권한을 주고 맡기며, 그에 대한 의사소통과 팀 간 회의를 끊임없이 함으로써 더 좋은 게임을 만들어낼 수 있다고 했다.

마지막 강연은 sound에 관한 것이었다. 무척 재밌는 강연이었다. 게임에 사운드를 입힐 때 유의할 점에 대해 배울 수 있었다. 효과음의 volume은 -3~0 db 을 유지해야 손실이 없다. 따라서 소리가 작게 들린다고 volume을 키울 것이 아니라 전체 사운드의 밸런스를 조절해야 한다. Real과 Midi(현실 소리와 전자 소리)의 구분이 꽤나 중요한 것이라는 걸 알게 됐다. Stereo와 Mono의 차이, 주변부 소리는 Stereo로 사용하는 것이 더 공간감을 주고 그럴듯 하게 들린다.  Frequency는 1~6kHZ로 사용되며, 일반적으로 타격음, 정보음, 속성음 순으로 높은 Frequency를 갖도록 한다. 높은 Frequency일 수록 또렷히 들리며, 화려한 느낌을 주고 낮은 Frequency는 Reality를 살려준다. Envelop는 하나의 효과음 내의 소리의 강약을 주어 dynamic함을 살려주는 방법이다. Line Making은 소리의 일관성에 관한 작업이다. Stage Control은 여백의 중요성과, 특히 중요한 소리를 약간 더 크게 설정하는 식의 디테일한 조절이다. 음악에 관한 강연도 준비되어 있었지만 시간 관계상 효과음에 대한 강연 밖에 듣지 못해 아쉽다.


7시간의 강연, 2시간을 제외하고는 영어로 된 강연이었다. 전체적인 하루의 평은, 일단 흥미로운 강연이라 7시간 동안 거의 집중력을 유지할 수 있었다는 점이 제일 좋았다. 피곤함보단 궁금했던, 알고 싶었던, 혹은 호기심을 자극하는 것들을 알게 되어 좋았다. 

강연자들이 모두 '너무나 열정적이고 즐길줄 아는 사람'이라는 것이 느껴져서 정말 좋았
다. 다음 작을 열심히 만들고 꼭 '팀'작업을 해야겠다는 생각도 했다. 어제 읽은 '이중나선'과 연결되는 것처럼, 열정적인 사람들 간의 상호작용이 얼마나 중요한 지는, 전문가들과 세계를 이끌어가는 사람들이 괜히 강조하는 것이 아니지 않겠는가.

나는 정말 우물 안의 개구리고, 내가 얼마나 모자르고 배울 것이 많은지를 뼈저리게 느낀 하루이기도 하다. 나태해질 때 마다 오늘의 '배움'에 대한 열정을 떠올리려 노력해야겠다.

댓글 없음:

댓글 쓰기