• Announcements

    • Zerasion

      GDF 기본 공지 사항   2017년 11월 23일

      이전 (phpbb & Ruby를 쓰던) GDF에 올라왔던 공지사항들을 새 형식에 맞게 수정했습니다.   인벤과 GDF에 대하여 일단, 도메인 주소에서 보실 수 있듯, 이 포럼은 인벤 (inven.co.kr) 에서 제공하는 서버를 통해 돌아갑니다.
      그러나 회원 DB나 운영은 완전히 별개로 독립되어 있습니다. 
      즉 인벤 아이디로 GDF에 로긴하거나, GDF 아이디로 인벤에 로긴하는 등의 일은 불가능합니다. 
      아울러 운영진 또한 인벤직원이 아닙니다. 
      이는 즉 인벤과는 전혀 다른 운영정책을 취하고 있다는 의미입니다. 
      행여나 이 포럼에서 생긴 일에 대한 문의나 요청이 인벤측으로 가거나, 
      반대로 인벤에 대한 문의 또는 요청을 이쪽에 주셔도 저희로서는 어떻게 해드릴 수가 없습니다.
      혹시나 도메인 주소 때문에 오해하시는 분들이 있을까봐 부연합니다.   GDF의 취지 게임 개발자의 역할을 나누는 데는 여러 방법이 있지만, 최근 한국의 게임업계에서는 디자이너, 프로그래머, 아티스트 중심의 구분이 어느 정도 보편적으로 자리 잡았습니다. 하지만 실력 있는 프로그래머, 실력 있는 아티스트에 대한 평가 기준과 거기까지 도달하는 방법론이 비교적 뚜렷한 것과는 달리, 어떤 게임 디자이너가 유능한 디자이너이며 그렇게 되려면 어떤 노력을 해야 하는지에 대해서는 아직까지 수많은 이견이 있을 뿐입니다. 물론 팀의 성향과 개발 여건에 따라 게임 디자이너에게 요구되는 소양은 타 직군에 비해 다양할 수 있습니다. 재미있는 아이디어를 뽑아내는 창의력, 다른 파트와 유연하게 소통하는 커뮤니케이션 능력, 누구나 이해하기 쉬운 문서를 만들어 내는 능력 등은 때로 가장 중요하게 손꼽히기까지 합니다. 그러나 게임 디자이너가 자신의 전문 분야로 삼아야 할 것은 무엇보다 '게임 디자인 능력' 이라 할 수 있겠습니다. 재미있는 게임을 디자인 해내는 능력이야말로 기본이자 필수입니다. 그러나 정작 '어떻게 해야 게임 디자인을 잘 할 수 있는지' 공부하는 길은 그리 만만하지 않습니다. 애초에 '어떤 것이 잘한 게임 디자인인지' 판단하는 것부터도 어렵습니다. 물론 찾아보려 마음 먹는다면 생각보다 많은 정보 더미를 얻을 수야 있겠습니다만, 그것은 말 그대로 건초에서 바늘 찾기입니다. 인터넷만 뒤져본다고 얻을 수 있는 것도 아닙니다. 그 정보들은 누군가의 하드디스크에, 어딘가의 클라우드 서버에, 때로는 오직 인쇄된 문서로만 존재하니까요. 그리고 아마, 가장 중요한 정보들은 수많은 게임 디자이너들이 '내가 이 삽질을 다시 하나 봐라!' 하고 결심하는 그 순간의 뇌리에만 존재할 겁니다. 빠르게 변하는 현대 사회 중에도 최고의 속도를 자랑하는 이 업계에서는, 분명 많은 유저에게 재미를 주던 검증된 게임 매커니즘도 불과 몇 년 사이에 닳고 닳아 진부한 것이 되기 일쑤입니다. 또한 잘 만들어진 게임일수록 그 안의 모든 시스템이 유기적인 관계를 맺고 있어, 몇 개의 디자인 장치를 떼어내 다른 게임에 갖다 붙인다 해서 성공적인 결과가 나오지 않습니다. 결국 이 모든 일은 게임 디자이너들에게 끊임없이 공부할 것을 요구합니다. 무얼 공부해야 할지, 어떻게 공부해야 할지는 사실 막막한 상황에서 말입니다. Game Design Forum은 그런 상황에 대한 하나의 방법론으로 만들어졌습니다. 이 곳에서 게임 디자인에 대해 공부하고 싶은 내용을 함께 나눌 수 있으면 좋겠다고 생각합니다. 눈에 잘 띄지 않는 멋진 게임 디자인 자료들을 찾아내어 공유하고 싶습니다. 자기만의 디자인 노하우나 경험담이 있다면 서로 나누고 싶습니다. 딱히 정답을 찾아내진 못하더라도, 서로 대화를 나누고 토론하는 과정에서 배우는 뭔가가 있을 것입니다. 그런 일을 하기 위해 마련한 자리입니다. 그래서 이 곳은 무엇보다 "게임 디자인"에 대해 토론하고 대화하는 공간이 되었으면 합니다. 이와 비슷한 취지로 만들어졌던 많은 커뮤니티들이 결국 게임 디자인에 대한 이야기에서 게임 개발 전반, 산업 전반에 관한 이야기로 옮겨가는 것을 보았습니다. 물론 게임 디자인 역시 게임 개발의 일부인 이상 그런 화제들을 아예 배제할 수는 없을 겁니다. 그러나 일단 이 곳에서 활동하시는 여러분께서 "GDF는 게임 디자인에 관해 이야기 나누는 곳" 이라는 사실을 분명하게 인지해 주신다면 이 곳의 정체성이 흔들리는 일은 없지 않을까 합니다. 언제나 그 점 기억해 주시면 감사하겠습니다. 지켜주세요 – GDF 사용 규칙 이 포럼을 사용하기 위해 숙지하고, 지켜주셔야 할 규칙들입니다. 
      다소 딱딱하게 느껴질 수도 있지만, 가능한한 최소화하려 노력했는데도 이정도네요. 
      이 규칙들을 의도적으로 또는 과하게 어겼다고 판단되면 적절한 조치를 취할 수도 있습니다. 
      잘 지켜주시면 감사하겠습니다. 1. 게시판의 용도를 지켜주세요.
      각 카테고리에 대한 간략한 설명입니다. Purple Board
      Green/Blue 에서 관리자가 추천하는 게시물이 옮겨진 게시판입니다.
      비회원을 포함한 모두가 읽을 수 있으며, Purple Panel(관리자)만 글을 작성할 수 있습니다. 댓글을 작성할 수 없습니다. Blue Board
      관리자에 의해 승급된 Blue Panel들이 게시물을 작성할 수 있는 게시판입니다.
      비회원을 포함한 모두가 읽을 수 있으며, Blue Panel들만 글을 작성할 수 있습니다. Green Board
      회원 가입 후 인증이 완료된 Green Panel들이 게시물을 작성할 수 있는 게시판입니다.
      비회원을 포함한 모두가 읽을 수 있으며, Green Panel들만 글을 작성할 수 있습니다. Free Board
      잡담 게시판입니다.
      비회원을 포함한 모두가 읽을 수 있으며, 모든 Panel 글을 작성할 수 있습니다. To GDF  운영진에게 부탁하고 싶은 내용, 궁금한 점, 건의 사항 등을 여기에 적어주세요. 
      비회원을 포함한 모두가 읽을 수 있으며, 모든 회원이 글을 작성할 수 있습니다.
      게시판의 의도와 관계없는 게시물은 운영진에 의해 적당한 다른 게시판으로 옮겨지거나 삭제될 수 있습니다.   2. 게시판 예절을 지켜주세요.
      게시판 이용자간에 서로 지나치게 적대적인 태도는 피해주세요. 
      존댓말을 기본으로 하며, 서로 아는 사이라 해도 반말의 사용을 자제해 주세요. (잡담 게시판 예외)
      물론 외부의 글을 옮겨오는 등의 경우에 불가피하게 평어체로 작성된 글은 무방합니다.   3. '포럼처럼' 사용해주세요.
      이곳이 다른 게시판이 아니라 굳이 '포럼' 의 형태를 취하는 이유는, 포럼의 기능을 잘 활용하기 위해서입니다. 
      다음과 같은 내용들을 염두에 두시면 됩니다.
      하나의 이슈에 얽힌 이야기는 하나의 글타래로만 다룹니다. 
      새로운 글타래를 매번 새로 만드실 필요가 없습니다. 꼭 댓글 형태로 달아주세요. 
      댓글을 아주아주 길게 달 수도 있으니 부담없이 이용하시기 바랍니다.
      새 글타래를 만들기 전에 검색을 해보시는 것도 좋습니다.
      이 사항이 지켜지지 않을 경우 강제로 게시물이 이동/삭제될 수 있습니다. 유의하세요.
      너무 오래 전에 올라온 글이라 의견을 달아도 아무도 보지 못할 것 같은가요? 
      이 포럼은 가장 최근에 댓글이 달린 게시물을 자동으로 최상단에 올려줍니다.
      아주 오래 전 이슈를 다시 언급하는 경우에도 새 글타래를 만드실 필요가 없어요.
