Unity —— 针对DynamicBone插件的迭代来实现布料模拟

本文探讨了如何通过迭代Unity的DynamicBone插件,实现更真实的布料模拟。详细介绍了原生DynamicBone的工作原理,包括Verlet Integration、Shape Keeping等,并提出新的需求,如弹簧-质心系统、弯曲弹性、风力系统和定制化弹性约束。通过性能分析,提出优化方案,包括胶囊体优化、粒子懒惰程度评估和多线程优化,实现了在红米3s上支持300+动态骨骼的实时结算。
摘要由CSDN通过智能技术生成

这篇博客介绍了我在近期针对于Unity的DynamicBone插件进行迭代,从而实现近布料模拟的方法。

由于部分涉及到工作内容,因此询问了部门老大后决定本博客将只介绍迭代思路,不涉及到具体实现,也不会放出对应图片。


背景

来上海也有近两个月了,近来也差不多安定了下来,也是时候恢复写博客的习惯了。

最近的任务就是针对于Unity下的DynamicBone的迭代,让其能够更加适配于我们自己的项目(主要是布料的模拟)。

关于原生的DynamicBone

原生DynamicBone介绍

DynamicBone是一个Unity的插件,可以用于针对骨骼进行物理模拟。由于开放源码并且工具链集成方便,因此颇受项目青睐 —— 我也是通过直接阅读该插件的源码来逐渐接触Unity开发的。

DynamicBone开放了DampingElasticityStiffnessInert等物理属性接口,并且开发者可以通过配置DynamicBoneCollider来配置相应的碰撞体,来进行碰撞结算。

DynamicBone允许开发者指定对应的根骨骼,从而允许该骨骼的子骨骼进行物理结算,而根骨骼将不进行物理结算。换句话说,这样的物理模型更加适用于例如尾巴、马尾、Ragdoll等带有明显层级结构的物理模拟。

直到我入职为止,DynamicBone

  • 11
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 17
    评论
评论 17
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值