注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

hhfighting的博客

以责人之心责己,以恕己之心恕人

 
 
 

日志

 
 
 
 

shadow map & depth texture  

2012-10-30 04:20:14|  分类: 3D reconstructio |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

1 depth texture概念

深度纹理是一张包含场景的深度缓冲区中数据的渲染纹理。纹理中的每个像素的颜色代表对应这个像素的多边形的深度值,这个深度值来自于深度缓冲。

深度纹理中每个像素所记录的深度值是从0 到1 非线性分布的。精度通常是 24 位或16 位,这主要取决于所使用的深度缓冲区。当读取深度纹理时,我们可以得到一个0-1范围内的高精度值。如果你需要获取到达相机的距离或者其他线性关系的值,那么你需要手动计算它。

2 如何将深度信息保存到纹理中

方法一:使用一个标准的RGBA表面(surface)格式并将四个颜色作为一个32-bit缓冲,将深度复制到这个缓冲(深度数据通常是24或32 bits)。

方法二:是对纹理使用一个浮点(floating-point)表面格式,这个格式与一个浮点深度缓冲组合在一起。深度缓冲通常是定点(fixed-point)的,当使用这种方法时,在存储前从1减去深度值的结果更加精确,这是因为此时浮点数是encoded。


reference: http://www.cnblogs.com/summericeyl/archive/2011/01/04/1945030.html

3 opengl程序使用shadow map(非glsl)

reference http://www.cppblog.com/summericeyl/archive/2011/12/08/137953.html

4 How to get depth value
reference: http://olivers.posterous.com/linear-depth-in-glsl-for-real

 

shadow map: http://www.zwqxin.com/archives/opengl/shadow-map-2.html


 

  评论这张
 
阅读(459)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018