자바 기반 휴대용 임베디드 기기의 삼차원 엔진 성능 향상을 위한 바인딩 구현

휴대용 임베디드 기기에서의 삼차원 엔진은 크게 바이트 코드를 실시간으로 해석하여 실행하는 자바 기반의 JSR184와 C언어 기반의 OpenGL/ES가 있다. 이들 두 표준에서 자바 객체를 지원하는 JSR184는 OpenGL/ES에 비하여 상대적으로 많은 프로세서의 자원을 사용하여 제한된 연산능력을 보유하고 있는 임베디드 기기에 적용할 경우 제약이 따를 수 밖에 없다. 반면에 기존 개인용 컴퓨팅 환경에서 사용되는 삼차원 컨텐츠는 자바의 장점을 이용하여 제작되었기 때문에 유럽에서 많은 사용자 층을 확보하고 있고, 또한 그 컨텐츠의 품질이 우수하여 상용 통신망인 GSM 망에서 많이 서비스 되고 있다. 따라서 GSM 망에서 사용되는 휴대용 임베디드 기기에 기존의 자바 기반 삼차원 컨텐츠를 별도의 변환 과정 없이 지원할 수 있는 JSR184의 지원이 필요하지만, 현재 개발되어 사용되는 자바 기반 삼차원 엔진은 휴대용 기기가 보유한 연산능력에 비하여 상대적으로 많은 연산량을 필요로 하기 때문에 상용제품에 적용하기에 많은 어려움이 따른다. 본 논문에서는 휴대용 임베디드 기기가 가지고 있는 충분하지 않은 연산능력을 바탕으로 자바 객체의 장점을 수용하면서 삼차원 컨텐츠의 처리속도를 향상 시킬 수 있는 바인딩 기법을 제안하였다. 제안된 바인딩 기법은 자바를 이용한 삼차원 컨텐츠를 지원하기 위하여, JSR184의 표준 인터페이스를 상위 계층에서 지원하고, OpenGL/ES와 JSR184를 서로 연결하기 위하여 이기종 코드 변환 언어인 KNI(Kilo Native Interface)를 중간 계층에서 사용하였고, 하위 계층에서 OpenGL/ES의 표준을 구현하였다. 제안하는 바인딩 기법은 모의 실험을 통하여 기능을 검증하였고, ARM을 장착한 FPGA를 사용하여 그 성능을 평가하였다.