Добавлено (16.11.2012, 18:30) --------------------------------------------- Хм, сделал кар по туториалу http://habrahabr.ru/post/115557/ , запустил... сразу же у машины колеса выгнулись на 90градусов, а сама машина летает на поворотах в прямом смысле слова 0_(\. Знает кто нибудь более проработаную физику авто?
[AddComponentMenu("infinite camera-control/mouse orbit with zoom")] public class MouseLookPlus : MonoBehaviour { public Transform target; public float xSpeed = 12.0f; public float ySpeed = 12.0f; public float zoomMin = 1.0f; public float zoomMax = 20.0f; public float distance = 2; public float Ypos; float x = 0.0f; float y = 0.0f; bool isActivated;
// Use this for initialization void Start () { Vector3 angles = Transform.eurlerAngles; x = angles.y; y = angles.x; position = - (transform.forward*distance) + target.position; transform.position = position; Ypos = transform.position.y;
}
// Update is called once per frame void LateUpdate () { if (Input.GetMouseButtonDown(1)){ isActivated = true; } if (Input.GetMouseButtonUp (1)) { isActivated = false;
}
if (target && isActivated) { x += Input.GetAxis("MouseX")*xSpeed; y -= Input.GetAxis("MouseY")*ySpeed; Transform.RotateAround(target.position,transform.up, x); Transform.RotateAround(target.position,transform.right, y); Transform.rotation = Quaternion.Euler(Transform.rotation.x , Transform.rotation.y, 0); Transform.rotation = Quaternion.LookRotation(target.position - Transform.position); Ypos = Transform.position.y; x = 0; y = 0; }else{ if (Input.GetAxis("Mouse ScroolWheel") !=0){ distance = Vector3.distance (Transform.position , target.position) ; distance = ZoomLimit(distance - Input.GetAxis("Mouse ScrollWheel")*scrollSpeed, zoomMin, zoomMax); position = -(Transform.forward*distance) + target.position; Ypos = position.y; Transform.position = position; } }
float d2 = Vector3.Distance (Transform.position, target.position); if (d2!=distance) { position = -(Transform.forward*distance) + target.position; position.y = Ypos; transform.position = position; } } public static float zoomLimit(float dist, float min, float max){ if (dist<min) dist=min; if(dist>max) dist=max; return dist; } }
kaisft, сделал все, как должно быть с камерой (8тутор), юнити выдает ОШИБКУ!!! При этом не одну! Вот что пишет :
Code
Assets/MouseLookPlus.cs(58,36): error CS1502: The best overloaded method match for `UnityEngine.Vector3.Distance(UnityEngine.Vector3, UnityEngine.Vector3)' has some invalid arguments
Assets/MouseLookPlus.cs(61,25): error CS0103: The name `position' does not exist in the current context
Всем доброго времени суток! Вопрос по камере. Как сделать камеру, движущуюся с помощью мышки (приближение/удаление/вращение), если можно скиньте туторы (помню где то здесь был видеоурок по этой теме, можно и на него ссылку).
Вообщем хотел сделать вкл/выкл фар на авто, но столкнулся с такой проблемой. При добавлении двух спотлайдов, один из них не светит. Может кто знает как решить?
Здраствуйте, администрация! Скажите пожалуйста занимаетесь ли вы Баннерообменом? Если да, то скажите размер и цену за месяц размещения. Заранее спасибо!
Сообщение отредактировал JHawk - Воскресенье, 04 Ноября 2012, 14:08
Сегодня сервер недоступен, так как идет обновление мода!!!
Добавлено (02.11.2012, 14:00) --------------------------------------------- В новом обновлении будет очень много домов, авто магазинов, работ и организаций.