当前位置: 首页 > news >正文

网站建设一级二级目录oppo应用商店官网

网站建设一级二级目录,oppo应用商店官网,百度域名登录,太原网站制作维护纹理过滤纹理采样最近点采样线性纹理采样MIPMAP纹理纹理过滤 纹理拉伸#xff1a;重复拉伸和截取拉伸 用于指定纹理坐标超过(00.0,1.0)范围时所发生的行为#xff0c;使用glTexParameterf函数指定#xff0c;GL_TEXTURE_WRAP_S 定义 s 坐标超出范围[0.0, 1.0]的情况#xf… 纹理过滤纹理采样最近点采样线性纹理采样MIPMAP纹理 纹理过滤 纹理拉伸重复拉伸和截取拉伸 用于指定纹理坐标超过(00.0,1.0)范围时所发生的行为使用glTexParameterf函数指定GL_TEXTURE_WRAP_S 定义 s 坐标超出范围[0.0, 1.0]的情况GL_TEXTURE_WRAP_T 设定 t 坐标。 GL_REPEAT 重复纹理超过1的部分其实只看它的小数部分也就是说比如纹理坐标为2.4那么相当于取样0.4处的纹理值。GL_CLAMP_TO_EDGE 采样纹理边缘不想要任何格式的重复应该使用 GL_CLAMP_TO_EDGE超过1的部分都当成1.GL_MIRRORED_REPEAT 重复纹理和镜像在重复的基础上呈现镜像效果。在立方体纹理的例子上修改一下vertices数组增加一个变量i float vertices[] new float[] {// 顶点 颜色 纹理坐标//前面0, 0, 1, 1,1,1,0, 0.5f*i, 0.5f*i,1, 1, 1, 1,0,0,0, 1.0f*i, 0.0f*i,-1, 1, 1, 1,0,0,0, 0.0f*i, 0.0f*i,0, 0, 1, 1,1,1,0, 0.5f*i, 0.5f*i,-1, 1, 1, 1,0,0,0, 0.0f*i, 0.0f*i,-1,-1, 1, 1,0,0,0, 0.0f*i, 1.0f*i,0, 0, 1, 1,1,1,0, 0.5f*i, 0.5f*i,-1,-1, 1, 1,0,0,0, 0.0f*i, 1.0f*i,1,-1, 1, 1,0,0,0, 1.0f*i, 1.0f*i,0, 0, 1, 1,1,1,0, 0.5f*i, 0.5f*i,1,-1, 1, 1,0,0,0, 1.0f*i, 1.0f*i,1, 1, 1, 1,0,0,0, 1.0f*i, 0.0f*i,//后面0, 0,-1, 1,1,1,0, 0.5f*i, 0.5f*i,1, 1,-1, 1,0,0,0, 1.0f*i, 0.0f*i,1,-1,-1, 1,0,0,0, 0.0f*i, 0.0f*i,0, 0,-1, 1,1,1,0, 0.5f*i, 0.5f*i,1,-1,-1, 1,0,0,0, 0.0f*i, 0.0f*i,-1,-1,-1, 1,0,0,0, 0.0f*i, 1.0f*i,0, 0,-1, 1,1,1,0, 0.5f*i, 0.5f*i,-1,-1,-1, 1,0,0,0, 0.0f*i, 1.0f*i,-1, 1,-1, 1,0,0,0, 1.0f*i, 1.0f*i,0, 0,-1, 1,1,1,0, 0.5f*i, 0.5f*i,-1, 1,-1, 1,0,0,0, 1.0f*i, 1.0f*i,1, 1,-1, 1,0,0,0, 1.0f*i, 0.0f*i,//左面-1, 0, 0, 1,1,1,0, 0.5f*i, 0.5f*i,-1, 1, 1, 1,0,0,0, 1.0f*i, 0.0f*i,-1, 1,-1, 1,0,0,0, 0.0f*i, 0.0f*i,-1, 0, 0, 1,1,1,0, 0.5f*i, 0.5f*i,-1, 1,-1, 1,0,0,0, 0.0f*i, 0.0f*i,-1,-1,-1, 1,0,0,0, 0.0f*i, 1.0f*i,-1, 0, 0, 1,1,1,0, 0.5f*i, 0.5f*i,-1,-1,-1, 1,0,0,0, 0.0f*i, 1.0f*i,-1,-1, 1, 1,0,0,0, 1.0f*i, 1.0f*i,-1, 0, 0, 1,1,1,0, 0.5f*i, 0.5f*i,-1,-1, 1, 1,0,0,0, 1.0f*i, 1.0f*i,-1, 1, 1, 1,0,0,0, 1.0f*i, 0.0f*i,//右面1, 0, 0, 1,1,1,0, 0.5f*i, 0.5f*i,1, 1, 1, 1,0,0,0, 1.0f*i, 0.0f*i*i,1,-1, 1, 1,0,0,0, 0.0f*i, 0.0f*i,1, 0, 0, 1,1,1,0, 0.5f*i, 0.5f*i,1,-1, 1, 1,0,0,0, 0.0f*i, 0.0f*i,1,-1,-1, 1,0,0,0, 0.0f*i, 1.0f*i,1, 0, 0, 1,1,1,0, 0.5f*i, 0.5f*i,1,-1,-1, 1,0,0,0, 0.0f*i, 1.0f*i,1, 1,-1, 1,0,0,0, 1.0f*i, 1.0f*i,1, 0, 0, 1,1,1,0, 0.5f*i, 0.5f*i,1, 1,-1, 1,0,0,0, 1.0f*i, 1.0f*i,1, 1, 1, 1,0,0,0, 1.0f*i, 0.0f*i,//上面0, 1, 0, 1,1,1,0, 0.5f*i, 0.5f*i,1, 1, 1, 1,0,0,0, 1.0f*i, 0.0f*i,1, 1,-1, 1,0,0,0, 0.0f*i, 0.0f*i,0, 1, 0, 1,1,1,0, 0.5f*i, 0.5f*i,1, 1,-1, 1,0,0,0, 0.0f*i, 0.0f*i,-1, 1,-1, 1,0,0,0, 0.0f*i, 1.0f*i,0, 1, 0, 1,1,1,0, 0.5f*i, 0.5f*i,-1, 1,-1, 1,0,0,0, 0.0f*i, 1.0f*i,-1, 1, 1, 1,0,0,0, 1.0f*i, 1.0f*i,0, 1, 0, 1,1,1,0, 0.5f*i, 0.5f*i,-1, 1, 1, 1,0,0,0, 1.0f*i, 1.0f*i,1, 1, 1, 1,0,0,0, 1.0f*i, 0.0f*i,//下面0,-1, 0, 1,1,1,0, 0.5f*i, 0.5f*i,1,-1, 1, 1,0,0,0, 1.0f*i, 0.0f*i,-1,-1, 1, 1,0,0,0, 0.0f*i, 0.0f*i,0,-1, 0, 1,1,1,0, 0.5f*i, 0.5f*i,-1,-1, 1, 1,0,0,0, 0.0f*i, 0.0f*i,-1,-1,-1, 1,0,0,0, 0.0f*i, 1.0f*i,0,-1, 0, 1,1,1,0, 0.5f*i, 0.5f*i,-1,-1,-1, 1,0,0,0, 0.0f*i, 1.0f*i,1,-1,-1, 1,0,0,0, 1.0f*i, 1.0f*i,0,-1, 0, 1,1,1,0, 0.5f*i, 0.5f*i,1,-1,-1, 1,0,0,0, 1.0f*i, 1.0f*i,1,-1, 1, 1,0,0,0, 1.0f*i, 0.0f*i}; 设置i2时相当于纹理坐标设置的范围为(0,2)之间定义纹理过滤方式为重复模式 GLES20.glTexParameterf(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_WRAP_S,GLES20.GL_REPEAT); GLES20.glTexParameterf(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_WRAP_T,GLES20.GL_REPEAT); 效果图 设置纹理过滤模式为重复镜像模式 GLES20.glTexParameterf(GLES20.GL_TEXTURE_2D,GLES20.GL_TEXTURE_WRAP_S,GLES20.GL_MIRRORED_REPEAT); GLES20.glTexParameterf(GLES20.GL_TEXTURE_2D,GLES20.GL_TEXTURE_WRAP_T,GLES20.GL_MIRRORED_REPEAT); 效果图 纹理采样 纹理采样就是根据偏远的纹理坐标到纹理图中提取对应位置颜色的过程但一般而言片元数量和纹理图中的像素数量并不一定相同比如将较小的纹理图映射到较大的图元或者将较大的纹理图映射到较小的图元时就会出现这样的状况通过纹理坐标在纹理图中并不一定能找到与之完全对应的像素这时候就要采取相应的策略在纹理图中选取颜色了。 最近点采样 最近点采样的原理就是根据片元的纹理坐标在纹理图中的位置距离那个像素近就选择哪个像素的颜色值作为该片元的颜色采样值。最近点采样计算很简单但存在的问题就是将较小的纹理图映射到较大的图元上容易产生明显的锯齿同时将较大的纹理缩小的一定的程度后也就不好用了。加载纹理时设置最近点采样的方式 GLES20.glTexParameterf(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_MIN_FILTER,GLES20.GL_NEAREST); GLES20.glTexParameterf(GLES20.GL_TEXTURE_2D,GLES20.GL_TEXTURE_MAG_FILTER,GLES20.GL_NEAREST); 线性纹理采样 线性纹理采样的结果并不仅来自纹理图中的一个像素在进行纹理采样时会考虑到该片元对应的纹理坐标周围的几个像素然后根据周围几个像素的比例进行加权得到最终的采样结果。由于线性采样对多个像素进行了加权平均仅此将较小的图元纹理映射到较大的图元时不会有锯齿现象而是平滑过渡。加载纹理时设置线性纹理采样的方式 GLES20.glTexParameterf(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_MIN_FILTER,GLES20.GL_LINEAR); GLES20.glTexParameterf(GLES20.GL_TEXTURE_2D,GLES20.GL_TEXTURE_MAG_FILTER,GLES20.GL_LINEAR); 因此一般来说对于缩小映射采用最近点采样对于放大映射来说采用线性采样。GL_TEXTURE_MIN_FILTER表示缩小的映射GL_TEXTURE_MAG_FILTER表示放大映射。 MIPMAP纹理 尽管用线性采样很适合处理放大的情况但是对于缩小到一定的大小后它就不好用了一个纹理在渲染表面所占的大小减少的越多就会有越多的纹理元素拥挤到一个片元上一般情况下使用线性采样每个片元值使用了四个纹理像素我们就会失去很多的细节。 使用MIPMAP技术可以用来生成一组优化过的不同大小的纹理并且会使用所有的纹理元素来生成每个级别的纹理。当加载纹理的时候不单单是加载一个纹理而是加载一系列从大到小的纹理当mipmapped纹理状态中。在渲染时OpenGL会根据每个片元的纹理元素数量为每个片元选择最合适的级别的纹理。 使用glGenerateMipmap函数自动生成多级纹理对绑定的纹理调用glGenerateMipmap函数会产生从原始图像开始的多级纹理链。后续的每个纹理是上一个纹理图像的一半一直持续到最后底部的1x1的纹理。 public static native void glGenerateMipmap(int target ); 加载MIP纹理的方式允许在设置纹理采样方式时采用MIP方式即param参数除了GL_NEAREST和GL_LINEAR以外还可以使用GL_NEAREST_MIPMAP_NEAREST、GL_NEAREST_MIPMAP_LINEAR、GL_LINEAR_MIPMAP_NEAREST、GL_LINEAR_MIPMAP_LINEAR。 public static native void glTexParameterf(int target,int pname,float param); 使用GL_LINEAR_MIPMAP_LINEAR模式效果最佳。 测试各种类型的纹理采样方式 代码下载 转载于:https://www.cnblogs.com/qhyuan1992/p/6071965.html
http://www.pierceye.com/news/935265/

