Возьмите сетку из ткани и восстановите ее в Unity 5

Я конвертирую проект Unity 4 в Unity 5. Я понимаю, что InteractiveCloth был изменен на Cloth для повышения производительности.

В моем старом проекте я сохранял меш InteractiveCloth, так что я могу восстановить его в состояние по умолчанию, когда мой уровень начинается заново

// save mesh
netMeshSave = net.mesh;

public void ResetNetMesh()
{
    UnityEngine.Object.DestroyObject(net.mesh);
    net.mesh = (Mesh)Mesh.Instantiate(netMeshSave);        
}

Есть ли предпочтительный способ получить сетку из ткани и восстановить ее в Unity 5?

Я вижу, что Cloth.mesh больше не существует в API Unity 5

1 ответ

Это лучший обходной путь, который я нашел до сих пор. Он восстанавливает сетку ткани в состояние по умолчанию, а не в произвольное сохраненное состояние:

 public void ResetNetMesh()
 {
    net.GetComponent< SkinnedMeshRenderer>().enabled = false;
    net.GetComponent< Cloth>().enabled = false;
    net.GetComponent< Cloth>().enabled = true;
    net.GetComponent< SkinnedMeshRenderer>().enabled = true;
 }
Другие вопросы по тегам