이 글을 팔로우하기  
팔로워 0
Zerasion

[아카이브] 토요 논문 : 메탈 기어 사이언스

1 post in this topic

Voosco 님이 작성하셨던 포스팅의 아카이빙입니다.

---

 

원제는 the saturday paper : metal gear science 입니다. 얼추 “토요 논문 : 메탈 기어 사이언스” 이라는 뜻 같은데 토요 논문은 이 분들이 내놓는 일련의 시리즈 이름이고 이 시리즈를 모두 해석하긴 어려울 듯 해서 이번 편의 부제만을 따왔습니다. 

온전히 이론적인 얘기이기보다는 자기들이 만든 툴의 유용함에 대한 설명에 가깝지만 이 툴을 다른데서도 구현하는게 왠지 어려워보이지 않기에 ... 그렇다면 결국 이론의 영역으로 내려오는게 아닌가 싶어서 슬며시 옮겨옵니다. 

원문주소 : http://www.gamasutra.com/blogs/MichaelCook/20131012/202250/The_Saturday_Paper__Metal_Gear_Science.php?utm_source=twitterfeed&utm_medium=twitter&utm_campaign=Feed%3A+GamasutraNews+(Gamasutra+News)

그림들이 가로로 좀 길어서 ... 으음 ;; 포럼의 특성 상 우측이 좀 짤려 나오는데, 궁금하신 분들은 원문주소 따라가시면 좀더 보기좋게 나오니 참고해주세요. 

