shadow复习之planar shadow

planar shadow

通常来说 shadow都是画一个map
这个map有个很大的问题,那就是size有问题
你希望有很高的精度,就必定要用大size的图片,这显然是不太妙的
那么这里就出现一个取巧的法子,如果你只考虑投影到平面上,光源是directional的
那么可以经过计算得到物体的所有点投影到具体的平面的位置,这些信息,可以构造一个mesh出来
https://zhuanlan.zhihu.com/p/31504088

基于这个灵感

可以想想如果对于任意地形行不行

我们只考虑给主角一个影子

基于一个假定,光的角度别太大,我感觉这样就行了

预先把静态的物体搞成高度图,分好块

每走一步,就能找到需要哪些tile,就能画一个FBO,然后有aabb,拿着射线直接SDF Ray march,好了,思路就是这样了,有空再写代码实现吧

这个做法的影子,精度感觉是蛮高的,不过直接多画一次,只给主角的话,也不是不行,整体场景的话,还是算了吧

然而我接触的行业里,很多场景都有很多灯,难顶

相关推荐
ysn111112 小时前
兰伯特和半兰伯特光照模型
图形渲染
OCKHrYfK3 小时前
微网优化调度:Matlab + Yalmip 实现之旅
图形渲染
成都渲染101云渲染66665 小时前
渲染速度慢怎么办?如何将 Maya 渲染速度提升成百上千倍(通用方法)
人工智能·图形渲染·blender·maya·houdini
黑夜中的潜行者7 天前
构建高性能 WPF 大图浏览器:TiledViewer 技术解密
性能优化·c#·.net·wpf·图形渲染
梵尔纳多7 天前
第一个 3D 图像
c++·图形渲染·opengl
玖釉-10 天前
[Vulkan 学习之路] 26 - 图像视图与采样器 (Image View and Sampler)
c++·windows·图形渲染
玖釉-10 天前
[Vulkan 学习之路] 07 - 交换链 (Swap Chain):图像的物流中心
c++·windows·图形渲染
玖釉-10 天前
[Vulkan 学习之路] 29 - 加载模型 (Loading Models)
c++·windows·图形渲染
OneSea11 天前
GPU编程全攻略:从图形渲染到通用计算
图形渲染
玖釉-11 天前
[Vulkan 实战] 深入解析 Vulkan Compute Shader:实现高效 N-Body 粒子模拟
c++·windows·图形渲染