本文探討開放原始碼 (open source) 平台的虛擬實境 (virtual reality) 叢集系統架構,並加以實作。此架構著眼於即時處理、具可攜性、與硬體週邊的獨立性,具有成本低廉,高效率等優點,可運用在小型桌上型VR軟體、立體投影展示環境、或是多螢幕環景融入式 (CAVE immersive) 應用環境,甚至大型的模擬器。 本文所探討實作的架構中,採用了許多開放原始碼社群的研究成果。其中核心部分有二,第一個為作為VR系統開發工具的“VR Juggler”,另一個則是名為“Open Scene Graph” 的3D即時成像繪圖引擎 (Render Engine)。 VR Juggler為Iowa State University 所研發的開放原始碼虛擬實境應用程式開發架構 (development framework),目的在於提供VR應用程式開發者一組應用程式介面 (API),作為VR程式與各式各樣VR週邊的中間層。透過不同的組態設定檔,同一個VR應用程式可不經修改的在不同規模的VR硬體平台上執行。 Open Scene Graph 為一組以C++寫成之3D繪圖程式庫,專注於處理高階即時繪圖應用,如模擬機、3D即時遊戲、虛擬實境與科學視效處理等領域,其性質與功能類似於SGI的Performer軟體,自1999年公開以來,因為完成度高,性能優異,越來越受到3D繪圖界重視,亦有不少商業虛擬實境軟體採用其作為3D繪圖引擎。 我們將採用上述兩種開放原始碼之程式開發工具,實作一個可載入3D資料檔案進行導覽之VR叢集系統。 This paper discusses the construction of a virtual-reality cluster using open source software, and the implementation of a 3D navigation VR system. The system focuses on real time, portability, and hardware independence; moreover, the whole system uses free open source software. This VR cluster system can be used on desktop virtual reality system, stereo projection, or CAVE-like immersive environment. There are two open source projects were used in our implementation, one is “VR Juggler”, which was used as our VR-based system and development toolkit, and the other is a 3D render engine “Open Scene Graph”. The VR Juggler was developed by Dr. Carolina and his team at Iowa State University. The goal of VR Juggler is providing the tools necessary for VR application development; the VR Juggler is a flexible configuration system, and allows applications to execute from simple desktop PCs system to complex multi-screen clusters. The OpenSceneGraph is a open source and cross platform graphics toolkit for high performance graphics application, such as simulators, game, virtual reality and scientific visualization. It was written in standard C++ and OpenGL; it works like the SGI’s high level 3D API “Performer”. The OpenSceneGraph is a mature product and has excellent performance. We will use both these two open source development toolkits to implement a 3D navigation application system running in a Linux pc cluster.