알라딘MGG와이드바


게임 프로그래밍 패턴 Part 1 보충자료

'게임 프로그래밍 패턴'에 들어간 URL은 https://goo.gl/ 이나 https://git.io/ 으로 줄여 표시했다. 가능하면 URL와 함께 주요 검색어도 같이 써 놓았다. URL이라는 게 허망해서다. 책에 있는 URL을 힘들게 주소창에 입력했더니 이미 웹페이지가 없는 경우를 다들 경험해 봤을 것이다. 원서 'Game Programming Patterns'만 해도 출간된지 1년도 안 된 책에 있는 URL들 중에 없어진 게 많아 저자와 함께 전부 갱신해야 했다. 주요 검색어만 있으면 검색엔진을 통해서 다른 사람이 퍼 놓은 글이나 아카이빙 된 글이라도 찾아볼 수 있다.

책에 써놓은 URL과 샘플 코드, 그 외 책에 써 놓지 못한 보충자료들을 파트별로 나눠서 블로그에 정리해 둔다. 책을 읽다가 궁금한 게 있어서 검색했을 때 이곳을 통해서 확장해 나갈 수 있기를 기대한다. 내가 잘못 이해한 것이 있거나 더할 거리가 있다면 댓글로 알려주시면 좋겠다. 만나게 되면(업계가 좁아서 생각보다 만날 일이 많더라) 커피 한 잔 사겠다.

저자 Bob의 모습을 확인해 볼 수 있다. Nystrom을 어떻게 발음해야 할지 몰라 저자에게 물어봤더니 보내준 링크다. Bob은 지금 구글 Dart 팀에 있다고 한다. (저자의 트위터 계정)

이 책에 대하여
김정아님이 번역하시고 피어슨에듀케이션코리아에서 출간한 책이다. 집에 원서밖에 없어서 서점을 살펴봤더니 2015년 당시 절판이라 부랴부랴 지인을 통해 2002년판과 2007년 판을 구할 수 있었다.(종욱씨, 동인님 감사합니다.) '이런 좋은 책이 절판되다니' 깜짝 놀랐었는데 2015년부터 프로텍미디어라는 출판사가 다시 출간했다.(피어슨에듀케이션코리아 책 여러 개를 프로텍미디어가 재출간한 것으로 보인다.)

TRS-80: 탠디(Tandy)에서 개발한 PC. 1977년에 Model I이 나왔다.
<터널 앤 트롤 Tunnels and Trolls>: 던전 앤 드래곤(Dungeons & Dragons)과 유사한 판타지 TRPG로 1975년에 처음 발표되었다. 
THINK C: Mac OS에서 동작하는 ANSI C 확장판

감사의 말
Zero to 95,688: How I wrote Game Programming Patterns - 저자가 전통적인 출판을 포기하고 자가 출판한 과정을 써 놓았다.
저자가 책을 출판하는 과정에서 받은 버그 리포트들. 내가 알려줘서 고친 것도 몇몇 보인다.
저자의 reddit 글은 여기에서 확인할 수 있다.

Part1. 도입
‘야영객이 야영장을 처음 왔을 때보다 더 깨끗하게 해놓고 떠나는 것'
-> 로버트 마틴이 『Clean Code』(인사이트, 2013)에서 ‘보이스카우트 규칙’이라고 소개한 것과 같은 개념이다. 저자는 '보이스카우트'라는 단어가 양성평등에 맞지 않다고 생각해 '야영객'(Camper)이라는 단어를 썼다.

프로토타입용으로 만든 코드가 출시용 코드가 되는 걸 막는 방법 하나는 아예 다른 프로그래밍 언어로 작성하는 것이다. 이러면 출시 전에는 반드시 코드를 재작성하도록 강제할 수 있다.
-> 프로토타입 기반의 디자인(에픽 게임즈 시니어 게임플레이 디자이너 Lee Perry, 윤지상 번역) 발표자료를 보면 꼭 그렇지만도 않다. Lee Perry는 기어즈 오브 워를 만들면서 기획자가 언리얼 스크립트로 컨셉을 먼저 만들어 자신의 기획을 검증한 경험을 공유했다. 결과가 좋으면 프로그래머가 native 코드(C++)로 바꾸는 식이었는데, 그 중에서 '사물을 이용한 엄폐물' 같은 일부 결과물은 native 코드로 변환하지 않고 언리얼 스크립트 상태 그대로 들어갔다고 한다.


핑백

덧글

  • 아토카샤 2016/06/14 00:31 # 삭제 답글

    안녕하세요. 번역하신 책을 읽다가 궁금한 점이 있어서 덧글 남깁니다.
    2부에 프로토타입 패턴을 보면 일급 자료형이라고 번역하신 부분이 있는데,
    일급 자료형이 멀 나타내는건지 궁금합니다.
    친절하게 번역을 해주신건 좋은데 너무 한글 번역이라 어떤 건지 이해하는데 걸림돌이 되는 부분이 좀 있네요.
    원어라도 옆에 붙여 주시면 좋았을것 같습니다.
  • 박PD 2016/06/14 08:51 #

    안녕하세요. 아토카샤님. 일급 자료형은 First-class types을 번역한 것입니다.
    영문 병기를 하지 않은 이유는 Chapter 2, 명령 패턴 앞 부분에서 다음과 같이 한 번 영문 병기를 했기 때문입니다.
    ‘실체화’는 ‘실제하는 것으로 만든다’라는 뜻이다. 프로그래밍 분야에서는 무엇인가를 ‘일급first-class’으로 만든다는 뜻으로도 통한다.

    그렇긴 해도 패턴책은 꼭 순서대로 읽지 않기 때문에 필요한 용어는 매 장마다 영문 병기하면 더 좋았을 거 같군요. 감사합니다.
  • 기습번트 2016/07/23 09:11 # 삭제 답글

    좋은책 번역해주셔서 감사합니다.
    혹시 각 챕터별 동작하는 관련 예제를 볼 수 있을까요?
  • 박PD 2016/07/29 01:08 #

    예제는 http://parkpd.egloos.com/tag/%EA%B2%8C%EC%9E%84%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%B0%8D%ED%8C%A8%ED%84%B4 를 참고하시면 됩니다.
    저자가 모든 챕터에 예제를 제공한 게 아니라서 없는 부분도 꽤 있습니다.
댓글 입력 영역


Yes24위대한게임의탄생3

위대한 게임의 탄생 3
예스24 | 애드온2