我有一个Camera-Follow-Script跟随播放器使用“Late-Update”。它会移动我的整个VR-Player,包括VR-Hands,我有一个光线投射脚本和一个可视化光线投影的线条渲染器。
事实是,光线投射或线条播放器上下闪烁。我试着修复它一段时间,直到我发现它实际上是因为我的脚本中的更新后期正在移动整个vr-player,其中包含了手和光线投射。
当我将我的相机跟随脚本更改为“更新”而非“更新后期”时,一切都在使用光线投射,但播放器跟随移动是口吃。
这是我的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;
}
答案 0 :(得分:0)
只需使用一个LayerMask并将玩家放在一个单独的图层上,这样你的光线投射就不会碰到玩家的对手。如果你没有使用图层,那么它是加速你的物理处理的一个好方法(也就是说,你只能从玩家互动的角度对一些重要的东西进行光线投射,而physix不需要经过场景中的所有碰撞器获取你的光线投射。