devIL ilLoad 错误 1285

Posted

技术标签:

【中文标题】devIL ilLoad 错误 1285【英文标题】:devIL ilLoad error 1285 【发布时间】:2012-11-14 09:22:51 【问题描述】:

我在使用 devIL for openGL 加载图像时遇到问题

在我项目的早期部分,我称之为

ilInit();

在我像这样调用我的负载之后的一个函数中

//generate a texture
ilGenImages( 1, &uiTextureHandle );

//bind our image
ilBindImage( uiTextureHandle );

//load
//ilLoad( IL_PNG, (const ILstring)"fake.png" );
ilLoad( IL_PNG, "fake.png" );

为了跟踪错误,我确实在每次调用后放置了“ilGetError()” 除了返回 1285 的 ilLoad 之外,所有这些都返回 0

经过一番搜索,我发现这是内存不足错误。

所以 ilLoad 总是返回 0 并且未加载。

任何人都知道我在加载时做错了什么,或者我忘了做某事 因为我觉得我可能忘记了什么,这就是 1285 出现的原因。

【问题讨论】:

我也刚刚测试了我是否可以加载另一种图像格式,我的测试对象是“.bmp”并且加载没有给我任何错误 【参考方案1】:

ilLoad()IL_OUT_OF_MEMORY 失败的一个常见原因仅仅是您使用的 PNG 文件已损坏。

但是,1285 表示IL_INVALID_VALUE - 这意味着您提供的路径可能是错误的。尝试使用绝对路径(请记住,反斜杠在 C++ 中是不行的,除非您使用双斜杠)。

我个人使用 DevIL 已经有一段时间了,并且很喜欢它。但是,我敦促您考虑 FreeImage。它正在进行更多开发并且非常稳定 - 我在商业引擎中使用它来满足我所有的图像需求,并且它与 DirectX/OpenGL 很好地集成,就像 DevIL 一样。

【讨论】:

以上是关于devIL ilLoad 错误 1285的主要内容,如果未能解决你的问题,请参考以下文章

Phpmyadmin 5.1.0.RC1 & 5.0.4 错误(./libraries/classes/Config.php#1285 mkdir() 中的警告:权限被拒绝)

C ++无法打开lib文件

带有 DevIL 的 g++:无法链接

当我在网格/面中实现索引时,为啥它会返回 OpenGL 错误?

Devil-Linux 1.8.0 RC1 发布

使用 MinGW 对 DevIL 函数的未定义引用