位置: 编程技术 - 正文

阴影映射(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)

  • 什么情况需要预缴增值税
  • 资产报废需要税务登记吗
  • 企业其他综合收益减少应该怎么处理
  • 商业汇票和商业本票
  • 小型微利企业认定标准2023年
  • 全额计提坏账符合的条件
  • 个人所得税申报方式选哪个
  • 个人所得税自行纳税申报
  • 分公司发生修理费能否在总公司列支?
  • 企业所得税可以弥补几年亏损
  • 公司招投标卖标书的收入款财务作什么科目?
  • 电子承兑重复背书两次有影响吗
  • 冲销暂估购入原材料的账务处理?
  • 金银制成的金银币及摆件是否征收消费税?
  • 企业新增股东
  • 增值税发票过期未抵扣怎么办
  • windows10专业
  • win8电脑一键还原怎么操作
  • 周转材料月末有余额吗
  • PHP:xml_error_string()的用法_XML解析器函数
  • 代扣代缴个人工会经费 企业所得税
  • 税务局怎么核定征收股权转让的
  • 本月购买原材料怎么入账
  • 总公司固定资产包括哪些
  • php jsondecode
  • 乱账怎么调整
  • 如何分清福利性劳动
  • 国产版忠犬八公观后感
  • 收据不可以入账吗
  • php确认弹窗
  • 发票多开了 财务怎么算税点
  • 微信支付开发步骤
  • 日本蜡烛图形
  • 分割sw
  • mysql desc(DESCRIBE)命令实例讲解
  • 爱上源码,重学Spring IoC深入
  • phpcms api
  • 2021年食用油税率
  • 小企业会计准则 存货
  • 合并报表为什么要抵消子公司所有者权益
  • 网上报税教程
  • 冲红怎么做会计科目
  • python正态分布采样
  • 织梦标签教程
  • 企业收到土地补偿金需要开发票吗
  • 歌咏比赛服装费用规定标准最新
  • 收到缴纳个人所得税短信
  • 已开票未收到款怎么做账
  • 其他债权投资减值为什么不影响所有者权益
  • 公司出售子公司股权
  • 小规模纳税人批发零售税率
  • 纳税申报相关操作有哪些
  • 补贴收入属于其他收益吗
  • 用友结算成本处理在哪里
  • 消费税的账务处理方法
  • 一般纳税人进销不符怎么办
  • 购买土地需要缴纳哪些费用
  • 预支差旅费怎么记账
  • 收到合同后的整个流程
  • 低值易耗品和物料用品的区别
  • 只有合同没发票能挂账吗
  • 残保金管理使用办法
  • 微信转账报销怎么退回
  • 刚成立的公司没有五险一金
  • 企业预付账款的分录
  • mysql8 表分区
  • win7命令提示符
  • os x10.11el capitan beta6更新了什么?os x10.11el capitan beta6发布下载
  • 什么叫linux
  • fdreader.exe是什么程序
  • 下眼角疼痒
  • 深入了解是啥意思
  • javascript的相关应用
  • python 字典的字典
  • jq form提交
  • 个人进口关税税率
  • 百旺金赋天津客服
  • 娱乐圈的收入高得离谱
  • 零申报的企业残保金怎么申报
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设