Open Scene Graph 安裝
相關的工具:
1、 最新版的OSG庫:OpenSceneGraph-3.0.0.zip。
2、 安裝源始代碼需要的工具:cmake-2.6.4-win32-x86.zip。
3、 第三方庫3rdParty_VC10_x86_x64.zip
http://members.iinet.net.au/~bchrist/3rdParty_VC10_x86_x64.zip
4、 數據文件包:OpenSceneGraph-Data-3.0.0.zip
二、編譯準備
為了編譯的順利進行,將下載的文件組織如下:
在C盤建立一個OSG的文件夾,然後其他文件如下放置:
C:\OSG\OpenSceneGraph:源碼解壓後放於此
C:\OSG\3rdParty:第三方庫解壓後放於此
C:\OSG\OpenScenGraph-Data-3.0.0.zip:數據包解壓後放於此。
三.安裝源碼
1、 安裝CMake之後,打開CMake -gui.exe
2、OpenSceneGraph-3.0.0.zip解壓後,將裡頭的CmakeLists.txt,拖到Cmake界面。
3、 點擊Configure,選擇Visual Studio 10(x64),finish後進行相關設置:
ACTUAL_3RDPARTY_DIR值C:/OSG/3rdParty /X64
BUILD_OSG_EXAMPLES :ON
CMAKE_INSTALL_PREFIX:C:/OSG/OpenSceneGraph/;
如下圖
4、點擊Configure後,跑一下後將Advanced打勾,將BUILD_MFC_ EXAMPLE設置為on,然後按下Configure配置。(若沒有將第2步將裡頭的CmakeLists.txt,拖到Cmake界面,這裡就找不到BUILD_MEF_EXAMPLE檔)
5、點擊Generate,建構完成。
四、在VS2010下編譯
1、 用VS2010打開OpenSceneGraph.sln(C:\OSG\OpenSceneGraph),再對All_BUILD進行建置,選擇(Debug和Release都要),這段編譯時間是很長的,我的電腦有跑約3個小時。
2、再對INSTALL也進行建置。這就不會等太久了。
五、環境變數設置(右擊我的電腦->內容->進階系統設定>環境變數)
對系統變量設置如下:
OSG_FILE_PATH: C:\OSG\data
PATH:C:\OSG\bin;
可在命令行進行測試osgversion,osglogo,osgviewer cow.osg。
六、設置VS2010
打開VS2010
include目錄添加:E:\OSG\OpenSceneGraph\include
程式庫目錄添加:E:\OSG\OpenSceneGraph\lib
七、新建OSG项目测试
(1) 打開VS2010,創建一個WIN32控制台程序。
(2)注意:請選空項目,在源程序中添加一個新項,添加一個C++文件(cpp)。
(3)在這個CPP文件中輸入代碼:(fountain.osg來自/bin,可替換成別的圖形)
#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)運行程序,一個噴泉三維效果:
--
問題: win7+vs2010 出現zlib1d.dll的问题
1. 環境變數path加入C:\OSG\3rdParty\bin
2. 把zlib1d.dll 刪除,zlib1.dll改成zlib1d.dll
3. 建置後錯誤, LINK : fatal error LNK1104:無法開啟檔案'freeglut.lib'
(1)下載:http://freeglut.sourceforge.net/ freeglut.vcproj使用Release執行編譯。
(2)這時會生成Release目錄,將freeglut.dll複製到system32下。
(3)將freeglut-2.6.0\include\GL 的.h 複製 C:\Program Files\Microsoft SDKs\Windows\v7.0A\Include\gl
(4)將Release目錄下的freeglut.lib 複製C:\Program Files\Microsoft SDKs\Windows\v7.0A\Lib
沒有留言:
張貼留言