3a9e461bfbe2263c.png
마이크 비델 (Mike Bithell)의 Volume의 화면 – 고마워요 마이크!

잠입 게임 (stealth game) 은 표면적으로는 액션 게임으로 보인다. – 때로 3인칭 시점이고, 3차원 공간에서 적과 문, 그리고 풀어야 할 문제들을 해쳐나간다. 그러나 잠입 게임의 매커니즘과 속도는 이 게임을 좀더 복잡한 것으로 만들며, 장애물의 구성과 위치가 시간에 따라 어떻게 달라지는가에 대해 고려해야하는 새로운 측면을 더한다. 이런 요소들은 잠입 게임을 디자인하는게 어려워지는 이유이다. – 하지만 도움이 될만한 것이 여기 있다. “이주의 토요 논문 : 잠입 게임의 레벨을 시간과 공간의 측면에서 분석하기 위한 오픈 소스 유니티 툴”이 그것이다. 

우리는 조나단 트렘블리 (Jonathan Tremblay), 페드로 토레스(Pedro Torres), 니르 리코비치 (Nir Rikovitch) 그리고 클라크 베브루게 (Clark Verbrugge)의 잠입 행동을 예측하기 위한 탐험도구를 읽고 있다. 이 논문은 저자가 잠입 게임 시나리오를 분석하고, 주어진 레벨에서 플레이어들이 만나게 될 경로의 종류와 문제들을 시각화하기 위해 유니티로 만든 툴에 대해 설명한다. 이 툴은 조만간 오픈소스로 공개될 것이며, 논문 자체는 이후의 연구를 위한 많은 흥미로운 질문들을 제공한다. 시작하기 전에, 일단 이 툴이 동작하는 모습을 담은 비디오를 보자. 

http://www.youtube.com/watch?v=b8gSCG0Xs_k

