shadow复习之planar shadow

planar shadow

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

基于这个灵感

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

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

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

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

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

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

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

相关推荐
郝学胜-神的一滴15 小时前
中级OpenGL教程 006:高光反射原理与 Shader 实现
c++·unity·godot·图形渲染·three.js·opengl·unreal
玖釉-1 天前
栈——栈的定义及基本操作
c++·windows·算法·图形渲染
XX風6 天前
OpenGL 调试方式
图形渲染
charlie1145141916 天前
通用GUI编程技术——图形渲染实战(四十三)——D3D12设计哲学:显式控制与性能解锁
学习·3d·c·图形渲染·win32
qwert10377 天前
相机视图矩阵的由来:从空间感知到图形渲染的核心桥梁
数码相机·矩阵·图形渲染
XX風7 天前
OpenGL Geometry Shader
图形渲染
郝学胜-神的一滴8 天前
中级OpenGL教程 005:为球体&平面注入法线灵魂
c++·unity·图形渲染·three.js·opengl·unreal
XX風8 天前
OpenGL 离屏多重采样抗锯齿 (Off-screen MSAA)
图形渲染
郝学胜-神的一滴10 天前
[简化版 GAMES 101] 计算机图形学 08:三角形光栅化上
c++·unity·游戏引擎·godot·图形渲染·opengl·unreal
RReality11 天前
【Unity Shader URP】视差贴图 实战教程
ui·平面·unity·游戏引擎·图形渲染·贴图