게임 맵 디자인을 위한 협업 가상 환경에서의 동시성 제어 및 공동 편집 방법 A Concurrency Control and a Collaborative Editing Mechanism in a Collaborative Virtual Environment for Designing a Game Map원문보기
게임 레벨 디자인은 재미있는 게임 플레이를 위하여 매우 중요한 게임 제작 요소 중의 하나이며, 게임의 플레이가 이루어지는 공간의 구성 및 해당 맵의 제작, 세부적인 장치, 객체와 물체의 설정 및 배치, 배경 설정 및 이벤트 연출 등을 설계하는 과정이다. 게임 맵 디자인 과정은 다수의 3D 객체를 공간 속에 배치하고, 지속적인 평가, 수정 및 보완 과정을 통하여 게임 공간의 성능을 개선하여야 하므로, 그 과정에서 비용과 시간을 많이 사용하게 된다. 하지만 기존의 게임 제작 환경에서는 여러 개발자들이 공동으로 작업을 하게 되므로, 게임 공간 속의 객체 및 작업들에 대한 동시성 제어가 어려워서, 전반적인 작업의 일관성이 유지가 되지 못하는 문제가 발생하고 있으며, 또한 공동 편집 과정이 복잡해지면 공동 작업의 품질이 하락하는 문제가 발생하고 있다. 본 논문에서는 이러한 문제를 해결하기 위해 게임 맵 디자인을 위한 협업 가상 환경에서의 동시성 제어 및 공동 편집 방법을 제안한다. 제안된 시스템은 계층 구조 기반의 객체들을 사용하고, 각 객체별 동시성 제어 기법을 제공한다. 또한 공동 편집 작업을 원활하게 수행하기에 필요한 소유권 관리 기반 Undo/Redo 메커니즘을 제공한다. 실험 결과 본 논문에서 제안한 시스템을 사용 하는 경우에 충돌의 횟수가 감소하며, 다른 개발자들이 작업을 취소하여 재수정을 하는 등의 불필요한 작업 횟수가 감소하는 결과를 가져 왔다.
게임 레벨 디자인은 재미있는 게임 플레이를 위하여 매우 중요한 게임 제작 요소 중의 하나이며, 게임의 플레이가 이루어지는 공간의 구성 및 해당 맵의 제작, 세부적인 장치, 객체와 물체의 설정 및 배치, 배경 설정 및 이벤트 연출 등을 설계하는 과정이다. 게임 맵 디자인 과정은 다수의 3D 객체를 공간 속에 배치하고, 지속적인 평가, 수정 및 보완 과정을 통하여 게임 공간의 성능을 개선하여야 하므로, 그 과정에서 비용과 시간을 많이 사용하게 된다. 하지만 기존의 게임 제작 환경에서는 여러 개발자들이 공동으로 작업을 하게 되므로, 게임 공간 속의 객체 및 작업들에 대한 동시성 제어가 어려워서, 전반적인 작업의 일관성이 유지가 되지 못하는 문제가 발생하고 있으며, 또한 공동 편집 과정이 복잡해지면 공동 작업의 품질이 하락하는 문제가 발생하고 있다. 본 논문에서는 이러한 문제를 해결하기 위해 게임 맵 디자인을 위한 협업 가상 환경에서의 동시성 제어 및 공동 편집 방법을 제안한다. 제안된 시스템은 계층 구조 기반의 객체들을 사용하고, 각 객체별 동시성 제어 기법을 제공한다. 또한 공동 편집 작업을 원활하게 수행하기에 필요한 소유권 관리 기반 Undo/Redo 메커니즘을 제공한다. 실험 결과 본 논문에서 제안한 시스템을 사용 하는 경우에 충돌의 횟수가 감소하며, 다른 개발자들이 작업을 취소하여 재수정을 하는 등의 불필요한 작업 횟수가 감소하는 결과를 가져 왔다.
Game level design is a collaborative work to create a virtual world for a computer game including maps, agents, monsters, objects, players and events based on predefined its game scenario. It is a promising collaborative design application. The game level design generally requires much time and cost...
Game level design is a collaborative work to create a virtual world for a computer game including maps, agents, monsters, objects, players and events based on predefined its game scenario. It is a promising collaborative design application. The game level design generally requires much time and cost, as the size of its target game space becomes huge. However, traditional game level design tools do not provide concurrency control mechanisms among multiple participating game designers. They do not provide consistency of undo and redo mechanisms for erroneous collaborative tasks during iterative modifications and updates of collaborative tasks among multiple designers. In this paper, we propose a concurrency control and a collaborative editing mechanism to enhance productivity of the collaborative game level design. The proposed system provides hierarchical structures of shared objects and a concurrency control mechanism for each object. The proposed system also provides a consistent undo and redo mechanism to enhance modifications and updates on intermediate results of the level design procedures.
Game level design is a collaborative work to create a virtual world for a computer game including maps, agents, monsters, objects, players and events based on predefined its game scenario. It is a promising collaborative design application. The game level design generally requires much time and cost, as the size of its target game space becomes huge. However, traditional game level design tools do not provide concurrency control mechanisms among multiple participating game designers. They do not provide consistency of undo and redo mechanisms for erroneous collaborative tasks during iterative modifications and updates of collaborative tasks among multiple designers. In this paper, we propose a concurrency control and a collaborative editing mechanism to enhance productivity of the collaborative game level design. The proposed system provides hierarchical structures of shared objects and a concurrency control mechanism for each object. The proposed system also provides a consistent undo and redo mechanism to enhance modifications and updates on intermediate results of the level design procedures.
* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.
문제 정의
본 논문에서는 게임 레벨 디자인 작업의 성능 향상을 위한 협업 가상 환경을 적용한 게임 맵 레벨 디자인 시스템을 제안하였다. 제안하는 시스템은 다수의 개발자의 참여를 허용하고, 다수의 개발자들이 공동 작업 공간에서 계층화된 공유 객체들에 대한 비관적 동시성 제어 기법을 제공한다.
본 논문에서는 이러한 문제를 해결하기 위해서 협업 가상 환경에서 게임 레벨디자인을 효율적으로 수행하기 위한 동시성 제어 기법 및 공동 편집 방법을 제안 한다. 제안한 시스템은 여러 개발자들의 공동 작업 환경을 지원해주면서 일관성 유지를 위한 비관적 소유권 관리 방식의 동시성 제어 기법을 제공한다.
본 논문에서는 제안하는 협업 가상 환경에서의 동시성 제어 기법 및 공동 편집 방법을 실제로 적용한 게임 레벨 디자인 시스템을 개발 하였으며, 해당 시스템에 대한 성능 평가 및 고찰을 위한 실험을 수행 하였다. 실험 결과, 공동 작업에서 발생 하게 되는 충돌 문제 및 공동 편집 작업에서 발생 하게 되는 추가적인 작업을 줄이게 되었으며, 이를 통하여 본 논문에서 제안한 시스템이 협업 가상 환경에서 게임 맵 레벨 디자인의 일관성 유지에 기여 할 수 있음을 알 수 있었다.
본 논문에서는 협업 가상 환경에서의 레벨 디자인 과정에서 발생하는 공유 객체에 대한 작업 과정에 따른 일관성 충돌 문제를 해결하면서, 공동 편집 작업 과정에서 발생할 수 있는 에러 값들의 결과에 대한 수정 시에 발생하는 Undo 및 Redo 문제를 해결할 수 있는 시스템 및 제어 방법을 제안한다. 위의 [그림 1]은 본 연구에서 제안하는 시스템의 구조이다.
협업 가상 환경에서 공유 객체에 대한 동기화및 동시성 제어를 위해 하나의 공유 객체를 세부적으로 잘게 나누거나 인터랙션 및 속성에 따라 객체의 소유권을 구분하는 연구들이 꾸준히 수행되어 왔다. 이러한 관련 연구들에 대해서 소개를 한다.
제안 방법
본 논문에서 제안한 방법을 사용한 레벨 디자인 과정에서, 너무 소규모의 인원을 구성하여 실험을 하는 경우에는 공동 작업에서 충돌이 많이 발생하지 않고, 게임 개발 과정에서는 적용되기 어렵기 때문에, 소규모 개발인 경우를 5명으로 선정하였으며, 중규모 이상의 경우를 10명으로 선정하였다. 각 규모 그룹은 각각 기존의 방법을 사용하는 경우 및 본 논문에서 제안한 방법을 사용한 경우로 나누어서 구성되었다.
하지만 본 논문에서 제안한 시스템을 사용 하는 경우에는 충돌이 발생하였지만, 해당 객체에 대해서 먼저 작업을 하던 소유권자의 작업이 그대로 보호되고, 이후에 작업을 신청한 사용자들의 작업들을 블록킹을 하였기 때문에, 충돌이 발생하여 이 공유 객체의 값을 다시 수정 하는 작업이 상대적으로 줄에 들게 되었다. 또한 해당 실험을 하는 과정에서 사용자들이 공동 작업 중에 작업을 취소 및 재취소를 하게 되는 비율을 측정해 보았다. 다음의 [그림 9]는 이러한 실험 그룹 간의 취소 및 재 취소 횟수를 보여준다.
제안하는 시스템은 다수의 개발자의 참여를 허용하고, 다수의 개발자들이 공동 작업 공간에서 계층화된 공유 객체들에 대한 비관적 동시성 제어 기법을 제공한다. 또한, 개발자들의 공동 작업들에 대한 Undo 및 Redo의 수요가 발생하는 경우에 이들에 대한 동시성 제어 기법을 지원하여, 공동 레벨 디자인에서 발생할 수 있는 공유 객체들의 일관성을 유지하고 전체적인 통일성을 유지할 수 있는 기본적인 구조를 제안하였다.
본 논문에서 제안하는 시스템은 협업 가상환경의 효율적인 관리를 위하여 서버 및 클라이언트 구조로 구성되어 있다. 다음의 [그림 2]는 본 논문에서 제안하는 시스템 중 서버의 모습이다.
본 논문에서 제안한 방법의 성능평가를 위해서 본 논문에서 제안한 방법과 기존의 방법에 대한 비교 실험을 수행하였다. 실험은 각각의 방법들을 사용하여 레벨 디자인하는 경우에 걸린 시간, 총작업 횟수, 충돌 횟수 및 Undo 및 Redo 수행 횟수와 비율을 측정하였다.
본 논문에서 제안한 시스템은 협업 가상 환경에서의 공유 객체에 대한 동시성 제어 기법을 제공하고, 수행된 작업에 대한 공동 편집 방법을 제공한다. 이를 위하여 개발자들의 공동 작업들은 다음의 [그림 6]처럼 공유 작업들에 대한 Command패턴을 적용한다.
셋째, 예측(Predictive) 기반 동시성 제어 기법으로써 협업 가상환경에서 참여 사용자들의 공유 객체에 대한 접근 및 작업 방법을 미리 예측하여 가장 확률이 높은 사용자에게 미리 소유권을 주는 알고리즘으로 PaRADAE[11]와 같은 시스템에서 제안이 되었다. 또 다른 예측 기법으로, 아바타를 통하여 공동 작업을 하는 가상 환경에서 공유 객체에 대한 소유권을 예측하기 위해서 공유 객체의 반지름과 사용자들과의 거리, 방향을 계산하여 해당 공유 객체를 소유할 확률이 가장 높은 사용자에게 소유권을 제공해주는 연구가 제안되었으며[11] 이를 개선하여 아바타들의 이동 속도까지 고려하여 공유객체에 대한 소유권을 예측하는 연구들이 이루어졌다[12].
본 논문에서 제안한 방법의 성능평가를 위해서 본 논문에서 제안한 방법과 기존의 방법에 대한 비교 실험을 수행하였다. 실험은 각각의 방법들을 사용하여 레벨 디자인하는 경우에 걸린 시간, 총작업 횟수, 충돌 횟수 및 Undo 및 Redo 수행 횟수와 비율을 측정하였다. 실험을 위하여 본 연구에서는 MMORPG 게임 환경에서 성 및 요새를 디자인 하는 과정을 실험모델로 설정하였다.
실험은 각각의 방법들을 사용하여 레벨 디자인하는 경우에 걸린 시간, 총작업 횟수, 충돌 횟수 및 Undo 및 Redo 수행 횟수와 비율을 측정하였다. 실험을 위하여 본 연구에서는 MMORPG 게임 환경에서 성 및 요새를 디자인 하는 과정을 실험모델로 설정하였다. 또한 본 실험에서는 레벨 디자인 과정에서 사용된 리소스 들은 레벨 디자인 분야에서 각광 받고 있는 모듈 기반의 리소스 디자인 방법론[19]을 사용하였으며, 실험에 사용된 모듈들은 13개의 성과요새를 구축하는 건축물들, 5개의 요새 건물들, 4개의 NPC 구조물들 및 18개의 기타 구조물들로 구성된다.
본 논문에 참여한 실험 대상은 본 논문에서 제안한 시스템에 대한 교육 과정을 거친 다음의 [그림 8]과 같이 실험에서 기획하고 만들고자 하는 Heroes of Might and Magic5(HOMM5) 게임의 이미지를 보여주고, 이와 유사한 느낌이 날 수 있는 레벨 디자인을 구성하는 실험을 진행하였다. 실험이 진행 되는 동안 참여자들은 의사소통을 통하여 서로간의 역할 분담을 하고 작업하였으나, 레벨디자인 과정에 처음에 합의했던 부분이 맞지 않는 경우에는 다른 사용자들의 작업을 가져가거나 수정을 하는 등의 작업을 진행하였다. 실험의 완료는 실험 모델로 나온 22개의 모듈들의 복사본들을 배치하여 [그림 8](A)와 같이 본성, 교회, 병영, 감시 타워들의 배치가 되어 있으며, 성벽들의 구축이 각각 앞문과 후문의 배치가 이루어지고, 성벽 위에 공성 무기들과 경비병들의 배치가 완성이 된 경우에 실험을 종료하였다.
따라서 이를 실제로 게임 개발에 적용하기 위해서는 XLGAMES의 아키에이지와 같이 CryEngine 엔진의 기술을 응용 하여 독자적인 공동 레벨 디자인 환경을 구축하여 사용해야 한다[18]. 아키에이지 게임 사례에서는 레벨 디자인 과정 중 맵의 터레인(Terrain, 지형) 을 제작하는 과정에 대해서 소유권에 따라 터레인의 높이 조절 및 텍스처 조절을 수행하는 작업을 구축 하였다.
본 논문에서는 게임 레벨 디자인 작업의 성능 향상을 위한 협업 가상 환경을 적용한 게임 맵 레벨 디자인 시스템을 제안하였다. 제안하는 시스템은 다수의 개발자의 참여를 허용하고, 다수의 개발자들이 공동 작업 공간에서 계층화된 공유 객체들에 대한 비관적 동시성 제어 기법을 제공한다. 또한, 개발자들의 공동 작업들에 대한 Undo 및 Redo의 수요가 발생하는 경우에 이들에 대한 동시성 제어 기법을 지원하여, 공동 레벨 디자인에서 발생할 수 있는 공유 객체들의 일관성을 유지하고 전체적인 통일성을 유지할 수 있는 기본적인 구조를 제안하였다.
제안하는 시스템의 특징은 협업 가상 환경에서의 레벨 디자인을 지원하면서, 여러 개발자들의 정밀한 조작 과정에 발생할 수 있는 일관성 충돌을 해결하기 위해 비관적 소유권 제어 방법을 사용한 동시성 제어 메커니즘을 사용한다. 또한 관련연구에서 제기된 비관적 소유권 방식을 사용 하는 경우의 다른 개발자들의 행동 참여 제한을 해결하기 위하여, 공유 객체들을 계층 구조로 구성할 수 있도록 지원함으로써 공유 객체에 대한 접근성을 높여주게 된다.
본 논문에서는 이러한 문제를 해결하기 위해서 협업 가상 환경에서 게임 레벨디자인을 효율적으로 수행하기 위한 동시성 제어 기법 및 공동 편집 방법을 제안 한다. 제안한 시스템은 여러 개발자들의 공동 작업 환경을 지원해주면서 일관성 유지를 위한 비관적 소유권 관리 방식의 동시성 제어 기법을 제공한다. 여기에 객체의 소유권자가 공동 작업을 취소하기 위하여 Undo 작업을 수행 하는 경우에 이전 소유권자의 작업을 취소하게 되는 경우에는 이전 소유자의 허락을 받아야 취소를 수행할수 있게 허락하고, Redo의 경우에는 Undo가 수행된 경우에서 Redo를 수행해주는 공동 편집 방법을 제공한다.
대상 데이터
실험을 위하여 본 연구에서는 MMORPG 게임 환경에서 성 및 요새를 디자인 하는 과정을 실험모델로 설정하였다. 또한 본 실험에서는 레벨 디자인 과정에서 사용된 리소스 들은 레벨 디자인 분야에서 각광 받고 있는 모듈 기반의 리소스 디자인 방법론[19]을 사용하였으며, 실험에 사용된 모듈들은 13개의 성과요새를 구축하는 건축물들, 5개의 요새 건물들, 4개의 NPC 구조물들 및 18개의 기타 구조물들로 구성된다. 실험 대상으로는 3D 객체 조작에 익숙하고, 레벨 디자인 경험이 있는 실험자들을 30명을 선별하였다.
본 논문에 참여한 실험 대상은 본 논문에서 제안한 시스템에 대한 교육 과정을 거친 다음의 [그림 8]과 같이 실험에서 기획하고 만들고자 하는 Heroes of Might and Magic5(HOMM5) 게임의 이미지를 보여주고, 이와 유사한 느낌이 날 수 있는 레벨 디자인을 구성하는 실험을 진행하였다. 실험이 진행 되는 동안 참여자들은 의사소통을 통하여 서로간의 역할 분담을 하고 작업하였으나, 레벨디자인 과정에 처음에 합의했던 부분이 맞지 않는 경우에는 다른 사용자들의 작업을 가져가거나 수정을 하는 등의 작업을 진행하였다.
실험 대상으로는 3D 객체 조작에 익숙하고, 레벨 디자인 경험이 있는 실험자들을 30명을 선별하였다. 본 논문에서 제안한 방법을 사용한 레벨 디자인 과정에서, 너무 소규모의 인원을 구성하여 실험을 하는 경우에는 공동 작업에서 충돌이 많이 발생하지 않고, 게임 개발 과정에서는 적용되기 어렵기 때문에, 소규모 개발인 경우를 5명으로 선정하였으며, 중규모 이상의 경우를 10명으로 선정하였다. 각 규모 그룹은 각각 기존의 방법을 사용하는 경우 및 본 논문에서 제안한 방법을 사용한 경우로 나누어서 구성되었다.
또한 본 실험에서는 레벨 디자인 과정에서 사용된 리소스 들은 레벨 디자인 분야에서 각광 받고 있는 모듈 기반의 리소스 디자인 방법론[19]을 사용하였으며, 실험에 사용된 모듈들은 13개의 성과요새를 구축하는 건축물들, 5개의 요새 건물들, 4개의 NPC 구조물들 및 18개의 기타 구조물들로 구성된다. 실험 대상으로는 3D 객체 조작에 익숙하고, 레벨 디자인 경험이 있는 실험자들을 30명을 선별하였다. 본 논문에서 제안한 방법을 사용한 레벨 디자인 과정에서, 너무 소규모의 인원을 구성하여 실험을 하는 경우에는 공동 작업에서 충돌이 많이 발생하지 않고, 게임 개발 과정에서는 적용되기 어렵기 때문에, 소규모 개발인 경우를 5명으로 선정하였으며, 중규모 이상의 경우를 10명으로 선정하였다.
실험이 진행 되는 동안 참여자들은 의사소통을 통하여 서로간의 역할 분담을 하고 작업하였으나, 레벨디자인 과정에 처음에 합의했던 부분이 맞지 않는 경우에는 다른 사용자들의 작업을 가져가거나 수정을 하는 등의 작업을 진행하였다. 실험의 완료는 실험 모델로 나온 22개의 모듈들의 복사본들을 배치하여 [그림 8](A)와 같이 본성, 교회, 병영, 감시 타워들의 배치가 되어 있으며, 성벽들의 구축이 각각 앞문과 후문의 배치가 이루어지고, 성벽 위에 공성 무기들과 경비병들의 배치가 완성이 된 경우에 실험을 종료하였다. 다음의 [표 1]은 각 실험에서 소요된 실험의 완료 시간을 보여준다.
성능/효과
[표 1]의 결과와 같이 본 논문에서 제안한 방법을 사용한 소규모 팀B에서의 결과가 가장 좋게 나온 것을 알 수 있다. 이러한 이유는 실험 인원이 5명인 경우에는 실험 참여자간에 의사소통이 어느 정도 잘 이루어지고, 역할 분담이 이루어지면서 작업을 했기 때문에, 공동 작업에서의 충돌이 상대적으로 적게 발생하였고, 충돌이 발생한 경우에서의 대처 및 해결이 빠를 수 있었다.
둘째, 비관적 (Pessimistic) 동시성 제어 기법에서는 공유 객체에 접근하기 위해서는 먼저 객체에 대한 소유권을 얻어야 하고, 소유권을 얻은 사용자만이 공유 객체에 대한 접근 및 작업을 진행할 수 있다. 이러한 비관적 방식 협업 작업에 참여하는 사용자들이 명확하게 소유권을 설정하고 이에 따라 공동 작업을 관리할 수 있다는 점에서 DIVE[8]와 같은 초기 협업 시스템부터 널리 사용 되고 있다.
따라서이 경우에 사용자들은 해당 작업을 오류라고 생각을 하게 되고 Undo를 수행하여 다시 작업을 수행 하게 된다. 본 논문에서 제안한 방법을 사용 하는 경우에는 충돌이 발생하더라도, 가장 먼저 작업을 수행한 소유권자의 작업을 보장해 주기 때문에 상대적으로 Undo 횟수가 적게 나왔다. 또한 [그림 9]의 (B)에 나온 Undo 중 이전 개발자의 작업을 취소하는 상황도 3~40% 정도의 비율로 발생하게 되었다.
일반적으로 실험 참여자들은 실험 과정에서 이러한 문제를 줄이기 위해서 실험 과정에서 자연스럽게 역할 분담을 하였으나, 공유 객체들의 복잡성 증가 및 의견 일치 과정에서 공동 편집 작업에서의 일관성 충돌 현상이 발생 할수밖에 없음을 인지하게 되었다. 사용자들은 공동 작업을 통해서 기존의 작업을 빠르게 향상할 수있음에 공감 하면서도 본 논문에서 제안한 시스템과 같이, 공동 작업 중에서 동시성 제어 기법 등을 적용한 전체적인 일관성을 유지하는 작업이 필요하다는 의견을 주었다.
본 논문에서는 제안하는 협업 가상 환경에서의 동시성 제어 기법 및 공동 편집 방법을 실제로 적용한 게임 레벨 디자인 시스템을 개발 하였으며, 해당 시스템에 대한 성능 평가 및 고찰을 위한 실험을 수행 하였다. 실험 결과, 공동 작업에서 발생 하게 되는 충돌 문제 및 공동 편집 작업에서 발생 하게 되는 추가적인 작업을 줄이게 되었으며, 이를 통하여 본 논문에서 제안한 시스템이 협업 가상 환경에서 게임 맵 레벨 디자인의 일관성 유지에 기여 할 수 있음을 알 수 있었다.
실험 후에는 실험에 참여자들에 대한 인터뷰를 수행 하면서 협업 가상 환경에서 공동 레벨 디자인 작업을 하는 경우에 공유 객체들에 대한 공동 작업 과정에서 일관성 문제가 발생할 수 있다는 점을 공감하였다. 일반적으로 실험 참여자들은 실험 과정에서 이러한 문제를 줄이기 위해서 실험 과정에서 자연스럽게 역할 분담을 하였으나, 공유 객체들의 복잡성 증가 및 의견 일치 과정에서 공동 편집 작업에서의 일관성 충돌 현상이 발생 할수밖에 없음을 인지하게 되었다.
또한 공동 작업 과정에서 충돌이 발생하는 경우에는 기존의 방법에서는 충돌이 발생을 시킨 사용자들의 작업 결과가 일치하지 않기 때문에 이후 사용자와의 의사 협약을 통해 다시 수정을 해야 하는 상황이 발생하게 되어 작업 횟수가 상대 적으로 증가하였었다. 하지만 본 논문에서 제안한 시스템을 사용 하는 경우에는 충돌이 발생하였지만, 해당 객체에 대해서 먼저 작업을 하던 소유권자의 작업이 그대로 보호되고, 이후에 작업을 신청한 사용자들의 작업들을 블록킹을 하였기 때문에, 충돌이 발생하여 이 공유 객체의 값을 다시 수정 하는 작업이 상대적으로 줄에 들게 되었다. 또한 해당 실험을 하는 과정에서 사용자들이 공동 작업 중에 작업을 취소 및 재취소를 하게 되는 비율을 측정해 보았다.
특히 역할 분담이 중첩되고, 작업 시간이 오래 중첩이 된 경우에 이러한 상황이 발생하였으며, 이 경우에는 해당 공유 객체에 대한 작업하였던 개발자의 항의를 받아서 다시 Redo를 수행하게 되는 횟수가 증가 되는 상황이 발생하였다. 하지만, 본 논문에서 제안한 방법을 사용 하는 경우에는 소유권 관리 기반의 History 정보 추적을 통한 허락 유무를 결정하였기 때문에 이러한 중복 될 수있는 작업을 줄일 수 있었다.
후속연구
향후에는 보다 많은 개발자들이 공동 작업의 기회를 참여할 수 있는 기회를 제공하는 공동 작업 환경에서의 개발자 제약문제를 해결하고, 이를 바탕으로 공동 작업 개발자들이 동시에 작업을 하는 동기식 협업만이 아니라, 작업자들이 상대방의 작업 시간에 구애 받지 않고 서로가 편한 시간에 참여할 수 있어서 서로 다른 시간대에도 공동 작업을 수행할 수 있는 비동기식 협업을 통한 공동 작업 스키마를 개발하여 적용할 예정이다.
질의응답
핵심어
질문
논문에서 추출한 답변
게임 맵 레벨 디자인은 어떤 작업인가?
게임 맵 레벨 디자인이란 기획자가 창조한 게임 내용을 가상현실 환경 속에 해당되는 맵과 건물들 및 캐릭터들로 실체화 시키는 과정으로, 기획자, 원화가, 아티스트, 레벨 디자이너 등과 같이 여러 개발자들이 공동으로 협력해서 해결해야 하는 작업이다. 이러한 게임 레벨 디자인의 목표는 궁극적으로 게임의 재미를 제공 하는 것으로, 게임 제작의 성공 여부를 결정하는 매우 중요한 요소 중의 하나이다[1,2].
게임 레벨 디자인 제작 과정에서 규모가 큰 온라인 게임 제작에 발생하는 천문학적인 제작비용과 시간을 줄이기 위한 방법은 무엇인가?
이러한 게임 레벨 디자인 제작 과정에는 일반적으로 많은 시간과 비용이 필요로 하며, 특히 규모가 큰 온라인 게임 같은 경우에는 천문학적인 제작비용과 시간이 소요된다. 따라서 이러한 시간과 비용을 효과적으로 줄이기 위해서는 기존의 오프라인 형태의 공동 작업의 과정을 온라인화 하여 협업 가상환경을 적용한 공동 작업 환경의 형태로 제공할 수 있다. 이러한 게임 레벨 디자인을 공동으로 적용 하는 연구들은 아직 초창기 단계라고 할 수 있다[3].
게임 레벨 디자인이란 어떤 요소 및 과정을 의미하는가?
게임 레벨 디자인은 재미있는 게임 플레이를 위하여 매우 중요한 게임 제작 요소 중의 하나이며, 게임의 플레이가 이루어지는 공간의 구성 및 해당 맵의 제작, 세부적인 장치, 객체와 물체의 설정 및 배치, 배경 설정 및 이벤트 연출 등을 설계하는 과정이다. 게임 맵 디자인 과정은 다수의 3D 객체를 공간 속에 배치하고, 지속적인 평가, 수정 및 보완 과정을 통하여 게임 공간의 성능을 개선하여야 하므로, 그 과정에서 비용과 시간을 많이 사용하게 된다.
참고문헌 (19)
Rob Pardo, "Making a Standard(and Trying to Stick to it!): Bizzard Design Philosophies", GDC 2010.
Phil Co, "Level design for games", New Riders Games, 2006, pp 353.
Hero Engine, www.heroengine.com
Chris Joslin, Thomas Di Giacomo, and, Nadia Magnenat-Thalmann, "Collaborative virtualenvironments: from birth to standardization", Communications Magazine 42(4) 2004, IEEE, 22-23.
Un-Hae Sung, Jae-Heon Yang, Kwang-Yun Wohn, "Concurrency Control in CIAO", Proceeding of the 1999 IEEE Virtual Reality Conference (VR'99), 22-28
John M. Linebarger, G. Drew Kessler, "Concurrency Control Mechanisms for Closely Coupled Collaboration in Multithreaded Peer-to-Peer Virtual Environments", Presence 13(3), 296-314, 2004.
Min Tang, Shang-Ching Chou, and Jin-Xiang Dong, "Collaborative virtual environment for feature based modeling", Proceedings of the 2004 ACM SIGGRAPH international conference on Virtual Reality continuum and its applications in industry, 120-126.
Olof Hasgand, "Interactive multiuser VEs in the DIVE system", IEEE Multimedia 3(1), 30-39, 1996.
W.D. Li, S.K. Ong, J.Y.H. Fuh, Y.S. Wong, Y.Q. Lu, and A.Y.C Nee, "Feature-based design in a distributed and collaborative environment. Computer-Aidede Design", 36, 777-790, 2004.
David J. Roberts, and Paul M. Sharkey, "Maximizing concurrency and scability in a consistent, causal, distributed Virtual Reality system, whilst minimizing the effect of network delays", Proceedings of the Sixth Workshop on Enabling Technologies Infrastructures for Collaborative Enterprise (WETICE'97), 161-16, 1997.
Jeonghwa Yang, and Dongman Lee, "Scalable prediction based concurrency control for distributed virtual environments", Proceedings of the 2000 IEEE Virtual Reality Conference (VR 2000), 151-158, 2000.
Eunhee Lee, Dongman Lee, Seunghyun Han, and, Soon J. Hyun, "Prediction-based concurrency control for a large scale networked virtual environment supporting various navigation speeds", ACM VRST 2001, 127-134.
Jun Lee, PhamSy Quy, Jee-In Kim, Lin-Woo Kang, Anna Seo, HyungSeok Kim, "A Collaborative Virtual Reality Environment for Molecular Biology", ISUVR 2009, pp.68-71.
David Chen and Chengzheng Sun, "Undoing any operation in collaborative graphics editing systems", In Proceedings of the 2001 International ACM SIGGROUP Conference on Supporting Group Work (GROUP '01) 2001, 197-206.
Weiss, S., Urso, P., Molli, P., "Logoot-Undo: Distributed Collaborative Editing System on P2P Networks", IEEE Transactions on Parallel and Distributed Systems 21(8) 2010, 1162-1174.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.