잠입 게임은 고전적인 액션 게임에 비해 무척 흥미로운 요소들을 가지고 있다. 공간은 중요하다. 그러나 이는 대부분의 다른 게임에서도 그렇다. 잠입 게임에서는 공간에 더해 시간 또한 핵심적인 요소이다. 어떤 스테이지를 시작했을 때 처음에는 안전했던 어떤 장소가, 경비가 순찰을 돌거나 스테이지가 바뀌는 일련의 규칙들에 의해 더이상 안전하지 않게 된다. 이런 안전 지대 또는 스테이지 내에 잠입을 위해 존재하는 경로 등을 발견하고 분석하기 위해서, 우리는 고정된 스테이지를 지켜보기만 하기보다는 게임이 진행되는 동안 어떤 일이 벌어지는지를 고려할 수 있는 툴이 필요하다. 우리가 오늘 살펴볼 툴이 바로 이런 부분에 도움을 준다. 

이 툴의 현재 버전은 경비병이나 감시 카메라처럼 원뿔형 시야를 통해 사물을 이해할 수 있으며, 이들의 시간에 따른 움직임 또한 고려한다. 툴은 이들의 움직임에 더해 플레이어의 움직임을 시뮬레이트하고, 현재 상태에서 게임 내 환경에 배치되어 있는 오브젝트들을 기반으로 원뿔형 시야를 업데이트한다. 이런 구성을 좀더 멋지게 보여줄 고전적인 예를 잠시 후에 보여주겠다. 

0ad4dff6a1fa342a.png

플레이어 시뮬레이션을 동작하게 하는 핵심 열쇠는 Rapidly Exploring Random Tree 또는 RRT라 불리우는 기술이다. RRT는 로봇 공학 어플리케이션에서 흔히 볼 수 있으며, 툴이 어떤 과정을 거쳐 동작하는지에 대해 직관적으로 이해가 가능하기 때문에 사용하기 전에 반드시 툴을 이해할 필요가 없다. RRT가 하려는 것은 게임 스테이지와 같은 월드 전체에 걸쳐 경로를 구성하는 교점 (node)을 연결하여 패턴을 만드는 것이다. 시작점 (플레이어 스폰 지점 등) 에서 시작하여 RRT는 무작위로 교점을 선택하고, 새로운 무작위 교점에 연결하려 노력하여 새 교점을 기존 세트에 추가한다. 우리의 경우에는 두 개의 교점을 함께 이어주는 과정이 길에 존재하는 벽과 같은 요소에 영향을 받는다. 그러나 경비병의 시야각도 또한 영향을 미칠 수 있다. 심지어는 플레이어의 가속과 운동량 등도 고려 대상이 될 수 있다. 

RRT가 플레이어의 스폰 지점으로부터 목표지점까지 교점들로 이어지는 경로들을 충분히 (툴의 사용자는 얼마나 많은 경로를 탐색할 지 결정할 수 있다) 발견하면, 이 정보들을 종합하여 사람이 이해할 수 있도록 가공한다. 경로들 중에는 종종 매우 비슷한 경우가 있기 마련인데, 이때 툴은 이들을 합치려 노력한다. 경비병에게 보여지는 교점과 보여지지 않는 교점들에 대한 정보를 사용함으로써, 툴은 꽤 멋진 시각화를 제공한다. 아래 일러스트레이션을 보자. 

7f23242589cf9327.png

녹색 구역은 순찰하는 경비병들이 절대 볼 수 없는 곳이다. 자홍색 지역은 경비병이 순찰중 숨어 있는 플레이어를 발견할 가능성이 있는 지역이다. 빨간색 지역은 경비병의 현재 시야범위를 보여준다. 이 자체만으로도 이미 레벨 디자이너에게 유용한 정보지만, 툴은 여기서 좀더 나아간다. 툴은 자기가 모은 모든 경로정보를 다 보여주지 않는다. – 여기에는 빠져나갈 수 있는 경로, 얼마나 많은 경로가 발견되었는지 등등이 포함된다. 이 정보가 왜 중요한지를 알아보기 위해 랜디 스미스 (Randy Smith)의 2006년 GDC발표에 기반한 논문의 다른 사례를 살펴보자. 파란색 선은 스미스가 손으로 그린 플레이어의 경로이고, 빨간색 선은 경비병의 순찰 경로이다. 

