【发布时间】:2016-01-06 20:29:24
【问题描述】:
我正在使用 GLKit 使用 OpenGL ES 2.0 制作 iPhone 应用程序。我正在使用 GLKTextureLoader 加载纹理。当我的纹理位于 mainBundle 中时 - 一切都很好。我用命令[[NSBundle mainBundle] pathForResource:@"brushRose.png" ofType:nil] 得到它的名字,纹理有以下路径:
/var/mobile/Containers/Bundle/Application/D79492CB-D03C-464D-B06E-00D0DE4389DF/Texture Test.app/brushRose.png
当我尝试从 Internet 下载完全相同的纹理并将其存储在应用程序的 Documents 文件夹中时。路径如下:
/var/mobile/Containers/Data/Application/CD3FBAAB-B8AE-47F5-9C6E-51C854FC1620/Documents/brushes/ps_roses.png
我得到一个可怕的结果,可以在下面的图片中观察到: First row - texture from mainBundle, second row - from Documents
欢迎提出如何解决第二种情况的任何想法。
测试项目可以找到here
【问题讨论】:
-
我尝试了存储库,但两种模式都不起作用。它只绘制彩色方块。
-
@Rhythmic Fistman:我已经从头开始重新下载和重建项目 + 我已经在三种不同的设备上尝试过。它按预期工作。请您提供更多详细信息,为什么您只能看到正方形?你试过调试吗?
-
嘿,我在模拟器中运行项目。为什么它在那里不起作用?没人知道。这是另一天的问题。
-
是的,不知何故 GLKit OpenGL 代码在我的模拟器中也不起作用。我从一开始就在设备上开发我的项目。也很高兴为这个问题找到一个解决方案。