c# - 如何在 Unity3D 中创建像物理一样的面条(绳子/绳子)?
问题描述
我正在尝试创建可碰撞的面条,它会在我的游戏中被其他对象推动。
我尝试在 Blender 中创建装配/蒙皮网格,然后将骨骼与 Unity 中的关节连接起来,并尝试了具有各种设置的所有关节,但是当施加到这些骨骼上的力超过最小力时它会抖动。然后我尝试将这些骨骼与脚本绑定以保持与连接骨骼(下一个或前一个骨骼)的固定距离,该距离仅相对于一个骨骼/侧面,如果它从一端拉出效果很好;但我需要它相对于双方都像面条一样。蒙皮网格可以保持完整,所以我认为我需要一些方法来控制这些骨骼/片段。任何帮助将不胜感激。非常感谢您的时间、精力和考虑 :)。
每个节点保持固定距离的脚本:
void Update() {
// To keep initial distance
Vector3 vec = connectedNode.position - transform.position;
if (vec.magnitude > initialDistance)
transform.position +=
(vec.magnitude - initialDistance) * vec.normalized;
}
解决方案
推荐阅读
- javascript - javascript中IF语句中的多个OR条件
- pdf - 导出 PDF 图形,形状轮廓和填充区域不分离
- r - 地址解析:识别模式,然后将值剪切并粘贴到同一列中的正确位置
- python - 将 Htmlunit 与 selenium 和 python 一起使用
- python - ValueError:时间数据“2018 年 5 月 23 日”与格式“%Y%b%d”不匹配(匹配)
- google-apps-script - 如何在谷歌脚本中修复“Blob 对象必须具有此操作的非空数据。(第 6 行,文件“代码”)”
- angular - Angular 如何知道构造函数的类型是什么?
- google-app-engine - 如何在 App Engine 上部署标准 Go 应用
- java - 无法创建建造动物园的容器
- haskell - 在 Haskell 中折叠用户输入