shadow复习之planar shadow

planar shadow

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

基于这个灵感

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

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

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

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

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

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

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

相关推荐
郝学胜-神的一滴16 小时前
[简化版 GAMES 104] 现代游戏引擎 02:拆解现代游戏引擎5+1层级架构,吃透引擎底层核心逻辑
c++·unity·架构·游戏引擎·图形渲染·unreal engine·系统设计
郝学胜-神的一滴7 天前
中级OpenGL教程 020:巧用数组与循环实现多点点光源渲染,告别冗余代码重构方案
c++·unity·游戏引擎·godot·图形渲染·unreal
图扑软件7 天前
其域创新 × 图扑软件|3DGS 高斯泼溅智慧钢厂实景孪生
前端·低代码·3d·编辑器·图形渲染·可视化
ysu_031410 天前
07 | 全局缩放重构实录
c语言·重构·游戏程序·图形渲染
郝学胜-神的一滴11 天前
[简化版 GAMES 101] 计算机图形学 17:纹理技术从基础原理到多场景实战应用
c++·unity·游戏引擎·图形渲染·three.js·opengl·unreal
csdndenglu14 天前
Easy3D:一个轻量级、易用、高效的C++库,用于处理和渲染3D数据,无复杂要求时可替代VTK
开发语言·c++·图形渲染·3d渲染
郝学胜-神的一滴14 天前
中级OpenGL教程 013:渲染器类架构设计与逐帧渲染流程详解
开发语言·c++·unity·游戏引擎·图形渲染·opengl·unreal
XX風16 天前
VTK 策略模式详解:InteractorStyle、Mapper、Picker 与可替换算法
图形渲染·策略模式
叩码以求索16 天前
实时渲染插件:Enscape保姆级安装教程与下载步骤分享
图形渲染
郝学胜-神的一滴18 天前
[简化版 GAMES 101] 计算机图形学 16:纹理走样、Mipmap、三线性插值、各向异性过滤原理全解
unity·游戏引擎·godot·图形渲染·three.js·opengl·unreal