簡體   English   中英

在Win8中使用GCC,C :: B安裝Ogre3D

[英]Ogre3D installation with GCC, C::B in Win8

我正在嘗試使用代碼塊12.11設置一個Ogre3D v1.8.1,其中配置了GCC 4.7.0。 我下載了用於MinGW的Ogre3D的預編譯版本,啟動示例可編譯並執行程序,而不會出現錯誤,但是在Ogre3D初始化(驅動程序選擇屏幕)期間,會發生一些錯誤並且應用程序凍結。 網上有意搜索表明,互聯網上有如此多的帖子,很多人陷在程序無法通過的那個階段。

Ogre3D scrren崩潰后的C :: B編譯器報告

 In __cxa_throw () (D:\Ogre3D_181\OgreSDK_MinGW_v1-8-1\bin\Debug\OgreMain_d.dll)
 87 ..\..\..\..\..\OgreMain\src\OgreConfigFile.cpp: No such file or directory.
 #1  0x009507e9 in Ogre::ConfigFile::loadDirect (this=0x28fc48, filename=...,
 separators=..., trimWhitespace=true) at ..\..\..\..\OgreMain\src\OgreConfigFile.cpp:87
 Debugger finished with status 0

Ogre3D.log報告如下所示

 13:19:34: MovableObjectFactory for type 'BillboardSet' registered.
 13:19:34: MovableObjectFactory for type 'ManualObject' registered.
 13:19:34: MovableObjectFactory for type 'BillboardChain' registered.
 13:19:34: MovableObjectFactory for type 'RibbonTrail' registered.
 13:19:34: OGRE EXCEPTION(6:FileNotFoundException): 'plugins.cfg' file not found! in     
 ConfigFile::load at ..\..\..\..\..\OgreMain\src\OgreConfigFile.cpp (line 88)

根據Ogre3D和C :: B的抱怨,似乎我沒有正確傳遞正確的include / source / lib目錄和外部依賴關系,但實際上我已經遵循了Ogre3D官方網站的指示,並且我確定這是正確的,因為否則編譯器應該在編譯過程中拋出異常。 即使他們正確配置了環境,其他用戶也遇到了此類問題。

另一個錯誤

  07:09:37: OGRE EXCEPTION(7:InternalErrorException): Unable to compile Cg program      
  Ogre/DualQuaternionHardwareSkinningTwoWeightsTwoPhaseCg: The compile returned an    
  error.DualQuaternion_Common.cg(167) : warning C7019: "blendWgt" is too large for  
   semantic    
  "BLENDWEIGHT", which is size 1
   (0) : error C6007: Constant register limit exceeded; more than 96 constant registers   
   needed to compiled program

   (0) : error C6007: Constant register limit exceeded; more than 96 constant registers   
   needed to compiled program
   (0) : error C6007: Constant register limit exceeded; more than 96 constant registers 
   needed to compiled program
    in CgProgram::compileMicrocode at 
   ..\..\..\..\..\..\PlugIns\CgProgramManager\src\OgreCgProgramManagerDll.cpp (line 67)

您的指導將不勝感激,

唯一的例外是沒有抱怨源目錄或外部依賴項。 它抱怨缺少plugins.cfg文件。 日志中最相關的行是這樣的:

OGRE EXCEPTION(6:FileNotFoundException):找不到'plugins.cfg'文件! 在...

該文件的位置將傳遞給Root的構造函數。 演示程序可能使用工作目錄的根目錄 確保正確設置了工作目錄,並且文件位於該路徑中。

請參閱本指南設置應用程序-CodeBlocks

如果要從Code :: Blocks中運行可執行文件,則需要在項目設置中設置“工作目錄”和“命令”,如下所示:(請參見該頁面的圖像)

您可以在本教程中找到有關初始化以及plugins.cfg是什么的更多基本信息。

關於第二個錯誤:

正如該消息明確指出的那樣,您的Cg程序嘗試使用的寄存器數量超過了計算機上可用的寄存器數量。 這取決於顯卡(您使用的是哪一張)?

根據您要實現的目標,可能需要稍微調整着色器,以使它們位於硬件支持的范圍之內。

例如, 請參見此Ogre3D論壇主題 ,其中DualQuaternion着色器發生了類似的情況,而用戶僅減少了骨骼數。 在ATI卡上,該着色器通常僅支持24個骨骼。

重要說明: Ogre v1.9解決了該領域的許多問題,因此,我建議您盡可能進行更新。 v1.9自一段時間以來一直穩定(實際上,我們已經在准備下一個版本v.1.0)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM