OPENGL ES 纹理
来源:互联网 发布:数据新闻比赛官网 编辑:程序博客网 时间:2024/05/10 00:12
相关概念
纹理坐标系:
纹素:当用一个图像初始化一个纹理缓存之后,在这个图像中的每个像素变成了纹理中 的一个纹素(texel)。从一个 1 像素高 64 像素 的图像初始化来的纹理会沿着整个T轴有1纹素 , 着S轴有64纹素 。
片元:帧缓存中的颜色像素
视口坐标:帧缓存中像素的位置。 转换为视口坐标的结果是 所有绘制的几何图形都 被拉伸以适合屏幕大小
纹理生成
CGImageRef imageRef0 = [[UIImage imageNamed:@"leaves.gif"] CGImage]; GLKTextureInfo *textureInfo0 = [GLKTextureLoader textureWithCGImage:imageRef0 options:[NSDictionary dictionaryWithObjectsAndKeys: [NSNumber numberWithBool:YES], GLKTextureLoaderOriginBottomLeft, nil] error:NULL]; //用于标示哪个纹理 self.baseEffect.texture2d0.name = textureInfo0.name; //target 这里是 GL_TEXTURE_2D self.baseEffect.texture2d0.target = textureInfo0.target; self.baseEffect.texture2d0.enabled = GL_TRUE; //配置混合模式,多重纹理时使用 self.baseEffect.texture2d1.envMode = GLKTextureEnvModeDecal; /*配置混合模式,也可以使用openGL的方法 //开启混合 glEnable(GL_BLEND) //设置混合 //glBlendFunc(sourceFactor,destinationFactor) //sourceFactor 参数用于指定每个片元的最终颜色元素是怎么影响混合的。 //destinationFactor 参数用于指定在目标帧缓存中已经存在的颜色元素会怎么影响混合。 glBlendFunc(GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA) */
- 纹理设置
/*glTexParameteri (GLenum target, GLenum pname, GLint param);target:GL_TEXTURE_2D等pname: 参数名param:参数值*///取样模式/*参数GL_TEXTURE_MIN_FILTER 多个纹素对应一个片元时怎么处理 GL_LINEAR:从相配的多个纹素中取样颜色,然后使用线性内插法来混合这些颜色以得到片元的颜色。 GL_NEAREST:与片元的U、V 坐标最接近的纹素的颜色会被取样*//*参数GL_TEXTURE_MAG_FILTER 没有足够的纹素唯一映射到每个片元上 GL_LINEAR:混合附近纹素的颜色来计算片元的颜色。会有一个放大纹理的效果,并会让它模糊地出现在渲染的三角形上。 GL_NEAREST:拾取与片元的 U、V 位置接近的纹素的颜色, 并放大纹理。会使它有点像素化地出现在渲染的三角形上。*/ glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);//循环模式//S轴超出后,循环读取 glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT);//T轴超出后,取纹理边缘的纹素 glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
0 0
- OpenGL ES纹理管理
- OpenGL ES纹理
- OpenGL ES纹理贴图
- Opengl es 纹理映射
- OpenGL ES纹理映射
- opengl es 纹理压缩
- OpenGL ES纹理贴图
- OpenGL ES纹理贴图
- OPENGL ES 纹理
- OpenGL ES 纹理实践
- OpenGL ES 纹理
- OpenGL ES 纹理设置
- opengl es纹理
- opengl es 纹理
- OpenGL ES 纹理贴图
- OpenGL ES: 棋盘纹理
- 【OpenGL ES】纹理
- iphone openGL/ES纹理读取
- Pandas DataFrame 日常的操作与发现
- wsdl
- yii2框架-yii2的操作action(十)
- TextView字体跑马效果
- LeetCode第29题之Divide Two Integers
- OPENGL ES 纹理
- android ROM设置默认Launcher(主屏幕应用)
- Wire Protocol Buffers介绍
- eclipse中tomcat启动不了问题
- Windows下 Python3.5 运行环境的搭建
- JAVA Calendar详解
- ViewDragHelper详解- 可拖动的view
- 1045 access denied for user ’root’@’localhost’ using password yes
- java8 NIO FileChannel例