1. 서론
예전부터 발전 중이던 VR 기술은 현재 4차산업 혁명의 중심 기술 중 하나로 인식되면서 지속적으로 발전하고 있는 분야이다. 또한, 상용화된 5G 기술을 이용한 고용량 스트리밍 서비스가 무선 휴대용 기기에 적용할 수 있게 되었고, 이에 맞추어 고용량의 VR 콘텐츠도 5G 시대의 핵심 서비스 중 하나가 되었다. 이렇듯 VR 기술은 게임이나 영화와 같은 엔터테인먼트를 중심으로 발전하면서 동시에 교육, 의료, 제조, 생산 분야 등에서도 활용 가치가 높은 것으로 인정받고 있다[1,2]. 다만 지금까지 VR 기술은 하드웨어 중심으로 발전을 해왔고 이런 하드웨어를 활용하는 다양한 콘텐츠가 개발되고 있으나 지금까지는 체험형 콘텐츠가 주류를 이루고 있으며, 킬러 콘텐츠라 할만한 것이 드물고 절대적인 숫자도 부족한 편이다[3].
본 논문에서는 부족한 VR 콘텐츠의 생산성 향상과 체험형 콘텐츠로 편중된 문제를 해결할 수 있도록 스토리텔링을 지원할 수 있는 효율적인 VR 콘텐츠 저작도구 구현 방법을 제안한다. 제안하는 VR 콘텐츠 저작도구는 콘텐츠를 생성할 때 개발자가 의도하는 내용을 반영할 수 있도록 매우 다양하고 복합적인 애니메이션 생성 기능과 객체 배치 및 편집 기능을 제공한다. 또한 본 논문에서 제안하는 저작도구는 보통의 시뮬레이션에서 사용되는 시간의 개념과 유사한 타임라인을 도입하였고, 이에 기반하여 객체들이 정확한 시간에 각자의 행동을 취하거나 객체 간의 동기화된 움직임을 가질 수 있도록 하여 VR 콘텐츠를 쉽게 생성할 수 있다. 더불어 VR 콘텐츠 사용자가 몰입감과 현장감을 강하게 느낄 수 있도록 본인 및 대화 상대의 음성 합성 기능도 구현하였다. 본 논문에서는 VR 콘텐츠 저작도구의 구성과 기능별로 구분한 모듈의 구현 방법을 제안하고, VR 콘텐츠의 편리한 개발과 생성을 위한 사용자 인터페이스(UI) 구현 방법에 대해서도 제안한다. 개발자의 스토리텔링을 반영하기 위해 다양한 애니메이션 생성 기법과 저작도구가 가져야 할 주요 기능도 제안하였다. 본 논문에서 개발한 기능들을 통해 VR 콘텐츠의 개발 생산성이 크게 높아지고, 향후 VR 콘텐츠 시장에서 부족할 것으로 예측되는 콘텐츠의 수를 증가시키는데 도움이 될 것이다. 최종적으로는 체험형 콘텐츠 위주로 편중된 VR 콘텐츠를 상호작용형 콘텐츠로 다양화하는 데도 도움이 될 것으로 기대한다.
본 논문의 구성은 2장에서 VR 콘텐츠 현황과 VR 기술 관련 연구에 대한 현황을 제시하고, 3장에서는 제안한 VR 콘텐츠 저작도구의 구성과 각 기능의 구성 방법 및 구현 결과에 대해 상세히 기술하였으며, 4장은 결론으로 되어 있다.
2. 관련 연구
2.1 VR 기술 관련 현황
현재 VR 관련 기술은 엔터테인먼트 분야를 중심으로 교육, 의학, 제조업 분야에 적극적으로 활용되고 있으며 그 활용 범위는 더욱 증가되고 있다[1,2]. 특히 최근에는 5G 기술의 상용화와 함께 스마트폰을 통해 즐길 수 있는 VR 콘텐츠와 관련 앱(App)들이 제공되면서 VR 기술 및 콘텐츠는 그 영역이 더욱 확대되어 현재는 거의 모든 분야에 적용되고 있다[3]. 의료 분야와 교육 분야에서는 VR 기술을 적용한 콘텐츠 시장이 2010년 이후로 매년 5% 이상의 지속적인 성장세를 유지하고 있으며[4], 차세대 융합형 콘텐츠 산업 트렌드의 보고서에서는 40대 유망 콘텐츠 중 하나로 VR 콘텐츠를 포함하고 있다[5]. 의학분야 중에서는 정신신경과학 분야에서 VR 기술과 콘텐츠를 적극적으로 도입하고 있는데 주요 사례로는 국내의 ‘Be Fearless’가 있고[6], 해외의 사례는 외상 후 스트레스 장애(PTSD) 환자 치료를 위해 개발된 ‘버추얼 이라크’(Virtual Iraq)가 대표적이다[7]. 이렇게 다양한 분야에 VR 기술과 콘텐츠가 적용되고 있으나 현재의 문제는 VR 시장과 연구가 하드웨어 중심으로 형성되고 있다는 것이다. 즉, VR 콘텐츠를 개발하기 위한 국내 소프트웨어는 매우 부족하며, VR 콘텐츠 제작기법을 위한 연구는 매우 드물다[8,9]. Fig. 1은 VR 관련 시장에서 VR 콘텐츠가 차지하는 비율을 나타내고 있는데 VR 하드웨어가 충분히 보급된 이후에도 콘텐츠 개발과 보급은 부족할 것으로 예상된다.
Fig. 1. Size of VR Market in Korea and Ratio of VR Content [10].
2.2 VR 콘텐츠 제작 기법 및 VR 콘텐츠 저작도구 기술동향
현재까지 VR 콘텐츠 개발 시 주요 지침은 존재하나 표준으로 지정된 것은 없다. VR 콘텐츠를 제작할 때 중요한 것은 체험자를 중심으로 360도가 모두 표현되어야 하며, 실제 환경에 들어간 것과 유사한 경험을 제공하도록 개발되어야 한다[11]. 또한 VR 콘텐츠는 몰입감과 현실감은 유지하면서 멀미나 두통같은 부작용을 최소화해야 한다. 최신 VR 기기가 제공하는 해상도로 360도 체험형 콘텐츠를 생성할 경우 이론적으로 약 10K 해상도의 영상을 제공해야 한다[9,12]. VR 콘텐츠는 실사와 합성 그래픽을 모두 사용할 수 있으나 교육용 및 의료용 VR 콘텐츠의 경우는 실사 영상을 중심으로 개발되고 있으며, 게임이나 영화와 같은 엔터테인먼트용 콘텐츠의 경우는 CG 중심이거나 실사와 CG 합성을 통해 개발되고 있다[11,12]. 360도 가상현실을 생성하기 위해 사용하는 방법은 파노라마다[12]. 파노라마를 구성할 때 하나의 이미지는 촬영된 전체 배경의 부분으로 표현되나 각 이미지는 스티칭(Stiching)과 타일링(Tiling) 기술을 이용하여 파노라마 가상현실 공간을 생성할 수 있다[13].
만약 실사 이미지가 아닌 CG를 중심으로 VR 콘텐츠를 개발한다면 유니티(Unity)[14]와 언리얼 엔진4(UnReal Engine 4)[15]를 사용할 수 있다. 두 가지 도구들은 랜더링, 합성, 편집과 같은 복잡한 작업을 감소시키고 실시간 광원 랜더링을 적용하여 현실적인 객체를 매우 쉽게 만들 수 있다. 그러나 이 도구들은 VR 콘텐츠 전용 개발툴은 아니며 3차원 게임 개발에 주로 사용되는데, 현재는 VR 콘텐츠 제작에도 사용된다[16]. 나모 360이라는 VR 기반의 저작 솔루션[17]도 존재하는데 VR 콘텐츠 개발 진입 장벽을 낮춰 VR 이미지와 VR 동영상을 쉽게 편집할 수 있고 배포에 있어서도 다양한 기능을 지원한다. 그러나 앞서 언급한 주요 VR 콘텐츠 개발 도구들의 공통적 단점은 스토리를 정밀하게 반영하여 객체들의 동작을 생성하는 기능이 부족하고 VR 콘텐츠 전용 편집 기능도 부족한 실정이다[18]. 따라서 개발 도구의 내장 객체와 애니메이션으로 특정 스토리를 구성할 수 없는 경우 다른 동작 개발을 위해서는 애니메이션 생성 전용 도구를 추가로 사용해야 한다. 즉 유니티나 언리얼 엔진의 경우 특정 애니메이션 생성을 위해서 1차적으로 3D MAX와 같은 모델링 도구를 사용해야만 하고, 추가로 모델링된 객체에 대해 애니메이션을 구성하는 작업이 필요하다. 이러한 애니메이션 생성도 개발자의 의도를 반영하기 위해 다양한 동작이 필요한 경우마다 새롭게 생성할 필요가 있어 매우 비효율적이다. 또한 다양한 동작과 객체 간의 상호작용을 구현하기 위해서는 컴퓨터 언어의 사용이 필수이기 때문에 컴퓨터 언어를 모르는 VR 콘텐츠 개발자들은 도구 사용에 있어 진입 장벽이 높다는 단점도 있다.
3. 제안한 VR 콘텐츠 저작도구
3.1 제안한 VR 콘텐츠 저작도구의 개요 및 구성
제안하는 VR 콘텐츠 저작도구는 기존의 저작도구들이 가지지 못한 기능인 타임라인에 맞추어 스토리텔링을 지원할 수 있는 기능과 다양한 내용을 구성할 수 있도록 각종 3D 객체의 제어와 애니메이션 생성이라는 두 가지 주요 기능을 포함하여 개발하였다. 본 절에서 제안하는 VR 콘텐츠 저작도구의 주요 기능, 구현 방법 및 결과물에 대해 상세하게 기술하였다.
3.1.1 VR 콘텐츠 저작도구의 구성 모듈
제안하는 VR 콘텐츠 저작도구는 장면 랜더링 모듈(Scene Rendering Module)과 스토리텔링 모듈(Storytelling Module)로 구성되어 있다. 장면 랜더링 모듈의 주요 기능은 VR 콘텐츠를 재생시키는 역할로 콘텐츠를 사용할 때 편의 기능을 제공한다. 이 모듈은 시뮬레이터와 유사하게 타임라인 기반의 큐잉 프로세스를 처리하며, VR 콘텐츠의 특정 시간을 반복 체험하거나 시점을 바꾸고 재생 속도 등을 변경할 때 필요한 기능을 제공하도록 구현되어 있다.
스토리텔링 모듈은 개발자가 스토리(대본, 기억, 구술)를 이용하여 원하는 객체 및 음성을 타임라인에 맞춰 정밀하게 배치하는 것을 핵심 기능으로 하는 모듈이다. 내부에 스케줄러(Scheduler) 모듈과 뷰어(Viewer) 모듈을 포함하고 있으며, 구성 형태는 Fig. 2와 같다. 스토리텔링 모듈은 본 논문에서 제안하는 VR 콘텐츠 저작도구의 핵심 모듈이며 세부 모듈의 주요 기능은 3.1.2절과 3.1.3 절에 기술하였다.
Fig. 2. Function and Behavior of Storytelling Modules.
3.1.2 스케줄러 모듈 및 구현 방법
스케줄러 모듈은 객체의 액션(Action)과 음성을 연결하거나 객체가 물건을 잡는 테이크(Take) 시점을 정하고 특정 액션의 길이 설정을 담당하는 모듈이며 타임라인을 기반하여 작업을 처리한다. Fig. 3의 흐름을 살펴보면 스케줄러 모듈 내에 특정 정보(예. 객체 생성)가 최초로 생성되면 커서의 위치 정보를 초기 좌표로 설정한 후 Item Dictionary를 생성한다. Item Dictionary는 Action과 Take를 하나의 Item으로 통합 관리하여 두 가지 요소를 한 번에 처리할 수 있다.
Fig. 3. Scheduler Module Configuration Diagram.
스케줄러 모듈이 관리하는 외부 패널(Panel)에서 액션과 테이크에 대한 정보를 입력하게 되면 이 정보를 Item으로 합쳐 Item Dictionary에 추가한다. 이후 Item UI를 생성하여 UI 화면 내에 배치한다. Item UI는 생성 도구의 하단에 위치한 바(Bar) 형태로 배치되어 있고 이름, 삭제 버튼, 그리고 시간 정보 바를 포함하고 있다. Fig. 3의 오른쪽 상단에 표시되어 있는 Item View는 Item Summary(아이템 요약)와 Item Time Bar(아이템 실행시간 정보)를 가진다. Fig. 4의 하단에 애니메이션 바(Animation Bar)로 표시한 박스는 하나의 Item에 대한 애니메이션 지속시간을 의미하며 크기를 조정하여 애니메이션 시간을 설정할 수 있다.
Fig. 4. Screen capture with item added to the scheduler.
3.1.3 뷰어 모듈 및 구현 방법
뷰어 모듈은 스토리텔링 모듈의 하부 모듈로서 다시 하위에 세 가지 모듈을 가진다. 세 가지 모듈은 인벤토리 생성 모듈, 객체 생성 모듈, ItemSetUI 모듈이다.
∙ 인벤토리 생성 모듈의 동작 및 구현
이 모듈의 동작은 인벤토리 생성과 슬롯 생성이라는 두 가지 동작을 수행한다. 첫째 동작은 인벤토리라는 저장소를 생성하는데, 이 저장소에는 이동 가능한 객체, 액션, 그리고 애니메이션이 포함된 객체의 인스턴스를 저장한다. 그리고 저장된 정보를 슬롯에 보내주는 역할도 수행한다. 인벤토리 생성을 완료하기 위해서 아이템을 먼저 생성하고 연결하는 절차를 거친다. 이 동작이 마무리 되면 둘째 동작인 슬롯 생성을 수행한다. 가장 먼저 인벤토리 스크립트 내의 함수가 작동하면 아이템 리스트들을 로드하여 해당 정보를 가져온다. Fig. 5는 인벤토리 생성과 슬롯 생성을 위한 절차를 논리적인 형태로 표현한 것이다.
Fig. 5. Logical process of inventory creation.
∙ 객체 생성 모듈 구현 방법
객체 생성 모듈은 슬롯 스크립트 파일에 구현되어 있으며, 사용자가 특정 슬롯 칸에 마우스 이벤트를 발생시키면 대응하는 함수가 수행되도록 구현되어 있다. Fig. 6은 객체 생성 과정을 도식화한 것이며, 마우스의 포커싱이나 클릭 등에 따라 각각 다른 대응과 동작을 수행하는 UI를 구현하여 VR 콘텐츠 생성의 편의성을 도모하였다.
Fig. 6. Object creation process.
∙ 아이템 배치 모듈 구현 방법
아이템 배치(ItemSetUI) 모듈은 생성된 객체를 적절한 위치에 배치하는 역할을 한다. Fig. 7의 화면에서 사람 객체의 좌측 상단 및 우측에 있으며 타원으로 표시하였다. 아이템 배치 모듈은 생성된 객체 위에 마우스를 올리거나 객체를 클릭하면 토글 변경 스크립트와 외곽선 설정 스크립트가 연동되어 선택된 객체를 더 밟게 변경하여 현재 객체가 상호작용이 가능함을 표시한다. 아이템 배치 모듈의 스크립트에는 VR 콘텐츠를 제작하는 동안 클릭한 아이템 정보가 저장되며, 이 정보 및 함수의 동작을 통해 VR 콘텐츠를 구성할 여러 객체를 조작할 수 있다.
Fig. 7. Screen capture of activated ItemSetUI and Item Name3d.
3.2 VR 콘텐츠 저작도구용 UI 개발 방법 및 핵심 기능
3.2.1 VR 콘텐츠 개발용 UI 개발 시 고려 사항
현재의 VR 콘텐츠들은 실사나 CG를 이용한 체험형 콘텐츠가 주류라서 콘텐츠의 개발과 체험이라는 측면에서 볼 때 자유도가 매우 부족하다. 본 논문에서 제안하는 VR 콘텐츠 저작도구는 VR 콘텐츠 개발자가 특정 스토리를 그대로 반영할 수 있도록 다양한 객체와 공간을 타임라인의 적절한 위치에 생성할 수 있도록 하였다. 따라서 본 논문의 VR 콘텐츠 저작도구는 다양한 객체의 생성, 3차원 좌표계에서의 작업, 공간상에서의 애니메이션 적용이라는 점을 고려한 UI를 개발해야 한다. 즉, 사람 객체에 대한 제어, 편집, 애니메이션 적용과 배경 객체에 해당하는 집, 방, 차량 등에서도 객체의 생성과 편집이 쉽도록 사용자 친화적인 UI가 필수적이다.
3.2.2 사람 객체용 UI 구현 방법
사람 객체는 스토리를 이끌어가는 동시에 몰입감과 현장감을 제공하는 주요 객체이므로 현실성을 최대한 반영해야 한다. 따라서 체형 변경, 의상이나 외관 설정 변경, 소품 변경을 할 수 있는 UI를 구현하였다. 의상을 변경할 때는 착용 의상(Shirt, Pants, Shoes, etc.)을 변수에 저장해두고 의상의 상태를 SetActive를 이용하여 True, False로 변환하여 해당되는 의상이나 외관 스킨 등을 활성화하는 형태로 UI의 기능을 달성한다. 체형 변경을 위해서는 블랜드쉐입(Blend Shapes)이라는 기능을 활용하였는데, 다른 형태를 가진 두 개의 메시 사이를 수치로 변환해주기 때문에 중간값을 설정할 수 있어 체형 변화를 할 수 있다. Fig. 8은 사람 객체 외관 변경용 UI의 구성 화면이다.
Fig. 8. UI for Change of Appearance.
3.2.3 배경 객체 생성용 UI 구현 방법
배경 객체는 사람 객체를 중심으로 다양한 사물객체를 배치할 수 있는 공간으로 정의된다. 집을 중심으로 차량, 길거리 등이 배경 객체에 해당되며, 스토리가 진행될 때 바탕이 되는 중요한 요소이기 때문에 배경 객체를 편리하게 생성하고 편집할 수 있는 UI도 구현하였다.
Fig. 9는 배경 객체를 Build(건축)하는 논리적 구성도이다. Build 버튼 UI내의 버튼을 클릭하면 Fig. 9와 같은 논리적 처리 과정을 거쳐 관련된 다양한 스크립트 함수가 작동한다. 함수가 동작하면 설치된 건물 객체는 VR 콘텐츠 저작도구를 실행시킨 상태에서 Fig. 9의 우측에 있는 Building Panel을 통해 편리하게 관리할 수 있다.
Fig. 9. Logical diagram for build functions of Background object.
3.3 객체 애니메이션 생성과 구현 방법
3.3.1 본리깅 및 페이셜 몰퍼
VR 콘텐츠에서 높은 몰입감과 현장감은 상호작용을 하는 상대의 모습, 움직임, 표정에 크게 영향을 받는다. 다만 사람 객체를 3D 모델링 도구로 생성만 한 상태에서는 팔, 다리, 몸통, 얼굴 등을 개별적으로 제어할 수 없다. 본 논문에서는 머리, 팔, 다리, 몸통, 표정 등을 부위별로 제어하는 골격과 컨트롤러(Controller)를 구현한 후 이를 연결하는 본리깅(Born Rigging)을 적용하여 애니메이션을 생성하였다. 그리고 VR 콘텐츠에서 중요한 요소 중 하나인 표정을 제어하기 위해서 얼굴 객체의 정점들을 이동시켜 표정을 만들어내는 ‘페이셜 몰퍼’ 기법과 얼굴 안쪽의 점들을 특정 물체에 맵핑시켜 움직임을 제어하는 ‘컨트롤러 제어법’을 적용하였다.
3.3.2 중첩 애니메이션 구현 방법
본 논문의 VR 콘텐츠 저작도구는 스토리텔링을 반영하기 위해 다양한 애니메이션으로 사람의 동작을 표현한다. 단 다양한 애니메이션을 모두 만들어내는 것은 현실성이 거의 없다. 본 논문에서는 두 가지 방법을 이용하여 애니메이션 생성의 다양화를 달성하였다. 첫째, 미리 만들어 둔 기본 동작(Base Action)들을 연결하여 다양한 애니메이션을 만들어내고 그 동작 사이를 부드럽게 연결하는 Idle(정지) 애니메이션을 포함하여 구현한다. 둘째 중첩 애니메이션 기법을 활용하여 신체 부위별로 기본 동작에 다른 기본 동작을 부분적으로 중첩해 각 신체 부위가 따로 동작할 수 있도록 함으로써 기본 동작 몇 가지만 있으면 매우 많은 숫자의 다른 동작을 하는 애니메이션을 생성할 수 있다. 사람 객체와 다른 물체와의 상호작용을 표현하는 애니메이션과 제어 기능도 구현하였다. 상호작용은 몰입감과 현장감을 높여주기 위해 필수적이다. 다른 객체와 사람 객체의 상호작용은 사람 객체가 다른 객체를 잡거나 움직이는 동작이 발생할 때 객체의 자료 구조를 순간적으로 통합하거나 분리함으로써 좌표계가 같이 이동되거나 별도로 이동할 수 있도록 구현하였다. 기본 동작을 연결하여 애니메이션을 구성하는 천이도는 Fig. 10과 같다.
Fig. 10. Animated Connection Status Transition Diagram and Overlaid animation.
둘째 방법으로 사용한 중첩 애니메이션은 기본 동작들을 신체 부위별로 분리하여 사용하는 방식이다. 신체의 사지, 머리, 얼굴에 모두 독립적으로 애니메이션이 적용되도록 하면 최소한의 기본 동작만 생성하여도 매우 많은 파생 애니메이션 생성이 가능하고 표정도 별도로 관리할 수 있다. 설명한 중첩 애니메이션을 사용한 예로써 기본 계층의 걷기(Walk) 상태를 하체에 적용하고 팔에 적용할 수 있는 Hand(손동작) 계층의 애니메이션을 중첩하면 걸으면서 손으로 어떤 동작을 취하게 할 수 있다. 중첩 애니메이션이 설정된 상태는 Fig. 10의 좌측에 나타나 있다.
3.4 음성 지원 기능 및 히스토리 기능
3.4.1 음성 생성 기능
스토리텔링 중심의 VR 콘텐츠에서는 사람과 사람 사이의 대화가 핵심이 되기 때문에 음성을 포함한 각종 음원을 지원하는 기능이 필수적이다. 본 논문에서는 두 가지 방법으로 음성을 지원한다. 첫째, 성우나 대상자의 음성을 직접 시나리오의 대사에 맞춰 녹음하는 방법이 있다. 이 경우는 단순한 방법으로 모델(대상자)의 음성을 녹음한 후 저장된 파일을 특정 디렉토리에 위치시켜 VR 콘텐츠 저작도구에서 바로 사용한다. 둘째, 인공지능 기반의 음성 합성 기술을 적용하는 것이다. 이 방법은 기존에 음성 모델이 학습된 신경망을 사용하여 모델의 샘플 음성 합성을 진행한다. 음성 합성이 완료되면 원하는 발화 문장을 타이핑하여 외부 프로세서를 호출하고 미리 학습된 모델 타입의 데이터를 거쳐 음성 파일을 결과물로 출력한다. 인공지능 기반의 음성 합성을 사용하는 이유는 VR 콘텐츠를 생성할 때 특정 인물에 맞춘 음성이 필요할 경우 그 사람의 목소리를 전부 녹음하지 않고 몇 개의 샘플링 음성 데이터를 통해 시나리오에 필요한 모든 문장의 음성을 확보하기 위해서이다. 두 가지 음성 생성방법으로 작성된 파일을 VR 콘텐츠에 적용하는 방법은 Fig. 11에 나타내었다. 생성된 파일이 정상적인 위치에 존재하면 도구 실행시 동적 생성 방식을 거쳐 유니티 상에 리스트(List) 형식으로 저장 되어 VR 콘텐츠 개발자에게 음성 콘텐츠를 제공할 수 있도록 구현하였다.
Fig. 11. Voice file playback module diagram including recording and text to speech synthesis technology.
3.4.2 VR 콘텐츠 편집을 위한 취소/실행(히스토리) 기능 및 UI
VR 콘텐츠 편집 작업 중 잘못된 명령 수행으로 되돌리기를 하거나 이전에 했던 작업을 복원하는 히스토리 기능은 저작도구에서는 필수적이다. 저작도구에서는 작업을 진행하였다가 컨트롤(Ctrl)키와 Z키를 눌러 작업을 취소하고, 컨트롤 키와 Y키를 눌러 복원하는 것이 일반적이다. 다만 VR 콘텐츠에 사용되는 객체는 특정 동작만을 되돌리거나 복원하는 것이 불가능하다.
스택을 사용하면 히스토리 기능의 기본적인 구현이 가능하지만 본 논문의 VR 콘텐츠 생성 도구는 무수한 객체와 이들의 동작인 애니메이션이 존재하고, 배경 객체, 기타 사물 객체, 그리고 음성 또한 히스토리 기능에 의해 변경 취소와 재반영이 가능해야 한다. 이런 다양한 사항을 모두 고려하기 위해서 임시적으로 정보를 저장하는 클래스를 생성하여 구현하였다. 히스토리 기능의 동작 순서는 Table 1과 같다. Table 1에서의 핵심은 단계 3에서 VR 콘텐츠가 가지고 있는 모든 정보를 클래스로 구성한 후 스택에 쌓는다는 점이다. 그리고 단계 4에서와 같이 스택을 이원화하여 편집 동작 취소와 재반영을 할 수 있도록 항상 정보를 유지하는 것 또한 VR 콘텐츠에 대한 히스토리 기능을 위해 중요한 부분이다.
Table 1. Operational Steps for History Function
3.5 개발자를 통한 VR 콘텐츠 저작도구 평가 및 검증
본 논문에서 VR 콘텐츠 전용 저작도구 구현을 위한 필수적 기능과 구현 방법에 대해 제안하였다. 이를 통해 구현된 저작도구를 기존의 유니티, 언리얼엔진 4 그리고 3D MAX와 부분적으로 비교하였다. 도구 사이의 비교는 개발 업무에 종사 중인 10인을 대상으로 Table 2에 나타낸 5가지 항목을 질문하여 본 에티터의 장단점을 확인하였다. 스토리를 반영할 수 있는 유연성, 중첩 애니메이션 생성 기능, 컴퓨터 언어의 사용이 필수가 아니라는 점에서 본 논문의 저작도구가 우수하지만 UI의 직관성에서는 다른 도구들과 비슷한 수준으로 어렵다는 응답을 들을 수 있었다. 그러나 VR 콘텐츠의 개발이라는 측면에서 가장 편리하다는 점이 제일 큰 장점이라 할 수 있다.
Table 2. Comparison between Contents Writing(Editing) Tools
4. 결론
VR 기술은 주목을 많이 받던 기술로써 현재는 4차산업 혁명의 중심 기술이 되었다. 최근에는 5G 기술과 융합하여 고용량 VR 콘텐츠를 스마트폰에 제공할 수 있게 되면서 적용 분야를 확장하고 있다. 그러나 현시점에서 VR 하드웨어 기술과 시장 규모에 비해 VR 콘텐츠의 시장 규모는 상대적으로 크게 부족하다. 본 논문에서는 VR 콘텐츠 개발의 생산성을 높이고 콘텐츠 유형의 편중을 해결하는 데 도움이 되고자 스토리텔링 반영을 위한 정교한 타임라인 기반 VR 콘텐츠 전용 저작도구의 구현 방법을 제안하였다. 본 논문을 통해 크게 두 가지를 결론을 얻을 수 있는데 첫 번째는 VR 콘텐츠 전용 저작도구에 필수적인 기술의 제안과 구현 결과의 확인이고, 두번째는 제안한 저작도구와 VR 콘텐츠 생성이 가능한 다른 도구와의 비교를 통해 장단점을 확인할 수 있다.
1) 본 논문에서 제안한 VR 콘텐츠 전용 저작도구를 위한 기술은 크게 4가지이다.
첫째, VR 콘텐츠 저작도구를 구성하는 주요 모듈의 구현 방법을 제시하였다. 본 논문의 저작도구에서 가장 중요한 부분은 시뮬레이션과 유사하게 타임라인을 중심으로 각종 객체가 할당되고 지정된 동작을 할 수 있도록 하는 것으로써 이를 충실하게 구현하였다. 둘째, HMD와 같은 장비를 이용하면서 3차원 좌표 기반의 VR 콘텐츠 특성에 맞춰 더욱 편리하게 VR 콘텐츠를 개발할 수 있도록 편집 특성을 고려한 사용자 인터페이스 구현 방법에 대해서도 제안하였다. 셋째, 다양한 스토리를 반영할 수 있는 수단으로 다양한 동작을 쉽게 생성할 수 있는 중첩 애니메이션 생성 기법도 제안하였다. 몇 종류의 기본 동작을 생성하고 이를 신체 부위별로 적용시켜 매우 많은 숫자의 응용 동작을 생성할 수 있도록 저작도구를 구현하였다. 마지막으로 VR 콘텐츠에 사용될 음성 생성 및 적용 방법에 대해 제안하고, VR 콘텐츠의 특성에 맞춘 히스토리 기능의 구현 방법도 상세히 기술하였다.
2) 제안한 저작도구와 VR 콘텐츠 제작이 가능한 유니티 및 언리얼 엔진 4, 그리고 3D 객체 모델링용인 3D MAX와 5가지 항목에서 비교하였다. 다양한 스토리와 애니메이션을 생성할 수 있는 유연성과 편의성, 그리고 VR 콘텐츠 개발 전용이라는 점에서는 제안한 저작도구가 우수하나 UI의 직관성이나 사용성에서는 적응 기간이 필요할 정도로 어렵다는 응답을 들어 UI의 개선은 추가적으로 필요한 것으로 보인다.
두 가지의 결론을 보면 제안한 VR 콘텐츠 저작도구는 VR 콘텐츠의 특성을 고려한 각종 편의 기능과 유연성을 가지고 있어 콘텐츠 개발의 생산성을 높일 수 있을 것으로 예측되며, VR 콘텐츠의 종류와 수를 증가시키는데 일조할 수 있을 것이다. 향후 과제는 VR 콘텐츠 저작도구 기능의 고도화, UI의 개선, 그리고 저작도구 내에서 사용되는 각종 객체의 질을 상승시켜 상용화까지 가능한 저작도구로 개발하는 것이다.
References
- B.Y. Jung, Virtual Reality Ecosystem Status and Implications, Information and Communication Broadcasting Policy, KISDI, 621, 2016.
- H. K. Park, Current Status and Trend of Virtual Reality Industry in Healthcare, Convergence Research Policy Center, KHIDI, 150, 2019.
- J.Y. Hyun, Virtual reality technology trend in medical field, Weekly Technology Trend, ITFIND, 1751, 2016.
- U.Y. Yang and H. G. Kim, Trends of VR/ AR Wearable Display Technology, Electronic Communication Trend Analysis, ETRI, 160, 2016.
- J.S. Lee, S.H. Lim and S.J. Lee, An Activity Contents Technology Trend Based on Virtual Reality, Electronic Communication Trend Analysis, ETRI, 135, 2012.
- Be Fearless; Samsung Electronics Co, http://www.etnews.com/20160307000228 (accessed March 30, 2018).
- Virtual Iraq v2 program, https://www.jba.af.mil (accessed July 2, 2018).
- H. H, Jo, Case Study of Content Production Using Wearable Device and Action Cam, Contents Issue Analysis II, 42, 2015.
- Statista, Virtual Reality Head Mounted Displays (HMD) unit sales Worldwide from 2014 to 2018", Statista Reports, r2016a, 2016.
- VR Market Status and Marketing Utilization, https://platum.kr/archives/77302 (accessed July 29, 2016).
- Y.M. Lee and J.K. Lee, “Development of Anxiety Measuring App and VR System for Panic Disorder Exposure Training,” Korea Institute of Information Scientists and Engineers Transactions on Computing Practices, Vol. 24, No. 5, pp. 227-233, 2018.
- U.G Kim and S.W. Seo, “Construction of Cubic Panoramic Image for Realistic Virtual Reality Contents,” The Korea Contents Association, Vol. 4, No. 1, pp. 431-435, 2006.
- Stitching Technology for Video Linkages Determines VR Quality, https://www.techm.kr/news/articleView.html?idxno=1948 (accessed April 9, 2017).
- Unity, https://unity3d.com/kr (accessed December 11, 2019).
- UnReal Engine 4, https://www.unrealengine.com/ko (accessed December 11, 2019).
- M. J. Kim, AR/VR Content Trends, Weekly Technology Trends, IITP, 1882, 2019.
- Namo 360 Editor, https://www.namoeditor.co.kr/cool_timeline/ (accessed August 22, 2017).
- B.W. Jeon and M.C. Cha, “VR & Changes in Cinematic Storytelling Focusing on Film Composition Unit, Montage, Space, Mise-enscne and Perspective,” Journal of Korea Multimedia Society, Vol. 21, No. 8, pp. 991-1001, 2018. https://doi.org/10.9717/kmms.2018.21.8.991