웹 환경에서 가상현실 콘텐츠 제작을 위한
편집 도구

Web 환경, 즉 브라우저 기반 환경에서의 VR 콘텐츠 편집 도구 개발 및 연구

필요성
법령 교육을 위한 가상현실 기반 콘텐츠의 경우, 법 개정에 따른 부분적인 수정이 요구되는 상황이 발생합니다.
이미 제작되어진 VR 콘텐츠는 개발 저작 도구에서 빌드되어 실행 파일로 제공되기 때문에 부분적으로 수정하려면 제작 업체를 통해 수정하거나 개발 도구를 직접 다루어 수정해야 합니다. 또한 교육 커리큘럼에 따라 콘텐츠의 진행 순서를 변경해야 하는 상황이 발생하지만 이를 수정하기에는 전문 인력을 제외하고는 수정이 어렵습니다.
따라서, Web 환경 즉, 브라우저 기반의 가상현실 콘텐츠 제작을 위해서 사실적인 환경을 표현하는 3D mesh의 렌더링 환경 및 상호작용 배치, 다양한 음성 기반 안내·유도, 주요 정보 가시화, 그리고 음향 설정이 지원되어야 하며, 사용자가 직접 VR 콘텐츠를 수정할 수 있도록 사용자 편의성이 고려된 UI/UX를 적용한 편집 도구를 개발·연구하였습니다.
● 체험형 가상현실 콘텐츠는 제작이 완료된 완제품 형태로 제공되기 때문에 법 개정 및 교육 커리큘럼 변화에 능동적으로 대처하기가 어려움. | | ● VR 콘텐츠를 개발할 때 사용자가 직접 편집이 가능한 프로그램을 이용하여 제작하고 배포한다면, 법령이 개정되었을 때 사용자들이 능동적이고 즉각적으로 반영할 수 있음. |
|

| 
|
|
현재 |
| 기대효과 |
|

연구 방법
- Web 환경에서 실행되는 VR 콘텐츠의 편집 및 VR 실행을 위해서는 Web 환경에서의 3D 데이터를 렌더링 하는 방식이 첫 번째로 필요한 기술입니다.
- 기본적으로 Web 환경에서 3D 데이터를 렌더링 하기 위한 방식으로는 WebGL기반의 렌더링 방식과 HTML기반 three, js에 확장 가능한 구조를 제공하는 A-Frame을 적용하고자 합니다.

|
| WebGL 렌더링 파이프라인 |
|
- VR 콘텐츠의 실행과 편집의 기능을 분리 하기 위해 로그인 기능을 적용하여 권한 설정을 지원하도록 구성하며, 각 접속 권한에 따라 VR 콘텐츠를 체험기능과 VR 콘텐츠를 편집하는 기능으로 분류합니다.
- VR 콘텐츠 체험 기능은 다양한 VR 장치를 지원하기 위해 Cross-Platform VR을 지원하며, VR 헤드셋이 없는 환경 즉 모바일 및 데스크톱에서도 VR이 가능하도록 지원하는 기술을 적용합니다.
- VR 콘텐츠 편집 기능을 적용하기 위해 React 기반의 구조로 에디터의 주요 기능을 구현하며 VR 콘텐츠에 활용되는 대용량의 3D 데이터를 동시 처리하기 위한 데이터베이스에 대해 NoSQL 환경을 적용합니다.
- 콘텐츠 편집 기능의 핵심인 시나리오 편집은 시나리오의 관리 및 생성, 호출, 삭제, 실행을 통해 VR 콘텐츠 시나리오를 운용할 수 있도록 기능을 지원해야 합니다.
- 시나리오의 3D 공간 및 형상을 배치한 씬(Scene)은 체험자의 위치 및 정보 표시를 위한 배치, 음향 설정, 상호작용 방법 설정에 대한 기능을 편집할 수 있도록 지원하고자 합니다.
- 모든 연구 방법에 적용한 기능들은 Web 환경에서 다중 접속 처리가 가능하도록 구성하여 Web 환경에서 운용 특성이 잘 구성될 수 있도록 각 지원 기능 정의하였습니다.
| 
|
|
Web 기반 VR 콘텐츠 편집 도구 구성안 |

