gpt4 book ai didi

iphone - iPhone 上的 glgConvertTo_32

转载 作者:行者123 更新时间:2023-12-03 21:18:42 26 4
gpt4 key购买 nike

我今天通过 Instruments 运行了我的应用程序,发现“glgConvertTo_32”函数花费了过多的时间。我在其他地方读到这是因为Apple使用“GL_BGRA和GL_UNSIGNED_INT_8_8_8_8_REV”作为它的纹理格式,而我的代码使用GL_RGBA。

我使用 glTexture2D 如下:

glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, width, height, 0, GL_RGBA, GL_UNSIGNED_BYTE, textureData);

但是,GL_BGRA 和 GL_UNSIGNED_INT_8_8_8_8_REV 在 iPhone 的 GL header 中均不可用。对该函数的大量调用是否还有其他原因,或者我是否应该使用不同的纹理格式?

编辑:我应该提到我正在使用 OpenGL ES 2.0。

最佳答案

我不知道我的问题/解决方案是否真的与您的相关。但您未回答的问题是谷歌在调查我的问题时发现的第一个结果。

虽然我使用 OpenGL ES 1.1 并且不使用纹理,但我也注意到我的应用程序大约 23% 的时间花在函数 glgConvertTo_32() 上。

在 eaglLayer.drawableProperties 中将 kEAGLDrawablePropertyColorFormat 的值从 kEAGLColorFormatRGBA8 更改为 kEAGLColorFormatRGB565 后,不再调用函数 glgConvertTo_32()。该应用程序感觉更快,而且我没有看到视觉差异。

关于iphone - iPhone 上的 glgConvertTo_32,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7184998/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com