왜 마리오는 버섯을 먹으면 종방향으로 늘어날까? 게임


http://news.mynavi.jp/articles/2015/11/09/mario/

닌텐도에서 9월 10에 발매된 슈퍼마리오 메이커가 화제를 모으고 있습니다. 이는 슈퍼마리오 브라더스 30주년 기념이 되는 해에 발매 된 소프트. 초대 슈퍼마리오 브라더스부터 New슈퍼마리오 브라더스U에 이르기까지, 네가지 소프트의 그래픽을 베이스로 파츠를 배치하여 자유롭게 코스를 작성할 수 있는 소프트입니다.

슈퍼마리오 시리즈를 몇십년이나 계속 즐겨온 입장에서 실로 꿈같은 소프트라고 대흥분. 그야 마리오 코스를 직접 만들 수 있고, 심지어 그걸 전세계 사람들이 즐겨주니까요! 얼른 자유롭게 적을 배치해 만들어볼까나.

…라는 이유에서 일단 크리보를 대량으로 배치해서 기분좋게 점프로 짓밟을 수 있는 스테이지를 작성. 밟았을 때의 뿌직하는 소리가 쾌감을 주어서 자기가 만든걸 자기가 플레이하면서 실실거리고 있습니다. 적을 대량으로 늘어놓다니 초등학생 수준의 발상이라는 생각도 들지만, 분명 슈퍼마리오 메이커를 산 사람의 태반이 처음에 하는 일이겠죠?

여기서 갑자기 떠오른 생각인데, 그러고 보면 패미컴 시절의 슈퍼마리오 시리즈는 이처럼 적이 빽빽하게 늘어선 황당한 코스는 없었지요. 물론 게임 밸런스를 고려한 결과라고 생각합니다만, 어쩌면 패미컴의 경우 "게임기의 성능상 불가능한 일"이라는 부분도 여러모로 있지 않을까요?

패미컴 슈퍼마리오 브라더스 스테이지에 등장하는 크리보는 이정도. 

대량으로 발생하는 일은 없었다.

그래서 초대 슈퍼마리오 브라더스가 발매된 당시의 도트 기술에 대해서 이것저것 조사해봤습니다. 30년전으로 시계바늘을 되돌려서 도트 표현의 알려지지 않은 뒷면을 소개하겠습니다.

※이번 기사는 서적 <패미컴의 놀라운 발상력/ファミコンの驚くべき発想力>을 참고했습니다.

마리오가 버섯을 먹으면 종으로만 늘어나는 이유.


마리오 시리즈의 친숙한 파워업 아이템으로 말할 것 같으면 슈퍼버섯. 이걸 먹으면 마리오가 쭉하고 한꺼풀 더 커지는 모습은 마리오 시리즈에서 이미 익숙한 광경입니다. 초대 슈퍼마리오 브라더스에서부터 이미 이 표현은 등장했는데요, 실은 버섯을 먹었을 때 마리오가 커지는 방향은 종축만이고 횡축은 커지지 않습니다. 왜 마리오는 횡으로는 커지지 않는 걸까요? 실은 그 이유는 생각지도 못한 점에 있습니다.

버섯을 먹은 마리오는 횡으로는 확대되지 않고 종방향으로만 커진다.

이 사실을 알기 위해서, 우선 패미컴이라는 하드에 가해진 제한과 슈퍼마리오 브라더스라는 게임이 어떤식으로 구성되어 있는지를 살펴봅시다.

슈퍼마리오 브라더스의 구성을 간단하게 설명하겠습니다. 이 게임 크게 구분하면 세가지 화면이 겹쳐져서 만들어졌습니다. [배경색] [배경 그래픽] [스프라이트]입니다. 스프라이트는 마리오나 크리보 등의 배경과는 독립해서 움직이는 캐릭터. 슈퍼마리오 브라더스만 그런 게 아니라 당시의 패미컴 소프트는 대체로 이 세가지로 구성되었습니다.

이미지 편집 소프트 같은걸 써본 경험이 있는 사람이라면 레이어의 개념을 떠올리면 이해하기 쉬울겁니다. 먼저 단색의 [배경색]이 있고, 그 위에 [배경 그래픽]을 깔고, 가장 최상단 레이어에 [스프라이트]를 까는 이미지입니다. 슈퍼마리오 브라더스에서는 마리오나 버섯, 크리보, 엉금엉금, 쿠파 등 움직이는 물체가 이 [스프라이트]에 해당합니다.

