kumopult / blender_VertexSharpnessBaker

计算网格中每一个顶点的“尖锐度”,并以此烘培顶点组权重的插件
12 stars 2 forks source link

blender_VertexSharpnessBaker

计算网格中每一个顶点的“尖锐度”,并以此烘培顶点组权重的插件

具体用途就是用烘培出的顶点组来控制实体化描边的宽度了

这个插件的思路是:先根据每一条边相邻的两个面的夹角,计算出这条边的尖锐度;再通过选中的混合模式,依据相邻的边的尖锐度计算出每个顶点的尖锐度。最后再依据插件面板上设定的5个数值进行线性插值,得出每个顶点的权重。

目前我还没有试出特别完美的混合模式,想要得到最好的效果估计还是要按照不同邻边数量来区别处理才行。。

5个采样点用来粗略地指定一条曲线还算勉强够用,不过有时候果然还是想要7个或9个来提高精度,这个有待优化

最后就是,现在用来统计邻边邻面的算法全都是暴力遍历,效率极低。。如果有谁知道更高效的分析网格结构的算法请务必告诉我