ShadowMap的实现 -- 正中要害简化版
来源:互联网 发布:mac触摸板使用技巧 编辑:程序博客网 时间:2024/06/08 17:31
经过一天断断续续对SDK例子的学习.我终于自己实现了ShadowMap…下面总结一下学习的心得.先简要概括一下实现ShadowMap的步骤,首先在灯光视角下对需要渲染阴影的场景进行渲染, 通过特殊的shader把整个场景的深度值储存到一张浮点纹理上, 然后在观察视角正常渲染整个场景,渲染的时候通过特定的shader将场景的每个象素的深度值与上一步中得到的深度值进行比较.就能渲染出场景的阴影. 简单的shadowMap就这么两步,很简单吧. 下面详细的步骤我就不说了,SDK比我说的要好得多,我只记一下在自己实现ShadowMap的时候感觉需要的问题.
1. 在第二步时要计算出一个很关键的矩阵,这个矩阵将摄像机观察空间 转换到 灯光观察投影空间,并最终经平移和反向缩放转换到深度值纹理空间里面. 如果没有这个变换我们将不能进行深度值的对应比较.
2. 要保证灯光的位置时能观察到完整的场景…这点很显然.其实现实中也是如此.不要被在做固定管线中方向光的习惯影响了.
3. 第三个问题也只有我这么粗心的人才会犯了,看在这个问题让我很抓狂的份上我把它写上来,就是在第二步渲染场景的时候别忘了设置正确的材质和纹理.-_-…
SDK例子里面那个太多东西了,还是我这个比较中要害.
- ShadowMap的实现 -- 正中要害简化版
- 目前出现的ShadowMap实现方式名称
- 简单理解ShadowMap阴影的实现
- Direct9学习之--------------------------实时阴影的另一种实现ShadowMap
- 游戏里的动态阴影-ShadowMap实现原理
- shadowmap 的一些变种
- gamebryo--ShadowMap的使用
- ShadowMap
- ShadowMap
- Shadowmap
- SHADOWMAP
- ShadowMap
- SHADOWMAP
- 浅谈RenderTexture的shadowmap格式
- ShadowMap自阴影在PS.1.x下的实现方法
- 简化版Vector实现
- ShadowMap实现软阴影,使用整数纹理
- GLSL实现ShadowMap及阴影软化
- GCC-3.4.6源代码学习笔记(25)
- Shadow Map在DirectX9.0 SDK Sample 的实现方法
- typedef用法[转帖]
- 零序电流
- Java技巧
- ShadowMap的实现 -- 正中要害简化版
- 2.2 - 第二章:函数 - 返回值
- javascript 子窗口跳转参数传递
- 电子表格的使用技巧
- d3d中实现简单的水
- C++指向类成员的指针的使用(详细介绍) 收藏
- C#水晶报表 套打
- GPU流式编程
- 委外采购收货的流程