標籤:
著作權,轉載請註明連結
OGRE 2.1 Windows 編譯
環境:
Windows 7 64Bit
Visual Studio 2012
OGRE 2.1
CMake 2.8.12.1
OGRE:
OGRE官方推出了最新的OGRE2.1版本,連結地址:
https://bitbucket.org/sinbad/ogre/downloads
新版本的OGRE做出了大量的修改,從官方給出的文檔我們可以看出作者們對OGRE進行了最佳化與完善。從上面連結中下載的官方版本並沒有包含編譯需要的依賴項(一向都這樣),所以我們需要下載OGRE的依賴。
OGRE Dependencies : ogredeps
ogredeps工程可以在一下的連結地址下載到:
https://bitbucket.org/cabalistic/ogredeps/downloads
這些開源項目因為許可等種種原因搞的非常麻煩,在這個下載項中有沒有SDL,所以我們還得另外下載SDL。
SDL:
在上述連結地址的“Source”頁面中,列舉出了依賴項原始碼的分類樹,開啟“src”檔案夾會看到“SDL2”的連結,然後開啟這個連結後,我們就會在新的頁面找到SDL2的(其實也很難找),如所示。
將解壓後的“./SDL-c3c3cdaf37f9”中的所有檔案拷貝到ogredeps解壓後的“./src/SDL2”檔案夾中。
ogredeps 編譯:
現在可以編譯OGRE的依賴了,首先需要使用CMake產生工程項目,在CMake的“Where is the source code:”輸入原始碼位置,像這樣:“...\cabalistic-ogredeps-eb18d4651ec7”,在“Where to build the binaries:”中輸入輸出位置,像這樣:“...\cabalistic-ogredeps-eb18d4651ec7\output”(output檔案夾自己建立,可隨意指定),然後點擊“Configure”,選擇編譯器版本(如:Visual Studio 11.0),配置成功後CMake輸出文字框會顯示“Configuring done”,最後點擊“Generate”產生vs工程項目,產生成功後會顯示“Generating done”。如所示。
上述操作步驟成功後就可以進入“...\output”檔案夾,用vs2012開啟.sln項目的,然後選擇“ALL_BUILD”工程項目,進行“全部重新編譯”,編譯成功後選擇“INSTALL”工程項目進行“重新編譯”,編譯成功後會在“...\output”檔案夾中產生“ogredeps”檔案夾,該檔案夾中包含了所有OGRE編譯所需要的所有依賴項目。
OGRE 編譯:
編譯步驟同上面編譯ogredeps步驟相似(需要提前安裝Direct X),只不過需要將上面“ogredeps”檔案夾拷貝到解壓後的檔案夾“...\sinbad-ogre-51e90cec4c17”中
(這裡我在產生工程項目的時候,CMake總是在一個叫“...\Dependencies”的檔案中需要依賴項,而不在ogredeps中需要,可能是我的CMake配置有關係,最後沒有辦法我只能講剛才拷貝過來的“ogredeps”檔案夾改名為“Dependencies”,如果知道原因的同學,可以在評論中指點),如所示。
當“Configure”和 “Generate”成功後,就可以在“...\output”中著調.sln工程項目,開啟工程後還是依次編譯“ALL_BUILD”和
“INSTALL”兩個工程,編譯成功後就將工程“SampleBrowser”設定為“啟動項”,運行就可以看到OGRE官方例子。
問題:
由於我沒有安裝Direct3D11,所以運行出現如下錯誤:
只需要將“...\Output\bin\debug”檔案夾中設定檔plugins_d.cfg中的“Plugin=RenderSystem_Direct3D11_d”用“#”注釋掉即可。
最終運行結果如下如所示。
OGRE 2.1 Windows 編譯