Ответ: Подскажите как правильно сделать ...
Перемещение
На террайн вешаем тег "Floor"
Ray _ray; RaycastHit _hit; float _speed=20f; bool _go=false; void Update() { if (Input.GetButtonDown("Fire1")) { _ray=gameObject.camera.ScreenPointToRay(Input.mousePosition); if (Physics.Raycast(_ray, out _hit, Mathf.Infinity, 100)) { if (_hit.collider.tag == "Floor") { GameObject _waypoint = new GameObject(); _waypoint.transform.position=_hit.point; _go=true; animation.Play(); } } } if(_go) { transform.Translate(Vector3.Normalize(_waypoint.transform.position- transform.position) * Time.deltaTime * _speed); } if(transform.position == _waypoint.transform.position) { _go=false; animation.Stop(); Destroy(_waypoint); } }
В общих чертах так.Это не рабочий скрипт,это логика.
__________________
Нам суждено построить мосты и храмы,которых никогда не существовало и не могло существовать в природе.
Последний раз редактировалось Lestar, 26.07.2011 в 00:42.
|