位置: 编程技术 - 正文

OpenGL中的多重采样(opengl多级采样消除锯齿有什么用)

编辑:rootadmin
OpenGL中的多重采样 抗锯齿处理的最大优点之一就是它能够使多边形的边缘更为平滑,使渲染效果显得更为&#;真和自然。点和直线的抗锯齿处理是得到广泛支持的,但遗憾的是,对多边形的平滑处理并没有在所有平台上都得到实现。并且,即使在可以使用GL_POLYGON_SMOOTH的时候,对整个场景进行抗锯齿处理也没有想象中的那么方便。这是因为,抗锯齿处理是基于混合操作的,这就需要从前到后对所有的图元进行排序,这是十分麻烦的。 在OpenGL中还有一个功能,称为多重采样(multisampling),可以用来解决抗锯齿处理中的这个问题。支持多重采样的OpenGL实现中,在已经包含了颜色、深度、模板&#;的帧缓冲区中还会添加一个额外的缓冲区,所有的图元在每个像素上都进行多次采样,其结果就存储在这个新增的缓冲区中。每次当像素进行更新时,就会针对这些采样&#;进行解析,以产生一个单独的&#;。这个处理属于是在“幕后发生的事情”,它会带来额外的内存和处理器开销,会对性能造成一定的影响。因此,有些OpenGL实现可能并不支持多渲染环境中的多重采样处理。 为了进行多重采样,首先必须获得一个支持多重采样帧缓冲区的渲染环境,这在不同的平台中获取方法可能各不相同。GLUT提供了一个位段(GLUT_MULTISAMPLE),允许请求这种帧缓冲区。例如,为了请求一个多重采样、完全颜色、带深度的双缓冲帧缓冲区,可以调用: glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH | GLUT_MULTISAMPLE); 然后,我们可以使用glEnable/glDisable组合来打开或关闭多重采样: // 打开多重采样 glEnable(GL_MULTISAMPLE); // 关闭多重采样 glDisable(GL_MULTISAMPLE); 关于多重采样还需要特别注意的一个地方是当它被启用时,点、直线和多边形的平滑特性都将被忽略(如果开启了的话)。这意味着在使用多重采样时,就不能同时使用点、直线和多边形的平滑处理了。但是在有些情况下,点和直线如果采用平滑处理可能会比使用多重采样得到的效果更好。因此,当我们绘制点和直线时,可以关闭多重采样,在绘制其它实心几何图形时再打开多重采样。代码如下所示: // 关闭多重采样 glDisable(GL_MULTISAMPLE); // 打开顶点的平滑处理 glEnable(GL_POINT_SMOOTH); // 绘制一些平滑的点 // ... // 关闭顶点的平滑处理 glDisable(GL_POINT_SMOOTH); // 打开多重采样 glEnable(GL_MULTISAMPLE); 注意,如果没有多重采样缓冲区,OpenGL就会把GL_MULTISAMPLE当做是被禁用的。 多重采样缓冲区在默认情况下使用片段的RGB&#;,并不包括颜色的alpha成分。我们可以通过调用glEnable方法配合下面的参数来修改这个行为: GL_SAMPLE_ALPHA_TO_COVERAGE 使用alpha&#; GL_SAMPLE_ALPHA_TO_ONE 把alpha&#;设为1,并使用它 GL_SAMPLE_COVERAGE 使用glSampleCoverage函数所设置的&#; 当启用了GL_SAMPLE_COVERAGE时,glSampleCoverage函数允许指定一个特定的&#;,它是与片断覆盖&#;进行位与(AND)操作的结果。 void glSampleCoverage(GLclampf value, GLboolean invert); 这种对多重采样的优化并不是严&#;由OpenGL规范所规定的,其确切的结果可能因不同的OpenGL实现而异。 OpenGL中的状态排序 打开或关闭不同的OpenGL特性将会修改驱动程序的内部状态,这种状态的改变可能会对渲染的性能造成影响。所以,对性能非常敏感的程序员常常会不辞辛苦地对所有的绘图命令进行排序,使需要相同状态的几何图形在一起进行绘制。这种状态排序的手段是游戏程序员非常常用的提高渲染速度的方法之一。 未完待续... 本文出自杜晓萌的博客,请勿用于任何商业用途,转载请保持完整性并标明出处:

推荐整理分享OpenGL中的多重采样(opengl多级采样消除锯齿有什么用),希望有所帮助,仅作参考,欢迎阅读内容。

OpenGL中的多重采样(opengl多级采样消除锯齿有什么用)

