추천사

김학규 – IMC 게임즈 대표

 

게임 프로그램을 만들다 보면, 프로그래머로서의 욕심이 점점 생기기 마련이다. 어떻게 하면 더 깔끔하고 빠르고 재사용하기 좋은 프로그램을 만들 수 있을까? 어떻게 하면 지금 만든 프로그램을 내가 아닌 기획자들이 직접 수정할 수 있도록 만들어주고 나는 놀 수 있을까?

 

초창기의 개발자들은 게임 개발 시간의 많은 부분을 자체적인 언어 제작에 할애해야만 했다. 게임이라는 인터렉티브한 특성상, 성능이 좋으면서 너무 무겁지 않으면서 융통성이 있는 언어를 구할 수 없기 때문이다. 그러나 언어를 제대로 만들어 활용하는 것은 상당한 노력을 요하는 일이며, 제약조건도 많아지기 때문에 역시 만만치 않은 작업이다. 그러다가 언제부턴가 루아라는 언어가 게임 쪽에 도입되어 성공적으로 프로젝트에 적용되었다는 사례가 개발자들 사이에 알려지면서 루아에 대한 관심이 높아지게 되었다.

 

나의 경우 그라나도 에스파다의 서버에 루아를 적용해보았고 결과는 성공적이었다. 루아를 이용해 적절히 최적화된 설계를 적용하여 충분한 성능을 확보했으며, 기획자들의 자유도가 늘어남과 동시에 프로그래머들의 부하를 줄일 수 있다. 또한, 기획자들도 처음에는 루아의 기초적인 기능만 사용하다가 점점 시스템에 익숙해지면서 프로그래머의 도움 없이 많은 기능을 스스로 만들어내었다. 지금도 프로그래머의 도움 없이 기획자들의 선에서 많은 업데이트가 행해지고 있으니 루아를 통해 오랫동안 고민했던 부분이 해결된 셈이다.

 

『프로그래밍 루아』는 루아에 대한 가장 권위 있고 포괄적인 설명을 담고 있다. 나는 앞으로 루아의 활용도가 점점 넓어질 것을 기대하고 있다. 특히 루아는 단순한 스크립트 언어 이상의 고급 기능을 많이 지니고 있기 때문에 C나 C++ 위주로만 사고방식이 굳어지기 쉬운 게임 프로그래머에게는 꼭 루아를 접하고 활용해 볼 것을 권하고 싶다.