더북(TheBook)

엔트로피 인코딩에는 다른 형식도 많이 있다. 단순한 것으로는 위에서 시도해 본 하드코딩 방식에서부터, 복잡하게는 널리 쓰이는 허프만 코딩,12 산술 코딩(arithmetic coding), 감마 코딩(gamma coding), RLE 인코딩(run length encoding) 등이 있다. 게임 개발의 모든 면이 그렇지만, CPU 파워를 다른 곳에 비해 엔트로피 인코딩에 얼만치를 분배할지는 게임의 기획 내용에 달려 있다. 4.8 더 읽을거리 절에 다른 인코딩 기법에 대해 참고할 만한 자료를 적어두었다.

 


 

12  역주 zip 혹은 zlib나 lz4 압축 또한 허프만 코딩의 일종이다. 역자의 경험에 따르면, 굳이 개별 필드를 하나하나 최적화하지 않고서도, 있는 그대로 직렬화한 스트림 버퍼를 통째로 lz4 압축하였더니 유지보수도 편하고 성능도 나쁘지 않은 경우도 있었다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.