位置: 编程技术 - 正文

OpenGL中的颜色混合功能(二)——抗锯齿的处理(opengl颜色混合模式)

编辑:rootadmin
OpenGL中的颜色混合功能(二)——抗锯齿的处理 在OpenGL中,混合功能的另一个用途是抗锯齿的处理。在绝大多数情况下,一个渲染片段映射到计算机屏幕上的一个像素。因为这些像素都是正方形的,所以通常我们可以清晰的看到两种不同颜色的分界,它们就是我们通常所说的锯齿。锯齿的出现会让人觉得图像是不自然的,极为影响观感。这种锯齿现象是计算机所产生的图像的弱点,这对于我们的许多要求尽可能&#;真的渲染任务,都带来了消极的影响。 为了消除图元之间的锯齿状边缘,OpenGL使用混合功能来混合片段的颜色,也就是把像素的目标颜色与周围相邻像素的颜色进行混合。从本质上说,在任何图元的边缘上,像素颜色都会稍微延伸到相邻的像素,以此来达到平滑像素颜色的效果。打开抗锯齿功能十分简单,首先我们必须启用混合功能,并对混合函数进行一些设置: // 设置混合因子 glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); // 启用混合 glEnable(GL_BLEND); 我们还需要确保把混合方程式设置为GL_ADD的模式,这也是默认的设置。在启用混合功能并选择正确的混合方程式后,便可以调用glEnable函数对点、直线或多边形(任何实心图元)进行抗锯齿处理,如下所示: // 启用点平滑处理 glEnable(GL_POINT_SMOOTH); // 设置为画质最优的方式 glHint(GL_POINT_SMOOTH_HINT, GL_NICEST); // 启用直线平滑处理 glEnable(GL_LINE_SMOOTH); // 设置为画质最优的方式 glHint(GL_LINE_SMOOTH_HINT, GL_NICEST); // 启用多边形平滑处理 glEnable(GL_POLYGON_SMOOTH); // 设置为画质最优的方式 glHint(GL_POLYGON_SMOOTH_HINT, GL_NICEST); 不过,我们在使用GL_POLYGON_SMOOTH时应该注意,我们可能想用它使实心几何图元的边缘变得平滑。但想要实现这个目的,还需要其他一些规则。并且,对实心物体进行抗锯齿处理并不常用,一种被称为多重采用的方式通常是更好的选择。glHint方法允许我们在实现抗锯齿的处理时选择不同的实现方法,GL_FASTEST(速度最快)或者GL_NICEST(效果最佳),我们使用了效果最佳的方式。在我们的示例程序中,启用抗锯齿处理的前后对比如图所示,注意观察画面中的点、直线以及多边形边缘的变化: 未开启抗锯齿处理 开启抗锯齿处理 示例程序通过对右键菜单的响应,我们可以在抗锯齿和非抗锯齿渲染模式间进行切换。这一部分的示例程序完整代码已经放到了GitHub上,有需要的朋友可以参考一下( 本文出自杜晓萌的博客,请勿用于任何商业用途,转载请保持完整性并标明出处:

推荐整理分享OpenGL中的颜色混合功能(二)——抗锯齿的处理(opengl颜色混合模式),希望有所帮助,仅作参考,欢迎阅读内容。

OpenGL中的颜色混合功能(二)——抗锯齿的处理(opengl颜色混合模式)

文章相关热门搜索词:opengl颜色表,opengl图形变换颜色,opengl颜色代码,opengl颜色混合,opengl颜色代码,opengl颜色混合出现彩色条纹,opengl颜色混合,opengl颜色混合模式,内容如对您有帮助,希望把文章链接给更多的朋友!

GLUT函数说明(转载) 转载于:

qt.pro配置 这两天使用QT配置开发环境,遇到一些问题,在使用openGL时,出现了undefinedreference的构建错误,搜索后得知,是.pro配置出问题了。在命令行下,g会-lglut

OpenGl学习之坐标变换(下) 这节主要来理解投影变换和视口变换的使用。1、正射投影:glOrtho函数原型:voidglOrtho(GLdoubleleft,GLdoubleright,GLdoublebottom,GLdoubletop,GLdoublenear,GLdoublefar);//lef

标签: opengl颜色混合模式

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

上一篇:OpenGL绘制Bezier曲线(opengl绘制ui)

下一篇:GLUT函数说明(转载)(glrotatef函数)

  • 人力资源公司怎么和企业谈合作
  • 自产产品用于职工福利会计处理
  • 公司控股另一家公司的风险
  • 残保金滞纳金能抵扣吗
  • 增值税计入当期损益吗?
  • 境外非居民企业所得税
  • 公司向税务局缴纳环保税
  • 酒店怎么付钱
  • 防伪标识会有假的吗
  • 个人独资企业是什么类型
  • 水利建设基金2021
  • 营改增后加工行业的税率是多少?
  • 网上勾选认证发票步骤
  • 案例分析关于拟建科学馆的请示报告
  • 新办的营业执照多久可以注销
  • 小规模纳税人增值税征收率为
  • 土地转让怎么缴纳增值税
  • 劳务外包业务外包的区别
  • 预提厂房租金
  • 成本分析总结报告
  • 如何代开外籍人员个人所得税完税凭证?
  • 出口货物国际运输流程图
  • 活动展开方式怎么写
  • 汇算清缴补交所得税后报表需要调整吗
  • 右键菜单中没有RAR压缩项怎么办
  • bios屏蔽接口
  • 由于找不到msvcr120.dll,无法继续执行代码什么意思
  • 公司员工借款怎么做账
  • 在校学生是不是纳税人,请举例说明
  • thinkphp try catch
  • 银行贷款用途能改吗
  • realsense d415参数
  • yii框架教程
  • 资产负债表中其他流动资产包括哪些科目
  • vscodehtml快捷键
  • Android 10.0 framework中关于Activitity的生命周期的源码讲解
  • 计提企业所得税是在结转损益后吗
  • php从服务器下载文件
  • 经营租入固定资产账务处理
  • 溢价发行股票相关手续费计入
  • 行政事业单位固定资产划拨账务处理
  • php压缩文件怎么打开
  • 织梦cms要钱吗
  • 账簿启用交接表图片
  • 税款追征期三年
  • 房产税一般在哪缴纳
  • 企业与个人之间关系的理解
  • 其他所得
  • 营业外收入影响所有者权益吗
  • 会计继续教育的发票在哪里打
  • 债权投资是什么会计科目
  • 租金摊销会计分录
  • 滞纳金一般什么时候交
  • 贷款公司如何确定利率
  • 服务外包离岸业务是什么
  • 销售佣金的会计科目
  • 银行涉外收入申报单
  • 新办企业必须经过什么核准登记
  • 无形资产管理的特点
  • 行政事业单位基本户核算内容
  • mysql怎么复制粘贴语句
  • sqlserver中将varchar类型转换为int型再进行排序的方法
  • window10系统电脑配置
  • Linux中如何查看文件大小
  • win7系统安装步骤
  • win7工具栏怎么调整
  • linux swap分区必须吗
  • Win10 Redstone 14295更新推送:QQ会不时崩溃
  • 欢迎使用本公司智能语音电动车
  • shell脚本自动化
  • 浅析科学发展观的核心立场
  • jquery插件是干什么的
  • js newyork
  • javascript设计简单计算机
  • jQuery UI结合Ajax创建可定制的Web界面
  • 南京退林还耕
  • 税务软件服务商
  • 残疾人创业有税收什么优惠政策
  • 电子发票专用章怎么设置
  • 劳务合同和劳务协议的区别和联系
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设