본 ISTQB CT-GaMe 실러버스를 공부하며게시글은 이미 ISTQB CT-GaMe 자격증을 취득하였음에도 이 후 지속적으로 취업을 준비하는 중,
게임 테스트에 대한 이론 지식 습득 및 보완 및 취업 후 원활한 테스트 작업 수행을 위해 CT-GaMe 실러버스 v1.0.1을 바탕으로 학습한 내용을 정리하고 있습니다.
본 내용의 실러버스는 아래 첨부한 KSTQB의 학습 자료실 링크를 통해 다운 받아 학습하실 수 있습니다.
https://www.kstqb.org/board_skin/board_view.asp?idx=1874&page=1&bbs_code=4&key=0&word=&etc=
KSTQB
샘플문제해설 한글판(V1.0.1)이 수정, 업로드 되었습니다. - 2024.12.2 by KSTQB Team 샘플문제 한글판(V1.1)이 업로드 되었습니다. - 2024.8.16 by KSTQB Team ISTQB® 게임 테스팅(CT-GaMe) v1.0.1 실러버스와 샘플문제
www.kstqb.org
게임 레벨 설계 원칙과 개념
"레벨"이라는 용어와 게임 프로젝트의 장르에 따른 특수성
게임 레벨은 게임의 가상 세계의 독립된 영역으로,
플레이어는 보물을 찾거나 모든 상대를 물리치거나 출구를 찾는 등 특정 작업을 완료해야 한다.
레벨을 완료하는 데 필요한 보편적인 작업(tasks)은 위치와 아주 밀접한 관계를 가진다.
그 외에도 레벨을 완료하는 데 필요한 다수의 작은 작업이 별도로 있을 수 있으며,
퀘스트 또는 레벨을 완료하는 데 필수적이지 않은 사이드 퀘스트가 포함된 경우도 있다.
많은 비디오게임 엔진에서 레벨은 로딩 화면으로 구분된다.
레벨 설계는 게임 레벨을 위한 맵, 장소, 작업, 임무, 기타 환경 생성과 관련된 게임 개발 단계이다.
레벨 설계에는 조합돼서 의도한 게임 경험을 전반적으로 만드는 게임 오브젝트와 게임 메커니즘의 형상,
플레이어 경로상의 장애물, 게임의 스토리라인, 기타 요소가 포함된다.
레벨을 만들기 위해 일반적으로 레벨 에디터라는 특수한 소프트웨어를 사용한다.
게임 레벨은 하나로 서로 연결된 많은 구성 요소로 구성되며 주요 영역은 다음과 같다.
구조적 형상
구조적 형상 또는 기본 레벨 형상은 게임 공간의 가장 중요하고 조형적인 요소 중 하나다.
게임 캐릭터가 움직일 수 있는 지형과 표면을 설정하는 것이 구조적 형상이다.
구조적 형상은 또한 캐릭터가 이동할 수 있는 레벨 공간을 제한한다.
레벨의 시작 지점과 종료 지점이 명확하게 표시된 경우,
구조적 형상은 플레이어가 레벨의 끝까지 가기 위해 어디로 가야 하는지에 대한 지침을 제공할 수 있다.
게임이 진행되는 위치에 따라 다양한 요소가 레벨을 형성하는 오브젝트 역할을 할 수 있다.
게임 환경
게임 환경 오브젝트는 레벨 디자이너가 필요한 게임 공간을 더욱 현실적으로 만드는데 사용한다.
오브젝트는 나무, 울타리, 이동 수단과 같은 큰 물체,
우물, 통, 벤치와 같은 중간 크기 물체,
정원의 식물, 돌 등과 같은 작은 물체로 구별된다.
조명
다양한 유형의 광원을 사용하면 게임 레벨에 원하는 분위기를 넣을 수 있으며,
플레이어를 올바른 방향으로 안내하거나 주의를 끌거나, 상대방으로부터 숨기는 효과를 볼 수 있다.
사운드 반주
다양한 동작이나 이벤트로 재생되는 배경 사운드트랙 또는 음향 효과이다.
게임 기능
게임 기능에는 특정 레벨에서 게임플레이를 구성하기 위한 설정 시스템이 포함된다.
설정은 다음과 같은 유형으로 구별되며,
레벨의 통과와 관련된 설정에는 다음이 포함된다.
- 캐릭터와 적의 출현 지점
- 승리와 패배 조건
- 게임의 자동 저장 지점
- 특정 게임 이벤트 또는 스크립트를 실행하는 트리거 시스템
플레이어가 상호작용할 수 있는 오브젝트를 설정한다.
캐릭터가 레벨을 벗어나거나 구조물에 갇히는 것을 방지하는 레벨의 물리적 쉘을 설정한다.
일반적으로 게임 기능의 설정은 플레이어에게 숨겨져 있으며 레벨 에디터에서만 볼 수 있다.
레벨 디자인 결함 유형 이해
일반저긍로 레벨을 구현할 때 가장 많이 나타나는 결함이 있다.
이러한 결함을 추적하기는 어려울 수 있으므로 한동한 레벨에서 식별하지 못할 수 있다.
일부 전용 맵 에디터레는 맵에서 이러한 결함을 감지하는 기능이 내장되어 있다.
레벨 디자이너는 맵이나 레벨을 만드는 마지막 단계에서 이러한 도구를 사용하는 경우가 많다.
그러나 대부분의 경우 맵에서 결함을 찾는 가장 좋은 방법은
문제를 식별하고 보고할 수 있는 숙련된 플레이어가 테스트하는 것이다.
레벨에서 식별하는 결함의 대부분은 게임 오브젝트의 모양과 위치, 조명, 충돌 모델 등과 관련이 있다.
그러나 아래의 결함은 레벨 설계와 직접적인 관련이 있다.
지오메트리(Geometry)
지오메트리 결함은 플레이어의 캐릭터가 레벨/맵의 어떤 영역에 부분적으로 갇힌 상황을 말한다. 일반저긍로 이러한 결함은 맵의 가장자리, 돌출된 곳, 경사면에서 발견된다.
플레이어는 캐릭터를 오브젝트 안으로 들어가게 하거나 가까이 다가가다 갇히게 된다.
점프, 굽힘 또는 다른 움직임을 통해 캐릭터가 그러한 상황에서 벗어날 수 있는 경우도 있지만 그렇지 않은 경우도 있다.
그럴 때 플레이어는 레벨/맵을 다시 시작하거나, 마지막 저장 지점으로 돌아가거나
특수한 버튼/키 조합을 사용하여 충돌 결함이 나타나지 않는 가장 가까운 위치로 이동해야 한다.
레벨 결함으로 특정 플레이어 또는 팀이 더 좋은 위치에서 출발하도록 할 수 있는 멀티 플레이 게임에서는
이러한 결함을 식별하는 것이 특히 중요하다.
많이 발생하는 또 다른 상황은 갇혔을 때 사망하는 것이다.
즉. 캐릭터가 시각적으로 레벨/맵의 표면 아래로 계속 떨어지는 것이다
결국 캐릭터가 죽고 레벨을 다시 시작해야 하거나,
공허 속으로 끝없이 떨어져 게임을 다시 시작해야 하는 상황이 발생하게 된다.
접근 불가 구역
비디오게임에서, 특히 멀티플레이어 게임의 맵에서 플레이어가 다른 플레이어보다 좋은 위치를 얻는 장소가 있을 수 있다.
그러한 위치를 가장 먼저 취하는 플레이어가 상대방보다 약간의 이점을 얻지만,
이는 개발자의 의도이자 레벨 설계 요소이며 결함이 아니다.
그러나 레벨 디자이너의 실수로 우연히 그러한 장소가 만들어지기도 한다.
개발자의 의도는 해당 구역이 플레이어가 접근할 수 없는 구역이 되는 것이었다.
그러나 고유한 기능의 도움을 받은 특정 캐릭터가 그 위치에 들어갈 수도 있다.
이러한 방식으로 플레이어는 경쟁자보다 불공정한 이점을 얻을 수 있다.
다른 플레이어는 그것을 감지하거 방해할 수 없을 수 있다.
복잡한 게임플레이
목표 포인터가 부족하거나 레벨을 완료하는데 필요한 행동이 불명확한 것과 관련된 문제로
플레이어는 접근할 수 있는 영역에 존재하는 모든 적을 제거 했음에도,
추가적인 진행을 위해 무엇을 해야 하는지 이해할 수 없는 경우가 있다.
부적절한 제한 및 메커니즘
이러한 문제는 게임플레이에 영향을 미치지 않으며 게임에 이점을 제공하지 않지만,
게임에 대한 인식과 몰입도를 저하한다.
레벨 디자이너의 계획대로 플레이어의 접근을 제한하는 요소를 두더라도,
플레이어의 관점에서 볼 때 게임에 대한 몰입을 망치는 결함으로 볼 수 있다.
이야기(narrative)
스토리텔링의 전반적인 스타일, 게임의 플롯 위반과 관련된 레벨 결함이다.
이러한 결함은 게임플레이 자체에 미치는 영향은 미미하지만,
사용자의 몰입도와 게임에 대한 전반적인 인식에 부정적인 영향을 미친다.
오브젝트의 색상 코딩 변경
겍임 중에 사용자가 마주치는 오브젝트는 다양한 속성을 가지고 있다.
일부는 장식이고 플레이어가 상호작용할 수 있는 것도 있다.
속성이 다른 오브젝트를 색상으로 구분하는 것은 레벨 설계의 중요한 부분이다.
따라서 한 번 선택된 색상 코딩은 게임 전체에서 바뀌지 않는 것이 바람직하다.
게임 레벨 테스팅의 단계 및 실행
게임 레벨 설계 및 테스팅의 기본 단계
게임 레벨은 게임 메커니즘, 시각적 오브젝트, 사운드트랙, 인공지능, 기타 구성 요소를 결합한 것이다.
게임 레벨 테스팅은 이러한 모든 구성 요소를 합쳐서 테스트하는 것으로
모든 구성 요소를 하나로 합쳐 놓고 고려하고 테스트하는 시스템 테스팅과 유사하다.
게임 레벨 테스팅은 레벨을 만드는 과정의 초기부터 시작한다.
테스트 대상, 테스트의 목적과 구현 절차, 다양한 전문가의 책임 영역은 게임 레벨 개발의 단계에 따라 달라진다.
3D 게임을 예제로 레벨을 설계하고 테스트하는 주요 단계를 살펴보자.
게임 레벨 프로토타이핑(디자이너 블록아웃/그레이 박스)
이 단계에서는 이전에 작성한 스케치를 기반으로 특수 오브젝트를 가지고 만들고자 하는 게임 레벨을 생성하게 된다.
게임 레벨의 레이아웃을 개략적으로 형성하기 위해 회색 큐브, 구, 원통, 평면 등과 같이
게임플레이에 직접적인 영향을 미치는 요소만 사용한다.
이러한 단색의 대략적인 기하학적인 모양만 사용하면 어떤 장소의 상당 부분을 제거하거나 추가하는 등
레벨의 구조를 빠르게 수정할 수 있으며, 필요한 경우 모든 것을 깨끗하게 지우고 다시 시작할 수 있다.
때로는 이 단계에서 모든 게임 메커니즘을 사용할 준비가 되지 않았기 때문에
디자이너는 계속해서 변화하는 개발 조건에 맞게 레벨을 조정하면서 점진적으로 구현해야 한다.
레이아웃은 모든 비율과 축적을 고려하여 만들어진다.
이를 위해 레벨 디자어너는 게임 디자이너와 함께 게임 캐릭터의 크기 및 기타 변수와 관련된 일련의 지표를 구성한다.
따라서 게임 디자이너는 캐릭터의 점프 거이와 높이, 캐릭터가 취할 수 있는 자세와 자세에 따라 캐릭터의 크기를 어떻게 바꾸는지에 대한 정보, 또 캐릭터가 미끄러지지 않고 이동할 수 있는 표면의 최대 경사각에 대한 정보 등을 제공한다.
이러한 지표는 오브젝트의 크기와 레벨 환경 요소에 직접적인 영향을 미친다.
레벨 디자이너가 레벨의 크기를 결정하고 오브젝트에 올바른 축척을 설정하면
레벨에 게임플레이를 지원하는 다른 기능을 구현한다.
여기에는 캐릭터의 출현 지점, 게임 이벤트의 발생 지점 등이 포함된다.
일반적으로 이 단계의 게임 레벨 개발은 여러 번 반복되며, 그동안 테스팅은 문제가 있는 요소를 식별하고 제거하는 데 도움을 준다.
게임 레벨 프로토타입 테스팅
프로토타이핑 단계에서는 구체적인 요구사항이 확정되지 않기 때문에 탐색적 테스팅 및 기타 경험 기반 테스트 기법이
가장 효과적인 것으로 간주한다.
생성된 레이아웃으로 맵에서의 게임플레이를 테스트하기 위해 첫 번쨰 플레이 테스트를 진행한다.
첫번째 플레이 테스트르 수행하는 테스트 참가자는 게임 소프트웨어 개발팀의 테스터와 아웃소싱 테스터가 될 수 있다.
개발자는 테스트 참가자로부터 피드백을 받아 솔루션의 성공적인 도입 여부를 판단하고
필요한 경우 레이아웃에서 오브젝트를 변경, 이동 또는 제거할 수 있다.
또한, 프로토타입에 대한 플레이 테스트를 수행하면서 게임 메커니즘과
그것이 모델의 오브젝트 배열 및 크기와 조합되는 방법도 테스트한다.
예를 들어, 레벨에 있는 대피소가 캐릭터를 적으로부터 숨길 만큼 큰지, 표면에 있는 틈새의 너비가 캐릭터가 뛰어 넘을 수 있는 정도인지, 캐릭터가 필요한 모든 난간을 오를 수 있는지, 천장이 너무 낮아서 머리를 부딪히지 않는지 등을 확인한다.
레벨의 레이아웃이 가져오는 게임의 복잡성이 원하는 정도인지, 또 게임플레이의 전반적인 느낌이 적절한지도 테스트해야 한다.
예를 들어, 게임 중 많은 적과 총격전이 예정돼 있자면 레벨에 충분한 수의 대피소가 있어야 한다.
하나의 강한 끈질긴 적과 싸우기로 되어 있다면, 레벨 공간을 제한하고 불필요한 오브젝트를 제거해야한다.
지오메트리(Geometry) 프로토타이핑 (아트 블록 아웃/화이트 박스)
배경 아티스트가 만든 임시 3D 모델이 레벨 디자이너가 만든 프로토타입 오브젝트를 대체하고 필요한 오브젝트를 추가한다.
핵심 작업은 게임플레이 자체를 변경하지 않고 레벨의 시각적 구성요소를 처리하는 것이다.
그러나 이러한 교체는 게임플레이를 복잡하게 만드는 수준의 결함을 일으킬 수 있다.
예를 들어. 임시 트리 모델이 레벨 출구를 막을 수 있다. 이 경우 레벨은 다시 레벨 디자이너의 손에 들어간다.
그리고 메커니즘이 올바르게 동작하는지, 플레이어가 어디든 갈 수 있는지, 필요한 모든 것을 볼 수 있는지 다시 테스트해야 한다.
형상 프로토타입 테스팅
이 단계에서 테스팅은 레벨에 아티스틱 그림을 입힌 후에 게임플레이를 방해하는 결함이 없는지 확인하기 위해 수행한다.
이러한 결함의 예로는 레벨 통로를 막는 임시 3D 모델 바위가 있는 경우, 또는 플레이어의 시야를 차단하는 나뭇가지 등을 생각할 수 있다.
이러한 문제를 식별하기 위해서 다시 플레이 테스트르 수행하여 게임 메커니즘을 테스트하게 된다.
여기서 오브젝트 모델의 크기와 위치가 요구되는 지표 및 게임플레이 정확성과 일치하는지 검증한다.
이와 병행하여 오브젝트의 모양, 조명, 환경 등에 대한 테스트를 수행할 수 있다.
최종 버전 만들기
이 단계에서 레벨 디자이너는 전체 개발팀의 소프트웨어를 하나로 통합한다.
생성된 모든 콘텐츠로 하나의 플레이 공간을 만든다.
이 단계에서 장식 정보가 레벨에 추가되고 오브젝트의 모양, 목적, 위치가 현실과 유사해진다.
최종 버전 테스팅
이 단계에서는 성능 및 호환성 테스팅을 수행한다.
레벨의 성능을 다양한 기기에서 테스트하고 초당 프레임 수를 측정하고,
또 다양한 거리, 조명, 그림자 조건에서 오브젝트의 시각적 모델 표현 품질도 테스트한다.
플레이 테스트의 하나로 테스터는 모든 게임 오브젝트의 충돌 모델 존재 여부,
오브젝트에 물리적 및 시각적 모델이 연결돼 있는지 등을 테스트한다.
예를 들어, 충돌 모델의 테스팅은 다음과 같이 진행한다.
테스터는 게임 캐릭터를 어떤 게임 오브젝트 근처로 옮겨서 여러 방면에서 "돌 위로 걸어가기"를 시도한다.
돌의 충돌 모델이 적절하게 구성된 경우 캐릭터의 몸은 시각적으로 돌에 닿을 뿐, 돌을 통과하거나 돌 속으로 완전히 들어가지는 못해야 한다.
참여자의 책임 영역
다양한 전문가가 게임 레벨 또는 맵을 만드는 작업에 참여한다.
작업을 병렬로 수행하는 경우가 많으면, 따라서 다양한 결함이 나타난다.
높은 품질의 제품을 얻고자 하는 관젖ㅁ에서 이러한 전문가의 책임과 역할을 고려해보자
| 역할 | 책임 |
| 게임 레벨 디자이너 | 레벨의 형상과 모양, 오브젝트와 트리거 포인트 위치, 대피소의 크기 등을 담당한다. 이 모든 것은 핵심 게임플레이를 지원하고 게임에 대한 사용자 참여를 촉진해야 한다. |
| 아티스트 | 아티스틱 관점에서 맵의 모든 오브젝트는 올바른 테스쳐, 조명, 기타 시각 효과를 가지고 있어야 한다. 이것은 이미지의 모양과 사실감 모두에 적용된다. |
| 테스터 | 일밙거으로 테스터는 모든 오브젝트가 이미 배치되고 구성된 레벨 및 맵의 최동 버전을 가지고 작업한다. 테스터의 주요 임무는 플레이어가 기술적, 아티스틱 결함을 대면하지 않고 주어진 맵에서 플레이할 수 있는지 테스트하는 것이다. 맵의 모든 오브젝트와 상호작용을 테스트한다 1. 오브젝트가 물리적 모델을 가지고 있는가? 2. 보이지 않는 장애물이 있는가? 3. 맵 밖으로 나갈 수 없는가? |
게임 레벨 테스트를 위한 도구 지원
레벨 또는 맵의 테스팅을 용이하게 하기 위해 3D 에디터, 레벨 에디터, 비디오게임 엔진을 포함한 다양한 도구를 사용한다.
그러나 테스터는 레벨을 만든 개발자와 동일한 도구를 사용한다.
비디오게임 엔진에는 일반적으로 다양한 테스트 및 결함 식별을 위해 맵과 오브젝트를 사용자 정의 할 수 있는 기능이 있다.
자체 개발한 엔진은 테스트의 효율성을 높이기 위해 테스트팀의 요청에 따라 수정할 수도 있다.
예를 들어, 레벨 표면의 형상 변화로 인해 일부 물체가 공중에 떠 있거나 표면 밑으로 가라 앉을 수 있다.
이러한 결함은 모든 오브젝트를 눈으로 검사하여 식별할 수 있으며, 맵 에디터가 지원하는 경우 특수 알고리즘을 써서 테스트를 더욱 쉽게 할 수 있다.
또한, 에디터에서 여러 오브젝트의 텍스쳐 표현을 비활성화하면 테스터는 맵에서 통과할 수 없는 장소를 찾을 수 있으며,
맵 디자이너가 의도하지 않은 주행 가능한 경로를 찾을 수 있다.
이것은 멀티플레이어 게임에서 특히 중요한데, 일부 플레이어가 다른 플레이어보다 의도하지 않은 이점을 얻을 수 있기 때문이다.
'etc. > ISTQB CT-GaMe 실러버스를 다시 공부하며' 카테고리의 다른 글
| ISTQB CT-GaMe 실러버스를 다시 공부하며 (7. 현지화 테스팅) (0) | 2026.04.28 |
|---|---|
| ISTQB CT-GaMe 실러버스를 다시 공부하며 (6. 게임 컨트롤러 테스팅) (0) | 2026.04.27 |
| ISTQB CT-GaMe 실러버스를 다시 공부하며 (4. 사운드 테스팅) (0) | 2026.04.22 |
| ISTQB CT-GaMe 실러버스를 다시 공부하며 (3. 그래픽 테스팅2) (0) | 2026.04.20 |
| ISTQB CT-GaMe 실러버스를 다시 공부하며 (3. 그래픽 테스팅1) (0) | 2026.04.17 |