마리오를 확대해서 봅시다. 그려면 캐릭터가 그려져 있는 블록이 16x16의 픽셀로 구성되어 있다는 사실을 알 수 있습니다. 패미컴은 8x8픽셀의 사각형이 최소 블록이고, 이걸 종으로 두번, 횡으로 두번 늘린 16x16픽셀을 캐릭터 하나의 크기로 쓰는 것이 대중적인 제작 방식이었습니다. 왜 16인가 하면 8x8픽셀은 너무 작아서 캐릭터를 그릴 수 없기 때문입니다. 평상시의 마리오나 크리보, 엉금엉금 등은 전부 이 16x16픽셀로 처리가능한 크기입니다. 참고로 슈팅게임의 탄 같은건 작으니까 8x8픽셀로 그렸습니다.

자 그럼 마리오는 버섯을 먹고 파워업해, 거대화 하게 되는데요 여기서 문제가 발생합니다.

무엇인가 하면 패미컴의 그래픽은 하드의 성능상 스프라이트를 횡으로 64픽셀까지만 동시 표시할 수 있었습니다. 16픽셀이 한캐릭터 분량이니, 64픽셀이면 캐릭터 넷 분량. 즉 8x8의 스프라이트를 8개밖에 배치할 수 없었습니다. 따라서 슈퍼마리오 브라더스에서는 횡으로 캐릭터 넷을 늘어세우면, 다섯번째 캐릭터를 표시할 수 없게 됩니다. (표시에 우선순위가 우선순위가 매겨지므로, 반드시 우측 캐릭터를 표시하지 못하게 되는 것은 아닙니다.)

종으로 어긋나 있으면 문제가 없지만 슈퍼마리오 브라더스는 평탄한 코스가 많기 때문에, 캐릭터가 횡으로 늘어서 있는 대목이 많이 발생합니다. 이 상황에서 마리오가 버섯을 먹어 횡으로 커지게 되면 안 그래도 적은 64픽셀을 쓸데없이 소비하게 되어 적 캐릭터를 표시할 여유가 없어집니다. 이것이 마리오가 버섯을 먹어도 종으로만 커지는 이유 중 하나라고 생각합니다. (물론 게임 밸런스 측면의 이유도 있을 겁니다.)

그렇다곤 하나 부득이하게 다섯 캐릭터가 횡으로 늘어서게 되는 경우도 있습니다. 그럴 경우 네번째 캐릭터와 다섯번째 캐릭터를 번갈아 표시했다가 표시를 꺼가면서 의사적으로 양쪽 다 보이게 해놓았습니다. 자주 인구에 회자된 패미컴의 깜빡거림은 이게 원인입니다.

이 방법이 특히 활용된 게 쿠파가 뿜는 불입니다. 불은 32픽셀로 구성되어 있고, 심지어 횡방향으로 나아갑니다. 이걸 있는 그대로 표시하면 같은 열에 캐릭터 두개몫의 픽셀을 소비하게 됩니다만, 실은 불의 선단과 후단을 번갈아 표시하여 픽셀수를 줄인 겁니다.

그렇다곤 해도 깜빡거림은 가능한 적은 편이 당연히 낫기 때문에 슈퍼마리오 브라더스에는 가능한 횡 일직선의 스프라이트가 늘어서지 않게 고안되어 있습니다. 예를 들어 해머 브로스의 해머는 포물선이고, 불바다에서 출현하는 불도 종방향으로 움직입니다. 슈퍼마리오 브라더스의 굉장한 점은 이같은 제약에서 기인하는 움직임을 역으로 이용하여, 절묘한 게임 밸런스를 만들어낸 점에 있습니다.

마리오의 트레이드 마크에 감춰진 이유


마리오하면 빨간 모자나 수염, 그리고 오버올 등이 트레이드 마크로 정착되어 있습니다. 초대부터 변함없는 마리오 디자인인데, 왜 그같은 겉모습이 되었을까요? 실은 여기에도 도트 그림과 패미컴의 제약에서 기인한 이유가 감춰져 있습니다.

첫번째로 색의 문제가 있습니다. 앞서 캐릭터는 8x8를 네번 쌓아올린 64픽셀로 구성된다고 했는데요, 패미컴은 이8×8 안에 색을 네개밖에 쓸 수 없다는 제한이 있습니다. 심지어 캐릭터를 그린 도트 주변의 색은 [투명]으로 설정하지 않으면 배경 그래픽에 녹아들지 않기 때문에 네개의 색 중 하나는 반드시 투과색을 선택할 필요가 있기에, 실질적으로 쓸 수 있는 색의 수는 셋입니다.

