Unity模型布尔运算2022.1.16f1c1
Unity 的模型布尔运算工具一直是个比较头疼的问题,是想在编辑器里直接做合并、挖洞这些操作的时候。这款叫“unity 模型布尔运算工具”的资源就蛮实用,编辑器和运行时都能跑,灵活性还挺高。
支持的 Unity 版本是2022.1.16f1c1,作者直接把源代码放出来了,不用反编译 DLL,改起来方便得。你想改逻辑、加功能,甚至拿来学习 Mesh 操作和 CSG 思路都合适。
底层原理是CSG(Constructive Solid Geometry),也就是通过加减交运算,把两个模型搞成一个新模型。就像用剪刀剪纸一样,你可以把一个圆剪进一个立方体里形成凹槽,也可以合并多个模型做复杂结构。
它对Mesh 组件的做得比较细,顶点、法线、三角面这些数据都会重算,还能在Runtime动态合成,也就是说玩家操作中模型也能实时变化,这点在互动游戏里用处挺大。
工具做了Editor 扩展,打开 Unity 就能看到自定义的操作面板,不用写代码也能用。如果你习惯用脚本控制,直接写 C#调用也行,像PerformUnion()
、SubtractMesh()
这种 API 估计都有。
不过布尔操作对性能还是有点影响,尤其是模型复杂的时候。工具里做了一些优化,比如减面、支持 LOD 啥的。如果你要大量用,最好做点预,别全靠实时。
碰撞也别忘了,运算完后的模型需要更新碰撞体,不然人物会穿模。建议运算后手动更新一下MeshCollider
组件。
压缩包里还有个Source Code
文件夹,建议你认真看看源码,逻辑挺清楚的,调试起来也方便。虽然没提文档,但实在不行你可以参考下面这些相关文章:
如果你正好在做关卡编辑器、动态建模或者破坏系统,蛮推荐你把这个工具试试看。编辑器预、运行时交互两头都能照顾到。
3.44MB
文件大小:
评论区