Paul Siberdt писал(а):И, вот, уже две мои штуки можно вешать на вашу, дабы концы IK-солверов пружин позиционировались автоматически.
Типа так. Но, по-моему, это жуткий перебор.
Paul Siberdt писал(а):И, вот, уже две мои штуки можно вешать на вашу, дабы концы IK-солверов пружин позиционировались автоматически.
Paul Siberdt писал(а):Вот, поиграйтесь в апдейте с этой штукой:Синтаксис:Используется csharpusing UnityEngine;
public class MeshBender : MonoBehaviour
{
public float coeff; // алхимический коэффициент, заменяет параметр радиуса кривизны
public Vector3 angle; // алхимический коэффициент, задает представление об осевых поворотах
public Vector3 center; // вроде как должен быть центр кручения в локальных координатах меша
private Transform t;
private Mesh m;
private Vector3[] baseVertices; // здесь храним начальную вертексдату
private Vector3[] resultVertices; // сюда считаем вертексдату кручения
void Start()
{
t = transform;
m = t.GetComponent<MeshFilter>().mesh;
baseVertices = m.vertices;
resultVertices = new Vector3[baseVertices.Length];
}
void Update () {
for (int i = 0; i < baseVertices.Length; i++)
{
// угол закручивания веркекса под алхимическим коэффициентом
Quaternion rotation = Quaternion.Euler(angle.x * coeff * i, angle.y * coeff * i, angle.z * coeff * i);
// находим позицию закрученного вертекса
resultVertices[i] = center + rotation*(baseVertices[i] - center);
}
m.vertices = resultVertices;
}
}
Разберитесь со скриптом, думаю, его вполне можно приспособить под пружину.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2