位置: 编程技术 - 正文

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

  • 收取罚款
  • 向税务局申请发票增量增额怎么写
  • 个人出售普通住宅应当缴纳哪些税
  • 企业注册资金需要拿钱出来吗
  • 外籍人员税收优惠政策
  • 协会会费如何做分录
  • 农产品增值税加计扣除最新政策2021
  • 土地增值税预缴税率
  • 普通发票作废要本人去拿吗
  • 应交增值税转入其他流动资产
  • 销售自产自销的产品要交税吗?
  • 净资产出资属于货币出资吗
  • 福利进项税额转出怎么做账务处理
  • 小规模企业如何
  • 税控设备维修费怎么算
  • 建筑工程老项目时间
  • 汇算所得税中“以前年度多缴的所得税额在本年抵减额”怎么填 ?
  • 个人所得税福利费免税范围
  • 质押股票是否缴印花税
  • 补提上个月折旧会计分录
  • 利润分配的途径
  • 出口公司代理
  • 代缴社保缴费基数是怎么算的
  • 服务器研发属于什么行业
  • 存出投资款是什么凭证
  • 文件夹删除需要管理员权限怎么弄
  • php字符串定义的三种方式
  • 什么时候使用多进程
  • 出口退税会计分录怎么做没退到税全部减免抵
  • vue2.0解决跨域问题
  • uniapp route
  • 结转本月完工产品成本120000元
  • 博登湖下载
  • 第三方代付如何开票
  • 解决微信授权回复的方法
  • vue.js简介
  • 车票如何抵扣增值税税率
  • 建筑保温材料施工规范
  • 公司对公账户没有流水怎么办
  • 视同销售账务处理如何做?
  • 应交增值税科目设置及账务处理
  • 增值税品种
  • 自然人独资和个人独资是一样的吗
  • 医院交什么保险
  • 百万级别数据库mysql
  • 低值易耗品摊销方法有几种
  • 技术服务费可以计入成本吗
  • 有形动产租赁服务的增值税税率
  • 子公司向母公司交利润 需要纳税吗
  • 缴纳增值税账务
  • 现金管理办法的内容包括
  • 一般纳税人购买汽车会计分录
  • 财务费用科目余额
  • 公益捐赠仪式流程
  • server2012打开sqlserver
  • 关于要不要关闭Vista中的IPv6功能的问题
  • Windows Server 2008中安装DNS服务器详细图文教程
  • net 4.0.30319
  • ubuntu-server
  • ubuntu虚拟机apt安装tools
  • macbook做热点
  • win10文件资源
  • 英文xp系统中文语言包
  • win8自动进入桌面
  • 你需要windows7sp1才能安装ie11
  • windows10更新将重启若干次
  • windows应用图标
  • linux操作系统怎么装
  • jquery表单验证代码
  • shell脚本函数及传参
  • vue解析md
  • jquery自定义表单
  • linux shell -s
  • javascript如何学
  • JavaScript bold方法入门实例(把指定文字显示为粗体)
  • 详解js跨域原理是什么
  • 个人所得税app可以更改电话号码吗
  • 2018年企业所得税
  • 福建泉州电子税务局
  • 福建是高原还是平原
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设