首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Ogre3D安装与GCC,C::B在Win8中

Ogre3D安装与GCC,C::B在Win8中
EN

Stack Overflow用户
提问于 2014-03-12 11:31:57
回答 2查看 811关注 0票数 1

我正在尝试用代码块12.11设置一个Ogre3D v1.8.1,其中配置了GCC 4.7.0。我下载了Ogre3D for MinGW的预编译版本,启动示例编译并执行程序,但在Ogre3D(驱动程序选择屏幕)的初始化过程中出现了一些错误,应用程序冻结了。在网上仔细搜索发现,有这么多的帖子在互联网上,许多人已经停留在这个阶段的节目,无法通过。

C::Ogre3D scrren崩溃后的B编译器报告

代码语言:javascript
复制
 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报告如下所示

代码语言:javascript
复制
 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站点的指示,我确信这是正确的,因为否则编译器应该在编译期间抛出异常。与此同时,其他用户也经历了这样的问题,即使他们正确地配置环境。

另一个错误

代码语言:javascript
复制
  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)

你的指导将会被认可,

EN

回答 2

Stack Overflow用户

发布于 2014-03-12 12:13:50

例外情况不是抱怨源目录或外部依赖项。它在抱怨缺少plugins.cfg文件。日志中最相关的一行是:

OGRE异常(6:FileNotFoundException):“plugins.cfg”文件未找到!在...

该文件的位置将传递给根部的构造函数。演示程序可能使用工作目录的根。确保正确设置了工作目录,并确保文件位于该路径中。

参见本指南设置应用程序- CodeBlocks

如果您想要在Code::Block中运行可执行文件,则需要在项目设置中设置“工作目录”和“命令”,如下所示(请参阅该页面中的图像)

您可以找到更多关于初始化和plugins.cfg在这个教程中的基本信息。

票数 2
EN

Stack Overflow用户

发布于 2014-03-13 09:30:26

关于您的第二个错误:

正如消息明确指出的那样,您的Cg程序试图使用比机器上可用的寄存器更多的寄存器。这取决于图形卡(您使用的是哪一个)?

根据您想要实现的目标,您可能需要稍微调整着色器,以便它们保持在您的硬件的支持范围内。

例如,看看这个Ogre3D论坛线程,在DualQuaternion着色器中发生了类似的事情,用户只是减少了骨头计数。在ATI卡上,通常只有24块骨头被支持在那个阴影中。

重要的一点是: Ogre v1.9已经修复了该领域的许多问题,因此我建议您在可能的情况下更新。v1.9已经稳定了相当一段时间(实际上,我们已经在准备下一个版本v.1.0)。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22350182

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档