У меня есть следующий код в функции Update
:Физика RayCast Перемещение объекта к камере или происхождения
if (Input.GetButton("Fire1"))
{
mouseFollow = Camera.main.ScreenPointToRay(Input.mousePosition);
if (Physics.Raycast(mouseFollow, out hit))
{
target_point = hit.point;
if (blade_created == false)
{
blade = (GameObject)Instantiate(Blade, target_point, Quaternion.Euler(90, 0, 0));
blade_created = true;
}
if (blade != null) blade.transform.position = hit.point;
Debug.DrawLine(mouseFollow.origin, target_point, Color.red);
}
}
GameObject лезвие следует положение мыши правильно, но когда я, удерживая кнопку (FIRE1), без эффекта перемещения мыши лезвие (GameObject) перемещается к камере, которая является источником пересекающегося луча. Почему это происходит? Возможно, есть проблема с RaycastHit
экземпляром?
Я инициализировал его как в области «Обновление функции», так и в верхней части кода (глобальная область.), Но ничего не изменилось. Как это можно исправить? Спасибо заранее.
Я думаю, что избиратель не понимал английский. Этот код проверен и работает нормально. – Nick