베가프라임 엔진상에서 다중입력장치 호환을 위한 랩퍼 클래스 개발

Development of wrapper class for compatibility of Multi Input Device in Vega Prime$^{TM}$ engine

  • 김광태 (동서대학교 인터넷공학부 멀티미디어 공학과) ;
  • 신현실 (동서대학교 소프트웨어 대학원 유비쿼터스 네트워크공학과) ;
  • 박현우 (동서대학교 지역기술혁신센터) ;
  • 이동훈 (동서대학교 디지털콘텐츠학부 디지털 VR) ;
  • 윤태수 (동서대학교 디지털콘텐츠학부 디지털 VR)
  • 발행 : 2006.02.13

초록

VR 엔진은 일부 입력장치에 대해서만 제한적으로 지원하기 때문에, 개발자가 원하는 입력장치를 사용하지 못하는 경우가 있으며, 가격 또한 고가이기 때문에 특수한 입력장치를 사용하기 위해, 다른 VR 엔진이나 별도의 옵션을 구매하기에는 경제적인 부담이 많이 든다. 이러한 문제를 해결하기 위해 본 논문에서는 개발자가 사용하고자 하는 입력장치와 VR 엔진의 호환을 위한 랩퍼 클래스를 제안한다. 개발한 랩퍼 클래스는 VR 엔진에서 조이스틱을 제어할 수 있는 조이스틱 클래스와 USB 캠을 통하여 영상을 획득하기 위한 USB 캠 클래스이다. 조이스틱 클래스는 입력장치 클래스를 상속받은 후 DirectX 를 이용하여 입력장치를 셋업 하고, 입력장치의 데이터 값을 처리한 후 VR 엔진의 API 로 값을 넘겨주기 전에 후킹하여 조이스틱을 제어할 수 있다. USB 캠 클래스는 VFW(Video for Window)를 사용하여 캠의 영상을 획득하여 버퍼에 저장한 후 VR 엔진의 디스플레이 버퍼에 값을 넘겨서 캠의 영상을 VR 엔진에서 디스플레이 할 수 있다. 이러한 방법을 통해 조이스틱, USB 캠 같은 입력장치를 VR 엔진과 호환할 수 있으며, 다른 종류의 입력장치에 대하여서도 본 연구에서 개발한 랩퍼 클래스를 상속받아 사용할 수 있다. 본 논문에서 사용한 VR 엔진은 Vega Prime 엔진이며, Vega Prime 엔진의 API 에 개발한 랩퍼 클래스를 추가하여 드라이빙, 영상인식 시뮬레이터를 개발한 결과, 효과적이고 경제적으로 입력장치의 연동이 가능함을 확인할 수 있었다.

키워드