OStack程序员社区-中国程序员成长平台

标题: ios - openGl ES 纹理渲染 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 00:32
标题: ios - openGl ES 纹理渲染

我目前正在学习 Open GL ES 以构建 iOS 应用程序。我正在尝试向我的模型添加纹理但没有成功。我从

下载了一个示例项目

link

并且一直在研究它。我的问题是:当我原样运行项目时,我得到以下信息:

image with working texture

你可以看到它是一个带有纹理的基本立方体。我决定将 .png 文件更改为不同的图像。但是当我这样做时,我遇到了:

image not rendering texture

我不知道为什么我的 .png 文件没有渲染到立方体?

这是我的纹理: my texture

和原文: original

只是为了确认我没有收到错误并且我没有对代码进行任何更改。



Best Answer-推荐答案


如果您使用非二次幂纹理,则不能使用 mipmap,您需要正确设置过滤。

过滤:

glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);

夹具:

glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);

但这有一个缺点,在 3D 对象上,如果距离太远,纹理质量会很差。因此,在这种情况下,请使用二次幂纹理并使用 mipmap。

关于ios - openGl ES 纹理渲染,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14335873/






欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4