Camera Follow Script уничтожает Raycast на VR-Hands с поздним обновлением - PullRequest
0 голосов
/ 14 мая 2018

У меня есть Camera-Follow-Script, который следует за игроком с помощью «Late-Update». Он перемещает весь мой VR-плеер, включая VR-стрелки, на которых у меня есть скрипт raycast с визуализацией линий, которая визуализирует raycast.

Дело в том, что радиопередача или линейный передатчик мерцают вверх и вниз. Я пытался исправить это некоторое время, пока не обнаружил, что это на самом деле вызвано поздним обновлением в моем скрипте, который перемещает весь vr-плеер, в который включены руки и raycast.

Когда я меняю свой скрипт следования камеры на «Обновление» вместо «Позднее обновление», все работает нормально с raycast, но движение следования игрока заикается.

Вот мой Camera-Follow-Script:

public Transform player;

public float smoothSpeed = 0.125f;
public Vector3 offset;

private void LateUpdate()
{
    Vector3 desiredPosition = player.position + offset;
    Vector3 smoothedPosition = Vector3.Lerp(player.position, desiredPosition, smoothSpeed);
    transform.position = smoothedPosition;
}

1 Ответ

0 голосов
/ 14 мая 2018

Просто используйте LayerMask и поместите игрока на отдельный слой, чтобы ваш raycast не попал в коллайдеры игрока.Если вы уже не используете слои, это отличный способ ускорить вашу физическую обработку (то есть, вы только радиопередачи с вещами, которые важны с точки зрения взаимодействия с игроком, и физикс не должен проходить ВСЕ коллайдеры в сценечтобы получить ваш хит Raycast.

...