연구 결과
- Web 환경에서 VR 콘텐츠 편집에 필요한 주요 기능으로는 접속 인원의 권한 관리를 위한 회의 기능, 생성된 시나리오 관리를 위한 기능, 신규 시나리오 생성을 위한 설정 및 씬(Scene) 구성하여 개발하였습니다.
- 회원 관리 기능은 회원의 가입 및 접속과 권한이 부여된 회원의 로그인·로그아웃을 지원하도록 세부 기능을 구현하였으며, 회원 관리를 위한 계정 및 접속 로그 관리 기능을 적용하여 접속 권한을 관리하는 기능을 개발하였습니다.

|
| 회원관리 |
|
- 생성된 시나리오는 대용량의 3D 데이터를 동시 처리하기 위해 MongoDB를 구성하였으며, 어플리케이션간 운용을 위한 REST API를 적용하였다. 기존 시나리오 데이터의 관리를 위해 삭제, 불러오기, 실행 기능을 개발하여 적용하였습니다.

|
| 시나리오 관리 |
|
- 시나리오 설정 기능은 시나리오에 포함되는 각 Scene 을 편집하기 위한 UI/UX로 구성하였으며, Scene 등록, 편집 Scene의 흐름을 확인하기 위한 이동, 확대, 축소 기능과 작업 중인 데이터 손실을 방지하기 위한 빠른 저장 기능을 구현하여 적용하였습니다.

|
| Scene 편집 기능 |
|
- 시나리오의 세부 단위인 Scene 은 등록된 3D 데이터의 미리보기와 카메라 즉 사용자 시점을 지정하기 위한 이동 및 축 회전 기능을 적용하였으며, 각 오브젝트의 정보 및 UI를 적용하기 위한 이미지 관리 기능을 적용하였습니다.
- 또한 각 Scene 과 Scene 사이의 이동을 표현하기 위한 디폴트 화살표 형상을 적용 시나리오 편집화면에서 Scene 과 Scene 을 이어주는 기능을 구현하였습니다.

|
| Scene 연결 |
|

결론
Web 환경에서의 VR은 제한된 리소스를 활용하여 다양한 VR 콘텐츠 제작 및 편집을 지원하는 편집 도구를 위한 주요 기능에 대한 정의 및 개발을 진행하였습니다. 실제 3D 데이터의 경우 이전 연구에서 진행되었던 사전 연산 렌더링 기법으로 제작된 3D Mesh 활용이 가능했으며 사전연산 렌더링 파이프의 최적화를 통해 보다 사실적인 교육 훈련 콘텐츠 생성 및 편집이 가능합니다.

| 
|
결과물 시연 |
웹 환경에서 가상현실 콘텐츠 제작을 위한
편집 도구
Web 환경, 즉 브라우저 기반 환경에서의 VR 콘텐츠 편집 도구 개발 및 연구
필요성
법령 교육을 위한 가상현실 기반 콘텐츠의 경우, 법 개정에 따른 부분적인 수정이 요구되는 상황이 발생합니다.
이미 제작되어진 VR 콘텐츠는 개발 저작 도구에서 빌드되어 실행 파일로 제공되기 때문에 부분적으로 수정하려면 제작 업체를 통해 수정하거나 개발 도구를 직접 다루어 수정해야 합니다. 또한 교육 커리큘럼에 따라 콘텐츠의 진행 순서를 변경해야 하는 상황이 발생하지만 이를 수정하기에는 전문 인력을 제외하고는 수정이 어렵습니다.
따라서, Web 환경 즉, 브라우저 기반의 가상현실 콘텐츠 제작을 위해서 사실적인 환경을 표현하는 3D mesh의 렌더링 환경 및 상호작용 배치, 다양한 음성 기반 안내·유도, 주요 정보 가시화, 그리고 음향 설정이 지원되어야 하며, 사용자가 직접 VR 콘텐츠를 수정할 수 있도록 사용자 편의성이 고려된 UI/UX를 적용한 편집 도구를 개발·연구하였습니다.
연구 방법
연구 결과
결론
Web 환경에서의 VR은 제한된 리소스를 활용하여 다양한 VR 콘텐츠 제작 및 편집을 지원하는 편집 도구를 위한 주요 기능에 대한 정의 및 개발을 진행하였습니다. 실제 3D 데이터의 경우 이전 연구에서 진행되었던 사전 연산 렌더링 기법으로 제작된 3D Mesh 활용이 가능했으며 사전연산 렌더링 파이프의 최적화를 통해 보다 사실적인 교육 훈련 콘텐츠 생성 및 편집이 가능합니다.