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

传播易广告投放平台深圳做网站可用乐云seo十年

传播易广告投放平台,深圳做网站可用乐云seo十年,oppo手机开发者选项在哪,网络科技公司介绍纹理#xff08;知识点#xff09; 以下是纹理用到的知识点#xff0c;至于具体流程操作请参考#xff1a; https://learnopengl.com/Getting-started/Textures 纹理环绕 纹理环绕#xff08;Texture Wrapping#xff09;的作用是定义在纹理坐标超出标准范围时系统如何…纹理知识点 以下是纹理用到的知识点至于具体流程操作请参考 https://learnopengl.com/Getting-started/Textures 纹理环绕 纹理环绕Texture Wrapping的作用是定义在纹理坐标超出标准范围时系统如何处理。纹理坐标通常在[0, 1]范围内表示纹理图像上的相对位置。当纹理坐标超出这个范围时纹理包裹规定了采取的行为以防止纹理映射时出现问题。 以下是纹理环绕的主要作用 处理纹理坐标超出标准范围 纹理包裹确保纹理坐标在 [0, 1] 范围内防止超出范围导致的问题。这包括避免纹理的重复、拉伸、挤压或其他不自然的效果。 提供更自然的纹理映射 在图形渲染中使用纹理包裹可以确保纹理在几何表面上的映射看起来更加自然和符合预期。选择适当的包裹模式有助于消除视觉上的不连续性和不规则性。 常见的纹理包裹模式包括 重复GL_REPEAT 超出[0, 1]范围的坐标会被截断将其取小数部分使其重新回到[0, 1]范围。适用于需要纹理在几何图形表面上多次重复的情况如地板、墙壁等。 镜像重复GL_MIRRORED_REPEAT 类似于重复但在超出范围时进行镜像反转。适用于需要纹理在重复的同时进行反转的情况有时可以提供更平滑的过渡。 夹取到边缘GL_CLAMP_TO_EDGE 超出范围的坐标会被夹取到0.0或1.0即被强制限制在[0, 1]范围内。适用于需要防止纹理在边缘拉伸的情况如绘制平铺的地板。 夹取到边缘但在超出范围时进行插值GL_CLAMP_TO_BORDER 超出范围的坐标会被夹取到一个指定的边界颜色。适用于需要在超出范围时保持纹理边缘的颜色以模拟纹理的边缘效果。 void glTexParameteri(GLenum target, GLenum pname, GLint param);是OpenGL中用于设置纹理参数的函数。这个函数允许你指定纹理对象的一些属性如纹理过滤、纹理环绕等target: 参数指定了目标纹理可以是 GL_TEXTURE_1D、GL_TEXTURE_2D、- GL_TEXTURE_3D 等。 pname: 参数指定了你要设置的纹理参数的名称比如纹理过滤参数、纹理环绕参数等。 param 参数指定了你要设置的参数值。 // 设置纹理过滤参数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_REPEAT);glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);纹理过滤 纹理过滤Texture Filtering是指在纹理映射到图形对象表面时系统如何根据纹理坐标对纹理进行采样的过程。纹理过滤的作用是消除或减轻因纹理像素与渲染像素之间坐标不匹配而产生的锯齿状或失真等视觉问题。总结 消除或减轻因纹理像素与渲染像素之间坐标不匹配而产生的锯齿状或失真等视觉问题解决办法 纹理过滤有多种方式其中最常见的是点过滤和线性过滤。 点过滤: 点过滤是最简单的过滤方式它会直接选取最接近纹理坐标的一个纹理像素的颜色。适用于放大纹理但在缩小纹理时可能产生锯齿状的效果。 线性过滤: 线性过滤考虑附近四个纹理像素的颜色通过加权平均的方式进行插值。在放大和缩小纹理时都相对较好地保持了图像的平滑过渡减少了锯齿状效果 总结 在纹理缩小时使用最近邻过滤并在放大纹理时使用线性过滤glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);生成和加载纹理 生成纹理 // 创建纹理对象unsigned int texture;glGenTextures(1, texture);glBindTexture(GL_TEXTURE_2D, texture);// 纹理环绕glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);// 纹理过滤glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_LINEAR);glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);// 转换数据int width, height, nrChannels;unsigned char *data stbi_load(container.jpg, width, height, nrChannels, 0);if (data){glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, width, height, 0, GL_RGB, GL_UNSIGNED_BYTE, data);glGenerateMipmap(GL_TEXTURE_2D);}else{std::cout Failed to load texture std::endl;}stbi_image_free(data);加载纹理 其实就和 顶点数据以及颜色加载一样。解析坐标里面的纹理坐标复制到VBO, 然后通过glVertexAttribPointer 解析纹理属性。利用glEnableVertexAttribArray 将数据和 顶点着色器关联。顶点着色器的输出作为片段着色器的输入FragColor texture(ourTexture, TexCoord);注意点 纹理单元: 使用一个纹理的时候纹理单元默认是 0 这个时候不用刻意去设置纹理单元 但是当纹理单元数量超过1个的时候就要设置。 单元默认是 0 - 128 所以不同的纹理绑定不同的纹理单元代码链接地址https://github.com/heisai/OpenglProject/tree/master/OpenglRectangleTexture
http://www.hkea.cn/news/14318208/

相关文章:

  • 问答网站怎么做营销柳州市建设工程质量安全监督管理处网站
  • 路桥建设网站做网站 图片更好看
  • 深圳 互联网公司百度手机端排名如何优化
  • 长沙免费网站建站模板网站用户体验解决方案
  • 哈尔滨网站建设价格低可信赖的宜昌网站建设
  • 网站的对比大秀
  • 清河做网站报价网站的栏目关键词
  • 百度网站排名查询工具asp 网站 购物车
  • 莱芜百度推广电话一键优化
  • 做网站教程做网络推广哪家好
  • 优秀高端网站建设报价跨境电商的运营模式有哪些
  • 珠海建设局网站查公司业绩网站seo工程师怎么做
  • 绘本借阅网站开发海城网站制作建设
  • 轻云服务器 多个网站网站友链查询接口
  • 寻找外贸客户的网站建网站石家庄
  • 有没有一种app类似网站建设html网页设计源代码免费
  • 东莞品牌网站建设电子商务网站对比分析
  • 彩票网站搭建多钱东莞平台网站建设设计公司
  • php做网站的优势网站建设暨检务公开自查报告
  • 建站系统加盟wordpress定义字体颜色
  • 网站开发服务转包合同seo助力网站转化率提升
  • 网站设计欣赏心得体会百度网站名称和网址
  • 郑州东区做网站电话wordpress制作翻译
  • 网站没有icp备案怎么访问wordpress音乐播放器插件
  • 西安网站建设专家个人网站建设服务器
  • 建设宠物网站的可行性算命网站该怎样做
  • 上海网站建设思创怎么做公司内网网站
  • 哈尔滨网站建设公司哪家好昆山市网站建设
  • 网站开发项目责任分配矩阵wordpress非首页显示文章列表
  • 做外贸开店用哪个网站音酷网站建设