1. 서론
가상현실(VR)의 개념이 제안된 이후로 많은 연구자는 물리적제 약이 없는 가상 환경에서 그림을 그리고자 하는 다양한 노력을 해왔다. 가상 공간에서의 페인팅은 현실공간의 페인팅과 달리 캔 버스의 크기 및 페인팅 재료 등의 물리적인 제한을 받지 않고 그 림을 그릴 수 있다는 장점이 있기 때문이다. 더불어 작업 환경이 2차원 평면에서 3차원 공간으로 확장되면서 사람들은 원근감을 표현하기 위해 원근투사를 이용한 간접적인 방법을 사용하는 대 신에 공간을이용하여 깊이감이있는 그림을 직접적으로 표현할 수 있게 되었다.
최근 들어 HTC사의 바이브(Vive)와오큘러스(Oculus) 사의 리 프트(Rift) 등 높은 품질의 헤드 마운트 디스플레이(HMD)가 대 중들에게 보급되면서 VR을 경험할 기회가 더욱 확산되었으며 이러한 하드웨어에 대응하는 VR 소프트웨어 또한 다수 등장하 고 있다. 그중 틸트 브러시(Tilt Brush) [1], 퀼(Quill) [2], 캔복스 (Canvox) [3] 등의 페인팅 소프트웨어들이 VR 페인팅 경험을 지 원한다.
이와 같이 다양한 기기들이 VR 상에서 그림을 그리는데 필요 한 환경을 제공하지만, 3D 공간 상에 그림을 그리는 것은 쉽지 않다. 이는 딱딱한 평면 캔버스 위에 2차원 그림을 그리는 것과 달리 물리적 매개체 혹은 상호작용 없이 허공에 그림을 그려야 하는 VR 페인팅의 특성 때문이다. 물리적인 피드백의 부재는 사 용자가 그림을 의도대로 그리게 어렵게 만들고 [4], 시각적 피드 백에만 의존하게 만든다. 더불어 가상 환경에서 사용자가 시각 적으로 인지하는 깊이감은 실제 페인팅 객체들 간의 깊이와 일 치하지 않을 가능성이 높다 [5]. 잘못 인지된 깊이감은 사용자가 그리는 브러시 스트로크의 결과에도 영향을 줄 수 있다. 따라서 사용자는 잘못된 스트로크의 시작 지점이나 부적절한 깊이로 그 려진 작업물로 인해 페인팅을 수정하는 작업을 반복해야 하고, 이는 사용자의 전체적인 생산성과 페인팅 결과물의 수준을 감소 시킨다.
이러한 단점을 극복하는데 주요한해결책 중 하나로 햅틱을 활 용한 연구들이 진행됐다. 그 중 Bouguila 등 [6]과, Sallnäs 등 [7]에 따르면, 가상 환경에서의 적절한햅틱 반응과 포스 피드백은 거리 측정 문제를 극복하고 깊이 인식을 개선할 수 있다. 따라서 햅틱 인터랙션을 활용하여 가상 환경 안에서 시각적 피드백을 보완하 고, 깊이감이나 상대 거리를 포함한 요소들을 고려하여 페인팅을 표현하는 연구가 필요하다고 볼 수 있다.
본 논문에서는 효과적인 VR 페인팅을 위하여 포스 피드백을 사용한햅틱 인터페이스를 제안한다. 제안한 인터페이스는 시각 적으로만 표현되던 깊이 단서를 페널티 기반으로 계산한 물리적 인 탄성력을 포스 피드백으로 제공하여 촉각적 피드백이 부재한 기존의 페인팅 캔버스를 개선하였다. 이를 활용하여, 사용자는 더 효율적이고 실감나는 VR 페인팅을 경험할 수 있다.
2. 관련 연구
VR 기기의 보급 이전부터, 연구자들은 가상 공간에서 그림을 그 릴 수 있는 시스템에 대한 연구를 진행해왔다. 더불어 가상 공간 에서 그림을 그리기 위한 도구 또한 다양하게 사용되었으며 햅 틱을 사용한 페인팅 시스템, 촉각적인 도구를 사용한 프리핸드 페인팅 시스템 등의 연구 또한 진행되어왔다.
Sachs 등 [8]은 CAD 모델링 시스템을 2차원에서 3차원으로 확 장한 3-Draw System에서 6 자유도 센서와 스타일러스를 활용한 양손 기법 햅틱 인터페이스를 제시하였다. 그 후, Snibbe 등 [9] 은 리본 형태와 양감이 있는 질량을 비물리적 기반의 동적 햅틱 모델로 그리는 예를 보여주었다. Keefe 등 [10]은 3차원 일러스트 레이션 드로잉을 개선할 수 있는 입력 기술을 제안하였다. 양손 을 사용하는 테이프 드로잉 기법을 구현한 이 시스템은 마찰력과 점성에 따른 포스 피드백을 제공함으로써 그 전까지 섬세하게 조작하는 데 어려움이 있던 3차원 모델링 시스템을 개선하였다. Baxter 등 [11]이 제안한 dAb 시스템은 3차원 가상 브러시 모델 을 구현하면서 2차원 평면에서의 브러시 모델과 캔버스 사이의 반력을 계산하여 현실적인 페인팅 경험을 제공하였다.
이 외에도, 실감나는 VR 페인팅 경험을위해 실제의 붓이나 도 구들을 모방한 인터페이스를 사용한 연구들이 있다. Keefe 등의 CavePainting [12], Schkolne 등의 Surface Drawing [13] 그리고 Wesche와 Seidel의 FreeDrawer [14] 은 사용자가 실제로 쥐고 그 림을 그릴 수 있는 촉각적이고 물리적인인터페이스를 구성하였 으며 VR을 경험하지 않은 사용자들도 직관적이고 쉽게 그림을 그릴 수 있는 환경을 제시하였다.
그러나 위와 연구들은 3D 모델링 작업과정의 효율을 향상시 키는 것이 주목적이거나 오직 시각적인 피드백만을 지원한다는 한계점이 있다. 이에 비해 본 연구에서는 예술적 페인팅 환경을 지원하는 가상 환경에서 페인팅 상호작용을 효율적으로 구현하 기 위한햅틱 피드백을 지원하는데 초점을 맞추고 있다.
가상 환경에서의 깊이인식을위해 이를 정량적으로 측정하고 한 계점을 극복하려는 연구들이있었다. Lampton 등 [5]과 Witmer와 kline [15]은 가상 환경에서의 거리 측정 능력을 평가하는 연구를 진행했으며 두 연구 모두 가상 환경에서의 거리 인식은 대체로 현실에서보다 부정확하다는 결론을 내렸다. Schmidt 등 [16] 과 Arora 등 [4]은이를 드로잉 영역으로 확장하여 가상 환경에서의 드로잉 능력을 평가하는 연구를 통해 깊이 인식이 그림을 그리 는 데 영향을 미친다는 결과를 보여주었다. 이러한 연구들을 바 탕으로 가상 환경 및 이를 활용한 시스템에서 발생하는 깊이 및 거리 인식 오류를 극복하기 위한 다양한 시도들이 있었다. 그 중 Bouguila 등 [6]과 Sallnäs 등 [7]은 햅틱과 포스 피드백으로 해 당 문제를 개선하고자 하는 실험을 진행하였고, 결과적으로 가상 환경에서 햅틱 피드백의 활용은 공간 인식 능력과 과제 수행 능 력을 향상한다는 결론을 지었다. 페인팅 작업과 관련한 연구로는 Machuca 등 [17]의 Multiplanes 시스템이 있다. 해당 연구에서는 자동적으로 생성되는 평면과 시각적 가이드를 활용하여 VR 페 인팅 과정에서 발생하는 시각적 깊이 오류를 해결하고자 했다.
이와 같이 다양한 선행 연구들이 진행되었지만, 햅틱을이용한 VR 페인팅 환경의 사용자 경험을 향상하려는 연구는 진행되지 않았다. 본 연구에서는 VR 페인팅 환경의 공간 인식 문제를 개 선하기 위해 포스 피드백을 제공하는 햅틱 모델을 제안한다. 본 연구의 예비 초록판 [18]에는 본 연구의 초기 아이디어가 제안 되었으나, 가상 평면 모드, 페인팅 질감 표현 햅틱 모델, 페인팅 팔레트 등의 사용자인터페이스 연구는 제시되어 있지 않았다.
3. 반응형 햅틱 VR 페인팅 시스템
본 연구에서 제안하는 시스템은 크게 햅틱 모듈과 페인팅 모듈로 구성되어 있다(Figure 1). 우선 햅틱 모듈은 햅틱 스타일러스 펜의 버튼 입력 및 움직임을 바탕으로 햅틱 렌더링에 의해 계산된 햅틱 포스를 출력한다. 페인팅 모듈은 햅틱 인터페이스의 위치 및 사 용자입력을이용하여 가상 공간에 표면기반 페인팅 스트로크를 메쉬 스트립 형태로 생성한다. 또한 해당하는 브러쉬 텍스처로 페인팅 스트로크의 다양한 질감을 렌더링한다. 이때 생성된 메쉬 스트립은 햅틱 모듈과의 상호작용 시 햅틱 렌더링을위한 충돌정 보를 생성하는 데 이용된다.
본 연구에서 제안하는 VR 페인팅 시스템은 표면기반의 삼각 메쉬스트립으로 페인팅 스트로크를 표현한다. 사용자는 스타일 러스 타입 햅틱 디바이스를 주 도구로써 사용하여 3D 공간상에 메쉬스트립을 생성하기 위한 펜의 궤적을 만든다.
Figure 3은 메쉬 스트립 생성과 텍스처 매핑까지의 과정을 간 략화한 그림이다. 페인팅 메쉬 스트립을 생성하기 위해서 우선 메쉬 정점의 위치를 스타일러스 펜의 위치(회색)와 브러시 크기 에 따라 결정한다. 이에 따라 정점의 위치는 펜이 이동하는 궤 적의 접선 방향으로 브러시 크기의 반만큼 떨어진 두 점(적, 록) 이 된다. 그 후 펜의 궤적을 따라 생성된 정점들의 집합(청, 백) 은 반시계방향으로 정점 버퍼에 저장된다. 동시에 인접한 정점들 간의 방향 벡터로부터 법선 벡터를 계산하여 정점 버퍼에 함께 저장한다.
이후, 페인팅 질감을 표현하는 텍스처를 생성된 메쉬스트립에 매핑한다. 사용자의 입력이 들어오는 동안 메쉬스트립 단면이 연 장됨과 동시에 텍스처 매핑이 이루어진다. 이 때 연장된 단면에 새로운 텍스처 사용 시 텍스처가 끊어져 보이는 현상이 생길 수 있으므로 UV의 좌표값을 갱신해야한다. 각 정점의 UV 텍스쳐 좌표값은 궤적에 따라 늘어나는 메쉬스트립의 단면 개수에 의해 갱신된다. 즉, 메쉬 단면 개수(N)를 제수로 이용하여 각 정점의 UV 좌표값을 계산한다.
사용자는 페인팅에 필요한 보조 기능들을 왼손으로 조작하는 HMD 컨트롤러와의 상호작용으로 실행할 수 있다. 보조 기능의 종류에는 햅틱 모드 활성화 및 스트로크 사이즈 선택, 되돌리기 (undo), 그리고 VR공간 안에서의 카메라 시점변환과 이동 등이 있다. 또한 페인팅팔레트(Figure 4)는 HMD 컨트롤러와 함께 움 직이는데, 사용자는 햅틱 스타일러스를 통해 페인팅팔레트에서 컬러 선택, 질감 텍스처 변경 등을 활성화해 페인팅에 적용할 수 있다.
본 논문에서는 시각적 피드백에만 의존하는 기존 VR 페인팅 시 스템의 한계점을 극복하기 위해 포스 피드백 기반의 세 가지 햅틱 페인팅 모드를 제안한다.
Figure 5는 사용자의 스타일러스 위치와 사용자가 선택한 스트로 크 메쉬에 고정된 지점 사이의 거리에 비례하여 탄성 햅틱 피드백 을 제공하는 방식인 고정 드로잉 모드를 나타낸다. 이 햅틱 모델 은이미 그려진 표면과 햅틱 스타일러스 간의 상대 깊이를 탄성력 으로 표현하여 사용자가 이를 촉각으로 감지하도록 한다(Figure 5-(a)). 사용자가 그려진 페인팅 메쉬 위에 햅틱 인터페이스를 겹 쳐 고정 모드를 실행하면 이 모드는 조작하고 있는 스타일러스와 메쉬 사이에 작용하는 탄성력()을 렌더링한다. 탄성력의 크기 (||)는 페인팅 메쉬로부터 거리(||)에 비례하고 햅틱 커서에서 메쉬로 향하는 힘이 가해진다(Figure 5-(b)). 이를 이용하여 사용 자는 메쉬 위 고정점과 현재 브러쉬 커서 사이의 상대적 깊이 및 거리감을육안으로 확인함과 동시에 물리적인 힘으로 인지할 수있다.
고정 드로잉 모드를 통해 사용자는 가상 환경의 깊이감을 눈으로만 가늠하던 상황에 비해 상대적 위치를 더욱 직관적으로 느낄 수 있다. 이를 활용하여 HMD를 착용한 뒤 몸을 움직여 상대 거리를 눈으로 직접 확인하는 방식보다 간편하고 빠르게 그림을 그릴 수 있다. 또한 해당 모드 상에서 사용자는 새로운 스트로크 의 시작지점을이전 스트로크의위치와 동일하게 설정하는 것이 가능하다. 따라서 본 시스템은 연속적인 페인팅 작업에 대한 사 용자의 의도에 즉각적으로 반응할 수 있다.
Arora 등 [4]은 가상 환경에서의 드로잉 능력을 측정하는 연구 에서 물리적 표면의 존재 유무가 VR 드로잉의 정확도에 영향을 미친다는 결론을 내렸다. 해당 실험에서 물리적인 표면 위에서 그린 그림의 정확도는 안내선 없이 공중에서 그린 그림의 정확 도보다 약 22% 높았다. 또한 그들은 스트로크 사이에 자동적으 로 형성되는 불투명 평면을 이용하여 깊이 인식 오류를 개선할 수 있다고 주장하였다. 이를 바탕으로, 본 시스템에서는 페널티 힘기반으로 캔버스 표면을 시뮬레이션하는 가상 평면모드를 제 안한다(Figure 6-(a)). 제안하는 모드를 통해 불투명 평면을 활용 하여 사용자의 깊이 인식을 개선하고, 3차원 가상 환경에서도 2 차원 평면의장점을 활용할 수 있다.
이 모드는 물리적 캔버스를 모방하여 사용자가 스트로크를 그리는 동안 가상 캔버스와 페인트 브러시와 일관된 접촉을유지할 수 있도록 돕는다. 이를 이용해 사용자는 드로잉 평면이 주는 고 정된 방향의 힘 덕분에 평면의 범위 안에서 깊이가 일정한 스트로 크를 그릴 수 있다. 또한, 페인팅 스트로크의 시작과 끝을 동일한 깊이로 정의할 수 있으므로 드로잉의 정확성을 향상시킬 수 있 으며 깊이 인식을 위해 시각적으로 집중하지 않고도 오류 없는 결과물을 기대할 수 있다.
이 모드에서 사용되는 가상 드로잉 평면은 불투명하게 표현 되는 정방형의 평면 오브젝트이다. 가상 평면의 초기 위치는 햅 틱 인터페이스의 말단이며 법선 방향은 평면에서 햅틱 인터페이 스로 향하는 방향으로 결정된다. 사용자는 이 모드를 활성화 후 햅틱 인터페이스를 움직여 평면의 위치를 자유롭게 가상 공간 임의의 위치에 고정시킬 수 있다. 더불어, 반투명한 평면은 멀리 있는 스트로크와 가까이있는 스트로크들을 다른 색으로 표현하 기 때문에 사용자의 공간 인지력을 시각적으로 향상시킬 수 있다 (Figure 7). 드로잉 평면이 활성화되면, 시스템은 가상 드로잉 평 면과 햅틱 인터페이스의위치(C)를 이용하여 햅틱 인터페이스의 평면에 대한 침투 깊이(penetration depth)를 구한다(Figure 6-(b)). 이 침투 깊이 결과에 의하여 식 1과같이 햅틱 반력의 크기 fmag는 페널티 기반에 의해 결정된다. 캔버스 평면의 경곗값에서 발생할 수 있는 반력의 떨림을 줄이기 위해 지수함수를 사용하였다.
여기서 d는 침투 깊이를 나타내며 이는 햅틱 인터페이스로 향하 는 방향벡터를 가상 평면의 법선 뱡향으로 정사영을 내린 것으 로 계산되며, e0, c0는 햅틱 스타일러스의 강도(stiffness)와 관련 된 상수로 본 연구에서는 각각 2와 2.5로 지정하였다. 마지막으로 햅틱 반력의 방향(F)은 평면의 법선 벡터의 방향으로 결정된다 (Figure 6-(b)).
현실에서 페인팅 재료는 점도가 각기 다를 수 있으며, 이로부터 의 촉각반응 또한 페인팅 경험의 중요한 구성 요소이다. 따라서 본 VR 페인팅 시스템에서는 각각의 스트로크 텍스처에 서로 다 른 점성 계수를 지정하고 이를 바탕으로 구별되는 운동 마찰력을 계산하여 다양한 텍스처 타입의 브러쉬 스트로크를 구현하였다 (Figure 8). 즉, 사용자가 페인팅 스트로크를 그리기 시작하면 햅 틱 시스템은 각 텍스처의 점도(viscosity, µ)를 반영하여 햅틱 인 터페이스가 이동하는 방향(vt)의 반대방향으로 운동 마찰력 ft를 가한다.
본 모드를 통해, 페인팅 질감을 햅틱 반응으로 표현함으로써 실제의 페인팅 경험을 가상 공간에서도 경험할 수 있는 결과를 기대할 수 있다. 더불어 페인팅 스트로크의 진행 반대 방향의 힘 이 사용자의 손떨림을 보정하고 펜의 움직임을 안정화하여 더 나은 페인팅 결과물을 생성할 수 있다.
4. 구현 및 결과
논문에서 제시된 햅틱 페인팅 시스템은 AMD Ryzen 7 3.70Hz CPU 및 16GB의 메인 메모리, NVIDIA GeForce GTX 1070 Ti가 설치된 PC환경과, 햅틱 디바이스로는 3DSystems 사의 Touch[20] 를 사용하여 구현하였다. 더불어 HMD로써는 Vive를 사용하여 VR환경을 구성하였고, 언리얼 엔진(Unreal Engine)을 기반으로 그래피컬 렌더링을 구현하였다. 또한 햅틱 렌더링을 위해 Open-Haptics 및 언리얼 엔진과의 연동을 구현한 Rüdel 등 [21]의 UnrealHaptic 플러그인을 사용하였다.
제안한 햅틱 인터페이스로 VR 페인팅 작업을 수행한 결과는 다 음과같다(Figures 10, 11, 12). 사용자는 고정 드로잉 모드를 통해 햅틱 스타일러스와 페인팅 스트로크와의 상대적 거리를 촉각적 으로 인지하여 그림을 그릴 수 있었다. 이를 통해 Figure 10 - (c) 의 꽃잎과 잎맥을 표현할 때 꽃과 이파리를 이루는 스트로크 간 의 거리와 높이가 상이하지 않고 적절히 연결된 결과물을 얻을 수 있었다. 가상 평면모드는 도로와 수면, 빌딩 건물의 외내벽 등 평평한 면을 표현할 때 특히 활용도가 높았으며 바닥의 목재 및 문의 장식 등을 표현하는 데에도 도움을 주었다(Figure 10 - (d), Figure 11, Figure 12). 두 가지 햅틱 모드 모두 시각적으로 파악하 기 어려운 공간적 깊이감을 물리적 햅틱 반응으로 보완해주었다. 따라서 사용자는 시각적 부담감을 경감할 수 있었고 보다 가시 적으로 보기좋은 페인팅 결과물을 생성해낼 수 있었다. 동시에 페인팅을 진행하는 동안 사용자는 네 가지 종류의 텍스처 스트로 크를 사용하여 각각의 질감에 따라 다른마찰력을 경험하였는데, 이는 건물 외벽이나 수면과 물체 고유의 질감을 표현하는 데 도움을 주었다. 그리고 사용자의 손떨림이나 지나치게 민감한 펜의 움직임을 보정하는 효과도 얻을 수 있었다.
본 연구에서는 사용자 평가를 통하여 참여자의 사용 행태를 관 찰하고 시스템의 사용성에 대한 피드백을 수집하였다. 평가 참 여자로 만 22세부터 만 29세 사이의 여성 6명과 남성 1명, 총 7 명이 참가하였다. 실험 진행은 각 참가자에게 HMD를 착용한 뒤 본 시스템을 통해 평면상의 원을 그리는 것과 3차원 형태의 집 모양을 그리는 두 가지 수행 과제를 요청하였으며, 이는 햅틱 모 드 사용의 여부 별로 각 1회씩 실행되었다. 이후, 참여자들은 7 점 척도 사용자 평가지에 답변하고 인터뷰를 수행하였다. 사용자 평가지는 표준 사용자 경험 설문지인 User Experience Question-naires(UEQs) [22]와 가상 환경에서의 실재감을 평가하는 설문지 인 Witmer와 Singer [23]의 Presence Questionnaires를 기반으로 작성되었다. 또한, 본 시스템을 통한햅틱 경험에 대한 설문 내용 을 보충하기 위해서 관련 질문(Table 1)을 수정 및 추가하였다.
Figure 9는 Table 1의 7첨 적도 문항의 결과를 보여준다. 설문 결과를 통해 제안한 햅틱 인터페이스의 사용이 VR 페인팅 작업 을 수행하는데 긍정적인 역할을 했음을 확인하였다. 특히 사용자 들은 평균 6.14의 값으로 햅틱 사용 여부에 따른 결과물들 사이에 눈에 띄는 차이가 있다고 응답하였다.
대다수의 참여자는 햅틱 인터페이스의 사용이 가상 공간에서 깊이 또는 거리감을 파악하는 데 도움이 되었다고 대답하였다. 구체적으로는 고정 드로잉 모드 및 가상 평면 모드에서의 햅틱 반력이 공간적 기준점으로 활용되어 페인팅 조작에 유용하다는 공통된 의견을 확인하였다. 반면에 햅틱 인터페이스를 사용하지 않았을 때는 잘못된 거리감에 따른 시각적 괴리감으로 인해 요청 작업을 수행하는 데 어려움을 겪었다고 대답하였다. 햅틱 반응 여 부의 페인팅 결과에 관해서는 대부분의 경우 햅틱 인터페이스를 활용했을 때의 페인팅 결과물이 더 가시적으로 보기가 좋았다고 응답하였다. 몇몇 사용자들은 햅틱 스타일러스의 각도 조작의 한 계, 햅틱 디바이스 본체와의 부딪힘 등을 불편사항으로 응답하였 고가상 환경 내에서의이동 조작법을 개선사항으로 지적하였다. 아래는 실험 참가자의 응답 중 한 예이다.
5. 결론 및 향후 연구
본 연구에서는 사용자와 페인팅 사이의 포스 피드백을 제공하는 햅틱 인터페이스를 이용한 VR 페인팅 시스템을 제시하였다. 세 가지 포스 피드백 모드를 적용한 본 시스템은 시각적 피드백의의 존성을 줄이고 깊이감을 느낄 수 있는 촉각적인 반응을 제공한다. 페인팅 요소와의 상호작용을 통한 물리적 촉각반응으로 시각에 의한 상대적 공간 감각의 오류를 줄이고 사실감 있는 VR 페인팅 경험을 제공하며 그 결과, 사용자의 VR 페인팅 경험을 향상시키 는 결과를 가져다주었다.
본 연구에서 사용한햅틱 디바이스는 최대 이동 및 회전 반경이 고정된 스타일러스 타입으로써 그림을 그릴 수 있는 작업 환경의 제한이 있다. 더불어 데스크톱 기반 장치를 사용함으로써 현실 공간을 가상 환경의 공간 만큼 활용하지 못하는 한계점이 있다. 향후 과제로 이러한 공간적 한계를 개선하기 위해 모바일 햅틱에 관한 연구와 이에 따른 정량적 평가를 계획 중에 있다.