纹理呈现为颜色框

时间:2016-06-10 01:49:52

标签: ios opengl-es xcode7 port arm64

我必须使用Xcode7将32位iPhone / iPad应用程序升级到64位。 这个应用程序是旧式OpenGL(也许是2009年?),代码是spaghetti(是一个win32端口)所以我不知道究竟是如何工作的。 我所知道的是32位纹理看起来不错,但是当我改为64位时,所有纹理都呈现为颜色框。请看一下图片。 应用程序中的所有内容都是硬编码纹理,包括文本(某种bmp字体)。 你们有什么可以解决这个问题的线索吗?

enter image description here

1 个答案:

答案 0 :(得分:0)

最后我发现了邪恶的根源。 该程序正在读取bmp的旧学校方式,因此一些bmp长数据类型是32位中的4个字节,但在64位模式下是8个字节!!!!!!

所以我将long类型更改为int32_t Look at this debug screenshot