И получилось вот что а хочется чтоб плавно выравнивал, типа как балансировал.
http://download63.files.mail.ru/1RWDHI/de3b219bc926646818c36a0ad3ae9da9/WebPlayer.unity3d
Синтаксис:
Используется csharp
using UnityEngine;
using System.Collections;
public class vestibularBot : MonoBehaviour
{
private RaycastHit hit;
void Start ()
{
}
void Update ()
{
if(Physics.Raycast(new Vector3(transform.position.x, 500, transform.position.z), new Vector3(0, -1, 0), out hit, 500))
{
Quaternion q = Quaternion.FromToRotation(Vector3.up, hit.normal);
Quaternion newRot = q * Quaternion.AngleAxis(transform.rotation.eulerAngles.y, Vector3.up);
transform.rotation = Quaternion.Slerp(transform.rotation, newRot, 0.5f);
}
}
}
using System.Collections;
public class vestibularBot : MonoBehaviour
{
private RaycastHit hit;
void Start ()
{
}
void Update ()
{
if(Physics.Raycast(new Vector3(transform.position.x, 500, transform.position.z), new Vector3(0, -1, 0), out hit, 500))
{
Quaternion q = Quaternion.FromToRotation(Vector3.up, hit.normal);
Quaternion newRot = q * Quaternion.AngleAxis(transform.rotation.eulerAngles.y, Vector3.up);
transform.rotation = Quaternion.Slerp(transform.rotation, newRot, 0.5f);
}
}
}