分享·展现横截面的物体分割
感觉很有趣...
想法
在游戏中实现任意切割食材,切割后展现食材横截面的效果。
引擎依然用的是Unity。起初的想法是写Shader把局部顶点discard然后显示横截面,再给横截面添加截面贴图。
比起在单一模型上discard,通过mesh编程把模型分成两部分好像更酷呢……刚好横截面的uv也要重新算。
目前找到最接近效果的资源是这个,包含单面的切面贴图,但是切开很容易产生碎片。不含切面贴图的mesh分割还有这个,但好像不支持复杂点的模型。
Unity Assets还有个用到discard的单模型界面shader,作者还有篇进一步的文章
关于横截面的贴图,烹饪模拟器中有类似mesh分割应用,可以看出这个方向的截面贴图只有一张,不过游戏里可以随意切割,猜测三张贴图可以搞定(比如xyz轴这样?):
推上有人实现了更精细的效果,根据camera远景使用不同横截面贴图,有点定格动画的意思…当然也没打算做到这么复杂啦…
从我想要的结果来说——mesh分割+尽可能少的截图(xyz三方向)即可。
TODO:
- uvmap
- mesh莫名碎片化问题(复杂模型)
- 法线异常
进行中
…mesh计算好废啊…稍微复杂点的集合体就切不动切不动…
1切不动的原因找到了xswl随便找的库存模型,大概是疯狂subdivide了233333333333333333333
定位差不多了,但是应该至少得俩贴图…支持横竖向?
现在的问题是——scale=1可以极大程度减少碎片的出现(目前切10次出现那么一两次),对应Blender得把模型scale调成0.01。scale对模型的mesh或者渲染的影响暂不明。
而且第一刀的贴图已经很准了,但是之后的就迷惑了,之后的分离物体贴图应该和最初物体关联,贴图就不会错位?
另外toon outline的shader有问题,被切的那一面整面都会被outline…完全遮掉了贴图…原因暂不明。
感觉应该针对对称物体写个uvmap规则。
update~迫真蛋糕店模拟经营~~~
TODO更新:
-
圆形蛋糕和树桩蛋糕内芯贴图正位…内芯最好能旋转…现在经常颠倒…
-
加上刀子长度的影响,如果没有完全切割不会分离→_→好像没啥必要但是…
0721备注 tex2Dlod