Houdini Vulkan HeightBlend 高度混合 Indexmap
区分概念:
1. 高度混合 heightblend,看youtube
2. weightmap 混合,看youtube
直接看源码:
长时间制作地图,我决定贡献出关于地形shader相关流程,Houdini+Shader源码。
除了普通的indexmap流程之外,我还加入了一个srv: 路的uv,可以让路直接粘在地形上。不用任何RVT
实现上如果是商业引擎:如unreal,由于不能实时多点采样idmap(unreal默认是垃圾weightmap,而且一米一格,这是unreal最失败的地方,但是如果你有能力改C++除外) ,离线把weightmap->idmap,有点损失。
但不重要,如果有需要,我可以给出如何转IdMap,而且可以自由选择多少层混合。

GITHUB链接:gearslogy/LLVK_Beginning: Learn Vulkan from scratch

1. 程序化Mask: Houdini制作
2. 手刷Mask:要有一定手段与程序化Mask切换
3. Shader上要注意 ,不要按照unreal一层一层盖起来那个方法,那个采样爆炸。手机仅仅支持最大16次
假设我们制作16层地表,如果传统的unreal模式盖的方法是千万不可取。
案例如下:
1. 基础地表全部编码到R
2. 第二层编码到G

公路我们再输入一张SRV,确保公路粘在地面上

IndexMap采样是一次性的,必须避免马赛克,特别是低分辨率的IndexMap。所以材质中必须有扰动机制

几个很牛逼的参考:
REF this:
https://www.youtube.com/watch?v=z_D4zyoNz1k&list=PLKsROLEao_D5IYwcsd7tw6gViopm6pNo7
OR:
https://youtu.be/kzthHcbG9IM?t=972
为了更快得看到算法结果。我还给Houdini做了一套texture array流程
未插值得效果:

插值结果

后:
曾经有个工作室做什么都想1天搞定一些技术,而且不尊敬技术,搞别人心态得工作室。 我就不点名了。
为了逼员工KPI简直跟畜生一样
浙公网安备 33010602011771号