마리오를 구성하는 색은 빨간색(모자나 옷), 피부색(피부와 작업복 단추), 녹색을 입힌 회색(수염 등) 세가지로, 작업복 버튼은 피부와 같은 색을 썼습니다. 아주 심플하지만, 확실하게 마리오가 된 부분은 역시 대단합니다.

수염이나 모자 같은 룩스에도 이유가 있습니다. 이건 닌텐도 공식 컨텐츠 사장이 질문하다에 상세하게 실려있습니다.

이와타:
압도적으로 도트가 부족하죠

미야모토:
부족합니다. 금세 8×8도트가 되어버립니다. 그래서 코를 그리고 수염을 그리면 입인지 수염인지 알 수 없기 때문에 이걸로 도트는 절약할 수 있겠다 싶었죠.
이와타:
수염을 그리면 입은 안 그려도 되니까요

미야모토:
안 그려도 된다, 이게 중요합니다. 턱은 1도트면 충분하니까요. 그리고 눈은 종으로 2도트 그리면 귀엽겠다 싶었고요. (웃음) 그래서 머리털을 다 그릴수가 없기 때문에 모자를 씌워봤더니 모자는 2도트로 절약할 수 있더군요.
(중략)
하지만 남은 도트로 몸을 그리는건 한계가 있습니다. 그것도 제대로 달리게 만들고 싶었기 때문에 애니메이션으로 만들 필요가 있었는데, 당시에는 세가지 패턴밖에 만들 수 없어서요. 그래서 달릴 때는 팔을 흔들게 되는데요, 움직임을 알기 쉽게 만들기 위해서 팔과 몸의 색은 서로 다른 편이 낫겠다고 생각했어요. 그런 옷이 뭐가 있느냐 하면....

이와타:
작업복이죠 (웃음)

그렇습니다. 마리오의 그래픽은 64픽셀이라는 제약 안에서 캐릭터를 표한하기 위한 고육책이었던 것입니다.

그런 마리오가, 초대 시리즈에서 3년후인 1988년에 발매된 슈퍼마리오 브라더스3에서 그래픽이 일신됐습니다.

무엇보다 하드는 같은 패미컴이니까 그래픽에 대한 제약은 똑같습니다. 그런 조건 안에서 꼬리 달린 마리오의 입체감 있는 디자인은 당시의 게임 업계 관계자를 경악케 했습니다. 이건 사실 자세히 보면 8×8 안에서 실질적으로 세가지 색만 쓸 수 있다는 조건은 정확히 준수했습니다. 확 바뀐것처럼 보이는건 사용한 색이 달라진 점이나, 도트 그림을 그리는 방식이 더 정교해졌기 때문입니다.

이제는 세계적인 캐릭터가 된 마리오. 그 탄생 이면에는 패미컴에 주어진 빡빡한 제약과 싸운 크리에이터들의 아이디어와 고민이 있었습니다.


덧글

  • 암흑요정 2015/11/14 09:35 # 답글

    한계가 있기에 사람은 지혜를 짜내서 명작을 만들었다.
  • 무지개빛 미카 2015/11/14 10:15 # 답글

    배나온 중년 아저씨인 마리오에게 저런 한계를 극복하려는 스텝진들의 노력이 있었군요
  • RuBisCO 2015/11/14 10:19 # 답글

    제한된 하드웨어에 최적화한다는게 이렇게 처절하군요
  • 오오 2015/11/14 10:54 # 답글

    옛날 라인버퍼 시절 얘기군요. 저때는 가로로 스프라이트 몇개가 등장 가능한가가 성능의 지표였었죠.
    가끔 요즘 블록버스터 게임들은 몸불리기만 하는 느낌이 들기도 합니다.
  • 풍신 2015/11/14 20:10 # 답글

    저 시절엔 정말 용량, 기기의 한계에 도전하면서 꽉꽉 채우려고 했었죠. 700메가 CD 게임들도 다소 그런 면이 있었다고 보지만, 요즘와선 용량이 남아돌다보니 발적화하는 경향이...
  • 소시민A군 2015/11/14 20:37 # 답글

    3은 정말 환골탈태였죠. 똑같은 제약이었다는 것도 잊어버릴 정도입니다.
  • 아힝흥힝 2015/11/15 00:17 # 답글

    사스가 우주명작은 남다르군요
댓글 입력 영역