位置: 编程技术 - 正文

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)

  • 账面价值大于计税基础
  • 拿工资要开发票,发票去哪儿开?
  • 前一年的发票第二年改抬头
  • 没有进项发票出口转内销
  • 收到政府土地补偿,用于种植农作物
  • 同一法人的两家企业可以以同一投标人身份投标吗
  • 以前年度费用调减
  • 资产总计是期初余额吗
  • 什么叫备抵科目,什么叫过渡科目
  • 转让无形资产增值税
  • 可供出售金融资产计入什么科目
  • 盈余公积未分配利润
  • 投资收益可以计入营业收入吗
  • 机动车销售统一专票有几联
  • 企业股权转让留存收益可以扣除吗
  • 一般存款账户可以转账给个人吗
  • 办理异地租房提取公积金流程
  • 小微企业按季度预缴企业所得税
  • 开具增值税专用发票证明
  • 公司增资认缴需要什么流程呢怎么办理
  • 税率13降到11的财税政策解读
  • 一般纳税人哪些项目可以简易征收
  • 展览费怎么开票
  • 预交印花税会计分录
  • 非公司员工缴纳社保有什么影响
  • 消耗性生物资产的账务处理
  • 非金融企业之间的借款合同要交印花税吗
  • 期末留抵税额退税是什么意思
  • 多计提的房产税怎么做分录
  • 进项发票失控怎么办
  • tdxcef.exe进程
  • php getheader
  • 业务招待费财务管理制度
  • PHP:imagepolygon()的用法_GD库图像处理函数
  • 普票部分红冲,还需要退回原发票吗
  • 水电费分割单会计分录
  • yii2前后端分离
  • css 100vw、100vh出现滚动条怎么解决
  • uniapp开发常用案例
  • php统计中文长度
  • 模型未来的发展趋势
  • php zmq
  • 企业收到财政补贴如何开票
  • 报税网页打不开报表怎么办
  • 将织梦dedecms转换到wordpress
  • 收到的销项负数发票如何申报
  • sqlserver数据库定时任务
  • 税控服务费全额抵扣申报怎么填
  • 销售金银首饰增值税和企业所得税
  • 存货非正常损失进项税额转出分录
  • 取得的政府补助收入计入
  • 收到赠送样品如何入账
  • 合并报表怎么合并
  • 为什么要挂靠其他劳务派遣公司?有什么利弊?
  • 来料加工企业的辅助材料自购怎开销售发票
  • 社区养老服务平台
  • 营业收入的核算内容包括
  • win7无法安装谷歌
  • linux忘记密码怎么重启
  • linux的web
  • linux gc
  • Win7系统如何开启移动到文件夹选项
  • win8 ui
  • linux cp的用法
  • js时间日期
  • oculus dk2
  • python编程
  • 电脑完美平台
  • node.js入门
  • javascript web开发
  • unity3D关于公共安全内容制作
  • node 回调函数
  • 详解Bootstrap四种图片样式
  • adb工具使用说明文档下载
  • Python遍历文件夹中的图片
  • jquery实现图片放大
  • 广东发票查询真伪网站
  • 浙江省电子税务局手机开票入口
  • 地税发票在哪里开
  • 个人所得税怎么扣除
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设