OSG在VS2008下的配置安裝
這兩天心血來潮,突然想學點OSG的東西,其實OSG本身是挺好用的,就是編譯安裝有點讓人頭疼,佛祖保佑,終於編譯成功了,爲便來着參考,將過程記錄如下:
一、準備工作
下載相關的工具軟件:
1, 最新版的OSG庫:OpenSceneGraph-2.8.2.zip。
2, 安裝源代碼所需要的工具:cmake-2.6.4-win32-x86.zip
3, Windows支持的圖像庫:3rdParty_Win32Binaries_vc90sp1.zip,因爲我用的是vc2008,如果用vc05應該有其它針對的版本
4, 數據文件包:OpenSceneGraph-Data-2.8.0.zip
二、編譯準備
爲了編譯的順利進行,將下載的文件組織如下:
在C盤建立一個OSG的文件夾,然後其他文件如下放置:
C:\OSG\OpenSceneGraph(放置OSG最新庫文件)
C:\OSG\3rdParty(放置圖像庫)
C:\OSG\data(放置OpenSceneGraph-Data-2.8.0.zip的加壓數據),主要用於examples演示
三、用cmake生成Project & Solution files
1, 在C:\OSG\OpenSceneGraph下新建兩個文件夾,分別命名爲build, bin,用於放置編譯文件
2, 解壓cmake-2.6.4,打開bin/CMakeSetup.exe,將C:\OSG\OpenSceneGraph下的CMakeLists.txt拖到界面上,
3, 設置where is the source code 爲:C:\OSG\OpenSceneGraph
和where to build thebinnaries.爲:C:\OSG\OpenSceneGraph\build
4, 設置相關的cache value參數,這裏主要設置的參數包括:
ACTUAL_3RDPARTY_DIR,:設置爲前面的C:\OSG\3rdParty
BUILD_OSG_EXAMPLES :ON,即編譯實例
CMAKE_INSTALL_PREFIX:C:/OSG/OpenSceneGraph/bin ,設置編譯成功後,相關的庫文件存放的地址,切勿忘記
5, 點擊configure按鈕,進行第一次配置
6, 第一次配置完成後,將右上角的show advanced values 複選框選擇上,將mfc example 設置爲on
7, 點擊configure按鈕進行第二次配置,ok按鈕變爲可用,就可點擊ok按鈕開始生成
四、在VS下編譯庫文件
1,到C:\OSG\OpenSceneGraph\build文件夾下打開OpenSceneGraph.sln,選擇對於的版本(debug,release)
2,按F7生成,生成完成後,在解決方案欄下找到install工程,點擊右鍵->build
五、設置環境變量
右擊我的電腦->屬性->高級->環境變量,添加相應的環境變量如下:
用戶變量:OSG_FILE_PATH = C:\OSG\data
系統變量path下添加 ;C:\OSG\OpenSceneGraph\bin\bin ,主要用於dll的調用
六、設置VS
打開VS2008,工具->選項->項目解決方案->VC++目錄,分別設置OSG的頭文件及庫文件
包含文件裏添加:C:\OSG\OpenSceneGraph\bin\include
庫文件添加:C:\OSG\OpenSceneGraph\bin\lib
七、新建OSG項目測試
(1) 打開VS2008,創建一個WIN32控制檯程序。
(2)注意:請選空項目,在源程序中添加一個新項,添加一個C++文件(cpp)。
(3)在這個CPP文件中輸入代碼:
#include <osgViewer/Viewer>
#include <osgDB/ReadFile>
int main( int, char ** )
{
osgViewer::Viewer viewer;
viewer.setSceneData( osgDB::readNodeFile( "fountain.osg" ) );
return viewer.run();
}
(4)打開項目屬性的鏈接器,輸入里加上:
OpenThreadsd.lib
osgd.lib
osgDBd.lib
osgUtild.lib
osgGAd.lib
osgViewerd.lib
osgTextd.lib
注意:我這裏編譯的是debug版本,所以編譯的庫都有的命名爲*d.lib,如果是release版本,這裏要略做修改。
(5)運行程序,一個噴泉三維效果:
資料參考:
1, http://www.openscenegraph.org/projects/osg/wiki/Support/PlatformSpecifics/VisualStudio
2, http://ydwcowboy.blog.163.com/blog/static/25849015200951911248687/