5b951b7a7507ba02.png
,
이 예시를 고려할 때, 우리가 묻고 싶은 질문들은 이런 것들이다 : 내 캐릭터가 20% 느리게 움직여도 이 경로가 여전히 괜찮을까? 두 개의 벽감 중 하나를 2미터 옆으로 옮겨도 괜찮을까? 좀 더 어려워지나? 툴은 당신이 준 스테이지를 유니티를 통해 해석하기 때문에, 이 질문들에 대답할 수 있다. 벽감을 옮기면 어떤 일이 벌어지는지 알고 싶은가? 벽감을 옮겨놓고 물어보자 

1a3000552242d1a3.png

회색 영역은 목표지점에 성공적으로 도달한 경로를 보여준다. 어두워질수록 더 자주 이용된 지역임을 나타낸다. 벽감을 오른쪽으로 옮김으로써 이 벽감이 플레이어에게 쓸모없어 졌음이, 그리고 발견된 유일한 해결책은 벽감들 중 하나를 이용하고 즉시 출구를 향해 질주하는 것임이 보인다. 이를 어떻게 극복할 수 있을까? 경비의 움직임을 좀 바꿔보면 어떨까? 툴은 여기에도 해답을 줄 수 있다. 

게임 개발자와 레벨 디자이너에게 이는 명백한 쓰임새를 보여주는 것이다. 이 툴은 플레이테스트를 하지 않고도 레벨 디자인 과정에서 놓친 요소들을 보여줄 수 있다. (위의 예에서, 플레이어들이 출구를 향해 그렇게 질주하는걸 바라지 않을 수 있지 않겠는가) 그러나 이 툴은 또다른 흥미로운 응용 가능성도 시사하고 있다. 이 툴은 소프트웨어로 하여금 스테이지를 분석하게 한다. 이는 즉 잠입의 순차적 레벨 디자인 (여기서 순차적이라 함은 사람이 직접 디자인하지 않고 일련의 규칙이나 랜덤에 의해 자동으로 생성되는 것을 의미합니다. –vsc) 에 피드백 과정의 일부로 쓰일 수도 있다는 의미이다. 스테이지를 하나 생성하고, 경로와 안전지대를 계산하고, 인간 디자이너가 만든 지표와 비교한다. 안전지대가 너무 많은가? 가장 짧은 탈출 경로의 길이는 얼마인가? 원하는 것과 다르다면, 돌아가서 다시 순차적으로 그림을 그린다. 

이 논문은 이후에 도전해볼만한 흥미로운 방향성을 제시하고 있기도 하다. 실시간으로 실행하면서 효율을 높일 수 있는 방법을 찾아내는 일이 여기에 속한다. (여기에 보여준 사례는 수초간 실행한 결과이며, 저자는 이보다 더 높은 효율에 도달할 수 있다고 믿는다) 저자들은 또한 잠입 게임에서 동료 캐릭터의 AI를 향상시키는 도구가 될 수도 있다는 점을 살짝 언급하기도 한다. 아마 어떤 스테이지를 분석할 때 서로 다른 플레이어들의 플레이 스타일을 시뮬레이션해 볼 수도 있을 것이다. 대체로, 이 툴은 실전 게임 디자인에서 이미 폭넓게 응용 가능한 멋진 접근법이라는 느낌이다. 이 연구가 앞으로 어디로 향할지 몹시 흥분된다. 

더 보고 싶으면

조나단 (Jonathan)은 캐나다 맥길 대학 (McGill University)에서 박사 과정 중이다. 클라크(Clark) 또한 이 학교에서 부교수로 일하고 있다. 니르(Nir)도 맥길대의 공학 석사 과정 학생이며, 항공기의 자동제어 향상 분야에서 일하고 있다. 조나단은 자신의 연구성과를 다음주에 AIIDE의 Intelligence in the Design Process 워크샵에서 발표할 예정인데, 여기 참석하기 어렵지만(!) 이 프로젝트에 대해 더 알고 싶은 분들은 이메일 등을 통해 그와 연락해보길 권한다. 조나단은 조만간 이 툴을 GitHun를 통해 공개하겠다는 믿기 어려운 뉴스를 전해왔다. – 그렇게 된다면 이후에 토요 논문을 통해 소식을 전하겠다.

0

Share this post


Link to post
Share on other sites
이 글을 팔로우하기  
팔로워 0