OpenGL 纹理相关API 以及纹理坐标

 我来答
可杰17
2022-06-16 · TA获得超过949个赞
知道小有建树答主
回答量:309
采纳率:100%
帮助的人:55.6万
展开全部

图片在屏幕上的显示,最终都是解码成位图,然后进行显示的。
一个图形在帧缓存区中的存储空间,可以根据如下公式计算,

纹理是一种图形数据,主要用于在屏幕上包装不同的物体,就像新房装修,需要贴不同的墙纸,此时的墙纸就是我们所说的纹理。

下面介绍下纹理中常用的API

纹理的使用主要有以下三个步骤

像素格式、像素数据类型参见下方表格内容

常用的一般是 glTexImage2D ,因为屏幕上的图形时2D的。

纹理的生成主要包括两步

主要是设置纹理的缩小/放大的过滤方式、x/y轴上的环绕方式,这些参数的设置都是通过下列方法进行设置,可以理解为ios中 NSAttribute 对富文本参数的设置,都是通过指定参数,并设置对应的值

==> 邻近过滤(GL_NEAREST):根据字面意思就是选择离当前位置最近的颜色

==> 建议:纹理缩小时,使用邻近过滤,纹理放大时,使用线性过滤

纹理过滤方式

纹理的环绕方式

4种环绕方式的效果如图所示

OpenGL像素格式
常用的 GL_RGB、GL_RGBA 等

OpenGL像素数据的书籍类型
常用的是 GL_UNSIGNED_BYTE

这个API用的很少,一般很少去改变OpenGL中像素的存储方式,主要都是使用默认的方式

例如: glPixelStorei(GL_UNPACK_ALIGNMENT,1);

更新纹理

参数的说明参考载入纹理API的参数说明

插入替换纹理

参数的说明参考载入纹理API的参数说明

使用颜色缓冲区家在数据,形成新的纹理

注: 不存在glCopyTexImage2D,主要是因为无法从3D颜色缓存区中获取体积数据

删除绑定纹理、测试绑定纹理是否有效

纹理坐标就是纹理与图形的映射关系,图形中每个顶点都会关联一个纹理坐标,表示顶点需要从该位置读取纹理图像的数据。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式