文章相关热门搜索词:opengl多级采样消除锯齿有什么用,opengl 局部重绘,opengl多级采样消除锯齿有什么用,opengl 局部重绘,opengl拾取例子,opengl绘制多个物体,opengl 局部重绘,opengl多级采样消除锯齿有什么用,内容如对您有帮助,希望把文章链接给更多的朋友!

MFC下二维OpenGL环境详细配置 一直以来,网上有很多关于OpenGL在MFC环境下配置的教程,但是,一般都说的不够详细,或者配置过程不够完整,今天我在自己摸索和学习的基础了,写

解决vtkXOpenGLRenderWindow (0x2a9db): Could not find a decent visual 系统当前环境描述:bitUbuntu..5,gcc和g4.6.3,clangllvm-3.3,Mesa-.3.5,vtk-5..1。错误详情:ERROR:In/usr/local/src/VTK5..1/Rendering/vtkXOpenGLRenderWindow.cxx,linevtkXOp

OpenGL启用双缓冲时颜色变淡或者不纯的解法方法 初学OpenGL,什么都不太会,在开启双缓冲并进行实时绘图的时候发现,颜色和设置的颜色并不完全一样,不太纯正,一直找不到原因,互联网上也搜不

标签: opengl多级采样消除锯齿有什么用

本文链接地址:https://www.jiuchutong.com/biancheng/369648.html 转载请保留说明!

上一篇:在win7环境下安装Qt配置Opencv(保证windows 7安装后正常使用的安装方法)

下一篇:MFC下二维OpenGL环境详细配置(opengl mfc)

  • 汇算清缴所得税退回做账
  • 减免税额和免税额一样吗
  • 免缴车船税
  • 银行开具的票据怎么查询
  • 组成计税价格是销售额吗
  • 不计入销售收入
  • 部分红冲的发票怎么开
  • 什么发票可以做替票
  • 一般纳税人劳务税率是多少2023
  • 固定资产遭受自然灾害账务处理
  • 固定资产处置的增值税税率
  • 应付利润的核算内容
  • 转让固定资产发生的费用计入什么科目
  • 企业自建房转让如何交土地增值税
  • 小规模纳税人企业所得税怎么计算
  • 减免税款怎么入账
  • 年终奖可以分几次发吗?
  • 附加税增值税免抵税额的数据从哪里提取的
  • 工程哪些材料可以做
  • 内外账合并步骤
  • 工资现金发放的零头入账
  • 职工教育经费包括餐费吗
  • 电脑到u盘
  • 什么是suv汽车
  • win10如何禁止
  • 会计学中的折旧是什么意思
  • 购入固定资产入账价值包括增值税吗
  • 基于中国国情的中国式现代化具有哪些特色
  • 公众号 企业
  • php写post接口
  • php中get_magic_quotes_gpc()函数说明
  • 小规模纳税人采购零配件税率
  • 侧边导航栏点击后再展开
  • 发票开具使用要求
  • 房地产代理公司资质证书
  • ps怎么参考线快捷键
  • 增值税普通发票税率
  • 融资手续费计入长期待摊
  • 采购国产设备退税公告
  • mysql内存使用详解
  • mysql忘了密码
  • 京东开专用发票需要用公户付款吗?
  • 前期费用怎么计算
  • 计提折旧的固定资产全年平均总值怎么算
  • 收据能否入账?如何填写才具有合法性呢...
  • 企业取得的财政性资金
  • 残保金未交,滞纳金怎么算
  • 股权转让需要哪些手续及流程
  • 帮别的公司付款后发票该给谁开
  • 法定盈余公积一般按照企业
  • 以下各项不属于肝郁气滞证表现的是
  • 公司转账给其他公司账户
  • 企业备用金怎么做账
  • 赡养老人扣除标准个税
  • 制单的基本要求是什么
  • mysql数据库-数据库和表的基本操作
  • 高危禁止安装怎么解除
  • win10系统怎么隐藏c盘
  • linux系统崩溃了怎么办
  • win8怎么样的
  • winxp优化设置
  • pacis.exe - pacis是什么进程 有什么用
  • apache2.4配置文件详解
  • 斗西游破解版
  • 搭建android开发环境需要用到哪些工具
  • 全面了解自我,接纳和包容自我
  • 电脑windows自动关闭
  • 比较漂亮的一个字
  • vue前端后端
  • android图片库
  • 转换目录的命令
  • 批处理命令在哪个菜单中
  • jQuery.datatables.js插件用法及api实例详解
  • 在javascript中什么方法可以对数组元素进行排序
  • js实现简单排列的方法
  • bootstrap的表格
  • js模块化框架
  • 360浏览器hi真不巧
  • 婚育证明可以开假的吗
  • 广州代理记账公司注册
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设