OpenGLES---纹理的API
2016-06-01 10:16
411 查看
{目录
//关联纹理层(GL_TEXTURE0 ~ GL_TEXTURE31)
glActiveTexture (GLenum texture);
//生成纹理
glGenTextures (GLsizei n, GLuint* textures);
//删除纹理
glDeleteTextures (GLsizei n, const GLuint* textures);
//绑定纹理
glBindTexture (GLenum target, GLuint texture);
//将图片数据传给opengl
glTexImage2D (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid* pixels);
//将图片局部数据传给opengl
glTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid* pixels);
//压缩纹理
glCompressedTexImage2D (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid* data);
//将图片局部数据传给opengl
glCompressedTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid* data);
//拷贝纹理
glCopyTexImage2D (GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
//拷贝局部纹理
glCopyTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
glTexParameterf (GLenum target, GLenum pname, GLfloat param);
glTexParameterfv (GLenum target, GLenum pname, const GLfloat* params);
//设置纹理参数
glTexParameteri (GLenum target, GLenum pname, GLint param);
glTexParameteriv (GLenum target, GLenum pname, const GLint* params);
glGetTexParameterfv (GLenum target, GLenum pname, GLfloat* params);
//获取纹理参数
glGetTexParameteriv (GLenum target, GLenum pname, GLint* params);
glGenerateMipmap (GLenum target);
}
不一定全,以后还会更新的。。。
//关联纹理层(GL_TEXTURE0 ~ GL_TEXTURE31)
glActiveTexture (GLenum texture);
//生成纹理
glGenTextures (GLsizei n, GLuint* textures);
//删除纹理
glDeleteTextures (GLsizei n, const GLuint* textures);
//绑定纹理
glBindTexture (GLenum target, GLuint texture);
//将图片数据传给opengl
glTexImage2D (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid* pixels);
//将图片局部数据传给opengl
glTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid* pixels);
//压缩纹理
glCompressedTexImage2D (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid* data);
//将图片局部数据传给opengl
glCompressedTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid* data);
//拷贝纹理
glCopyTexImage2D (GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
//拷贝局部纹理
glCopyTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
glTexParameterf (GLenum target, GLenum pname, GLfloat param);
glTexParameterfv (GLenum target, GLenum pname, const GLfloat* params);
//设置纹理参数
glTexParameteri (GLenum target, GLenum pname, GLint param);
glTexParameteriv (GLenum target, GLenum pname, const GLint* params);
glGetTexParameterfv (GLenum target, GLenum pname, GLfloat* params);
//获取纹理参数
glGetTexParameteriv (GLenum target, GLenum pname, GLint* params);
glGenerateMipmap (GLenum target);
}
/** 关联纹理层(GL_TEXTURE0 ~ GL_TEXTURE31) * @param texture 纹理层一共能关联32个 GL_TEXTURE0 ~ GL_TEXTURE31 * @return */ GL_APICALL void GL_APIENTRY glActiveTexture (GLenum texture); /** 生成纹理的索引 * 功能:函数根据纹理参数返回n个纹理索引。纹理名称集合不必是一个连续的整数集合。 * @param n 用来生成纹理的数量 * @param textures 存储纹理索引的第一个元素指针 * 删除 * unsigned tId=0; * glGenTextures(1,&tId);//生成纹理的索引 * ... * glDeleteTextures(1,&tId); */ GL_APICALL void GL_APIENTRY glGenTextures (GLsizei n, GLuint* textures); /** 删除纹理 * @param n 产生纹理的数量 * @param textures 存储纹理索引的第一个元素指针 * 删除 * unsigned tId=0; * glGenTextures(1,&tId); * ... * glDeleteTextures(1,&tId); */ GL_APICALL void GL_APIENTRY glDeleteTextures (GLsizei n, const GLuint* textures); /** 绑定纹理 * @param target 纹理是几维的 * @param texture 纹理id * @return */ GL_APICALL void GL_APIENTRY glBindTexture (GLenum target, GLuint texture); /** 将图片数据传给opengl * @param target 纹理是几维的 GL_TEXTURE_2D ... * @param level 纹理层级别[0,10] 0最大,10最小 * @param internalformat 纹理存储格式(显冲用的纹理格式) * @param width 纹理宽度,老一点的显卡,不支持不规则的纹理,即宽度和高度不是2^n。 * @param height 纹理高度,老一点的显卡,不支持不规则的纹理,即宽度和高度不是2^n。 * @param border 是否有边框 * @param format 数据的格式(传入图片数据的格式)RGB,GRBA ... * @param type 纹理数据类型 unsigned byte ... * @param pixels 纹理数据 */ GL_APICALL void GL_APIENTRY glTexImage2D (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid* pixels); /** 将图片局部数据传给opengl * @param target 纹理是几维的 GL_TEXTURE_2D ... * @param level 纹理层级别[0,10] 0最大,10最小 * @param xoffset 偏移量x(相对整张图片(0,0)点偏移多少) * @param yoffset 偏移量y * @param width 纹理宽度,老一点的显卡,不支持不规则的纹理,即宽度和高度不是2^n。 * @param height 纹理高度,老一点的显卡,不支持不规则的纹理,即宽度和高度不是2^n。 * @param format 数据的格式(传入图片数据的格式)RGB,GRBA ... * @param type 纹理数据类型 unsigned byte ... * @param pixels 纹理数据 */ GL_APICALL void GL_APIENTRY glTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid* pixels); /** 压缩纹理 * @param target 纹理是几维的 GL_TEXTURE_2D ... * @param level 纹理层级别[0,10] 0最大,10最小 * @param internalformat 压缩格式 * @param width 纹理宽度 * @param height 纹理高度 * @param border 是否有边框 * @param imageSize * @param data 纹理数据 * @return */ GL_APICALL void GL_APIENTRY glCompressedTexImage2D (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid* data); /** 将图片局部数据传给opengl * @param target 纹理是几维的 GL_TEXTURE_2D ... * @param level 纹理层级别[0,10] 0最大,10最小 * @param xoffset 偏移量x(相对整张图片(0,0)点偏移多少) * @param yoffset 偏移量y * @param width 纹理宽度 * @param height 纹理高度 * @param format 数据的格式(传入图片数据的格式)RGB,GRBA ... * @param imageSize * @param data 纹理数据 * @return */ GL_APICALL void GL_APIENTRY glCompressedTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid* data); /** 拷贝纹理 * @param target 纹理是几维的 GL_TEXTURE_2D ... * @param level 纹理层级别[0,10] 0最大,10最小 * @param internalformat * @param x 起始位x(相对屏幕(0,0)点偏移多少) * @param y 起始位x * @param width 纹理宽度 * @param height 纹理高度 * @param border 是否有边框 */ GL_APICALL void GL_APIENTRY glCopyTexImage2D (GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border); /** 拷贝局部纹理 * @param target 纹理是几维的 GL_TEXTURE_2D ... * @param level 纹理层级别[0,10] 0最大,10最小 * @param xoffset 偏移量x(相对屏幕(0,0)点偏移多少) * @param yoffset 偏移量y * @param x * @param y * @param width 纹理宽度 * @param height 纹理高度 */ GL_APICALL void GL_APIENTRY glCopyTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height); /** * @param target * @param pname * @param param * @return */ GL_APICALL void GL_APIENTRY glTexParameterf (GLenum target, GLenum pname, GLfloat param); GL_APICALL void GL_APIENTRY glTexParameterfv (GLenum target, GLenum pname, const GLfloat* params); /** 设置纹理参数 * @param target 纹理是几维的 GL_TEXTURE_2D ... * @param pname * GL_TEXTURE_MAG_FILTER 放大滤波(参数) * GL_NEAREST 最近的(用第0级) * GL_LINEAR 线性的(用第0级) * GL_TEXTURE_MIN_FILTER 缩小滤波(参数) * GL_NEAREST 最近的(用第0级) * GL_LINEAR 线性的(用第0级) * GL_NEAREST_MIPMAP_NEAREST(用mipmap) (NEAREST:本级之间的算法,GL_LINEAR:级与级之间是否做了差值过滤) * GL_LINEAR_MIPMAP_NEAREST (用mipmap) * GL_NEAREST_MIPMAP_LINEAR (用mipmap) * GL_LINEAR_MIPMAP_LINEAR (用mipmap) 最好级别 * GL_TEXTURE_WRAP_S s方向(水平方向,uv坐标xy轴,这st是一个意思) * GL_TEXTURE_WRAP_T t方向(垂直方向) * GL_REPEAT 重复(默认) * GL_CLAMP_TO_EDGE 用边缘的像素填充(纹理超过1的话) * GL_MIRRORED_REPEAT 纹理镜像重复(纹理超过1的话) * @param param */ GL_APICALL void GL_APIENTRY glTexParameteri (GLenum target, GLenum pname, GLint param); GL_APICALL void GL_APIENTRY glTexParameteriv (GLenum target, GLenum pname, const GLint* params); GL_APICALL void GL_APIENTRY glGetTexParameterfv (GLenum target, GLenum pname, GLfloat* params); /** 获取纹理参数 * @param target 纹理是几维的 GL_TEXTURE_2D ... * @param pname 参数 * @param params 内容 * @return */ GL_APICALL void GL_APIENTRY glGetTexParameteriv (GLenum target, GLenum pname, GLint* params); /** * @param target * @return */ GL_APICALL void GL_APIENTRY glGenerateMipmap (GLenum target);
不一定全,以后还会更新的。。。
相关文章推荐
- Android Manifest 用法
- 什么是 GraphQL?
- Spark RDD API详解(一) Map和Reduce
- Spring Boot 开发微服务
- lwn拾遗:[sn3218 led drivers]-api解释-1
- 页面元素查找之Selectors API
- 一个小型js框架myJSFrame附API使用帮助
- 详细分析交换机、路由器、集线器的区别和联系
- PowerShell打开或关闭光驱
- 批处理的api WMIC学习体会有感第1/2页
- 批处理 API实现文件下载的代码第1/2页
- Lua教程(十七):C API简介
- 强制删除工具 xdelbox xdelbox1.5正式版下载
- 揪出交换机端口背后“凶手”导致网速太慢
- 电脑重启后突然检测不到硬盘的原因分析与解决办法
- C#中设计、使用Fluent API
- Google官方支持的NodeJS访问API,提供后台登录授权
- PQ分区出错! 巧用Ghost急速补救的绝妙办法
- 深入C++中API的问题详解
- 使用WindowsAPI实现播放PCM音频的方法