清除对布料模拟有影响的挂起的变换更改。
当布料的变换发生变化时,布料不会直接跟随该变化,而是 SkinnedMeshRenderer 的顶点的新位置将在下一次布料模拟更新中通过配置的约束影响布料,这样移动变换将导致布料的真实运动。
您可以在布料上调用 ClearTransformMotion 来更改此行为。调用 ClearTransformMotion 将使布料模拟粒子随着变换一起移动,这样变换移动就不会对布料模拟产生影响。如果您想将角色从场景中的一个点传送到另一个点,而无需让布料突然跳到指定位置,这将非常有用。
using UnityEngine;
public class ExampleClass : MonoBehaviour { Vector3 newPosition;
void Start() { transform.position = newPosition; GetComponent<Cloth>().ClearTransformMotion(); } }