位置: 编程技术 - 正文

阴影映射(Shadow Map)的研究(三)(阴影映射可视域分析)

编辑:rootadmin
阴影映射(Shadow Map)的研究(三)

推荐整理分享阴影映射(Shadow Map)的研究(三)(阴影映射可视域分析),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:阴影效果有什么用,阴影使用方法,阴影映射可视域分析,阴影效果是什么,阴影映射可视域分析,阴影映射纹理,阴影映射纹理,阴影映射可视域分析,内容如对您有帮助,希望把文章链接给更多的朋友!

最近为了自己制作的项目可是吃了不少苦头,这其中关键的一点就是想要实现阴影映射(Shadow Map)。为了实现目标,我参考了网络上很多相关的资料,也看了一些案例,最终花了我一个月的时间将这个效果实现了。

阴影映射这样的效果,其实在即将发布的Qt 3D中已经有相关的介绍,KDAB中有一篇文章《Shadow Mappingin Qt3D 2.0》就在Qt 3D的框架上实现了阴影映射。不过当时这个效果是假定目标机器支持OpenGL 3.0规范的,目前大部分设备,至少是现在,还只能支持OpenGL ES2.0,因此文章无法很好的参考,于是我转到了其它相关的教程,看看的能不能在OpenGL ES 2.0下实现阴影映射的效果。好在网络上是有这样宝贵的资料的,在code project网站上,有一篇很好的文章,虽然是基于Android的,使用Java语言编写,但是能够很好地显示阴影映射的效果,最重要的是,由于Android基本上是支持OpenGL ES 2.0的,因此它这个是基于OpenGL ES 2.0来写的,给我们带来了很好的参考。原文是:《Shadow Mappingwith Android OpenGL ES 2》。此外,文章引用了其它的链接,其中《Tutorial :Shadow mapping》这篇文章从问题开始入手,研究阴影映射的本质,参考的价&#;高。

要实现基于OpenGL ES 2.0的阴影映射,要攻克这三个技术难点:

1、 熟练操作FBO。帧缓存FBO是需要熟练操控的,因为FBO可以很快地将深度图写入一块显存中,然后作为纹理渲染到真实的场景中。

阴影映射(Shadow Map)的研究(三)(阴影映射可视域分析)

2、 掌握着色器的使用。由于OpenGL ES 2.0只允许使用着色器来对其进行渲染,因此对着色器的书写熟练程度要求较高。

3、 掌握将float深度数据分拆成vec4再将vec4合并成float的操作。这个已经成为业内熟练掌握的技能之一了,网络上搜索“how to pack float into RGBA”,能够得到很多有用的回答。

我在熟读《Shadow Mappingwith Android OpenGL ES 2》文章以及源码数遍之后,使用Qt将测试的场景移植了过来。下面是效果图:

源码下载地址:这里

OSG 中 常用的 Uniforms osg中的Uniforms主要存在两个地方,一个是SceneView中,voidSceneView::updateUniforms()voidSceneView::updateUniforms(){if(!_localStateSet){_localStateSet=newosg::StateSet;}if(!_localStateS

OPENGL矩阵变换

Bullet有关六自由度弹性约束研究 Bullet有关六自由度弹性约束研究这段时间打算将物理引擎整合进来,于是对Bullet这款开源的物理引擎进行了一些研究。Bullet的研究也有了一段时间了,Bu

标签: 阴影映射可视域分析

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

上一篇:glClearBufferSubData

下一篇:OSG 中 常用的 Uniforms(osg uniform)

  • 多交的企业所得税怎么处理
  • 劳务清包违法吗?
  • 社保个人承担部分
  • 农民专业合作社属于什么企业类型
  • 让渡资产使用权是指资产的所有者将
  • 个体户开电子发票需要交税吗
  • 以前年度损益调整结转到哪里
  • 哪些行业不能开具增值税专用发票
  • 资产负债表月报期末余额怎么填
  • 企业商品收入确认的依据
  • 不得免征和抵扣税额抵减额
  • 市政押金无法收回的损失可以税前扣除吗
  • 专用发票抵扣联丢失还能抵扣吗
  • 怎么知道个税是退税还是补税
  • 养老失业工伤单位一般缴纳多少钱
  • 快递公司结算员工作量大不大
  • 你如何界定成本与费用之间区别?
  • 补上年所得税加滞纳金入哪个科目?
  • 地税印花税税率是多少
  • 转股交印花税的优惠政策
  • 工会筹备金需要在年终汇算调增吗
  • 研发支出与开发成本的区别
  • 研发费用如何界定
  • 出票人账号是付款号吗
  • 苹果系统中英文切换快捷键
  • 电脑自带网速测试
  • 车船税的会计分录怎么写
  • php 反射 性能
  • 为什么win+d
  • 购货方收到红字发票计入进项税转出还是进项税额负数?
  • win10 dev版本
  • 年终奖税务筹划合法吗
  • 什么是资产负债率,如何计算
  • 龟背竹的养殖方法和管理
  • php获取变量长度
  • 一般纳税人的进项普票怎么做账
  • framework for
  • 前端埋点sdk
  • content security policy blob
  • 数学建模心态崩了
  • vim操作命令
  • cpu power management设置
  • 稳岗补贴怎么申请步骤
  • 百度地图定位不更新
  • python中生成器的作用
  • 劳动法节假日加班工资
  • mysql提取数据语句
  • 企业购进材料取得增值税专用发票
  • excel内账报表
  • 增值税免税优惠梳理
  • 等线支付给劳务派遣单位的工资怎么做账?
  • acca中ebq等于
  • 事业单位收到退税账务处理
  • 营改增试点纳税人提供技术转让
  • 已抵扣的进项税额转出会计分录账务处理
  • 工程预付款入账
  • 样板房装修可以住人吗
  • 税控系统设备可以全额抵扣吗
  • 企业哪些项目可以立项
  • 小规模纳税人开具的农产品普通发票
  • 购买本公司产品未付款需要签名字吗
  • 应收账款的政策
  • mysql多个group by
  • sqlalchemy merge
  • WIN7中的一个库最多可以包含多少个文件夹
  • 七喜r11c笔记本
  • ubuntu20.0安装
  • win7系统安装程序无法创建新的系统分区
  • linux开机后怎么进去系统
  • win7网络连接不见了
  • 2016年Win10 Mobile红石更新抢先看 预期新功能/发布时间表
  • android系统架构图
  • jQuery模拟select实现下拉菜单功能
  • jquery输出语句
  • js图片预览
  • 职称申报结束多久公示
  • 上饶市国家税务局各县区办公楼修缮
  • 浙江国地税联合电子税务局
  • 污水处理厂房产税优惠政策
  • 个人股权转让是否增值了怎么判断
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设