相关文章:

  • 上海人才网最新招聘信息官方网站互联网软件
  • 网站备案审核流程图长治专业做网站
  • 网站建设的参考文献英文北京市住房建设官网站
  • 网站文件夹命名seo大连网站建设方案咨询
  • 重庆推广一个网站网站标题flash
  • 潍坊住房与城乡建设局网站邮箱号怎么注册
  • 有没有免费开网站的电子商务网站建设讨论
  • 拓者室内设计网站东方甄选采用了哪些网络营销方式
  • 电子商务网站开发案例dw怎么制作好看的个人网页
  • 爱站网 关键词挖掘工具站长工具wordpress登陆框
  • dede手机网站更新实时新闻
  • 信息化建设 网站作用专业设计网站公司
  • 秦皇岛金洋建设集团网站找人做小程序要多少钱
  • 郑州专业做网站企业wordpress 添加文件权限
  • 企业网站托管套餐南通企业建站系统模板
  • 汉中网站建设服务网站宣传推广平台
  • 关于科技园区建设文章的网站软文兼职10元一篇
  • 免费隐私网站推广海宁自适应网站建设
  • ipad网站制作网络平台怎么建立网站吗
  • 午夜资源站诸暨北京有哪些网站制作公司
  • 无忧自助建站安卓手机建站
  • 网站建设怎设计榆林市城乡建设规划局网站
  • 网站建设相关资讯做网站 思源字体
  • 辽宁网站设计国家开发大学网站作业怎么做
  • 仿西部数码网站注册建筑设计师
  • 南昌企业网站设计建设制作怎么删除ghost wordpress
  • 如何建个人免费网站手机怎么做网站免费的
  • 目前做那个网站能致富怎么增加网站的权重
  • 无锡网站建设818gx中国机械加工网卸粮四通
  • 淘宝网网站建设出入南京最新通知今天