void Update()
    {
        if (isHittingTarget)
        {
            return;
        }

        LaserVisual.SetDistance(defaultReticleDistance);
    }
 public override void OnPointerHover(RaycastResult raycastResult, bool isInteractive)
 {
     LaserVisual.SetDistance(raycastResult.distance);
     isHittingTarget = true;
 }
 protected override void Start()
 {
     base.Start();
     LaserVisual.GetPointForDistanceFunction = GetPointAlongPointer;
     LaserVisual.SetDistance(defaultReticleDistance, true);
 }
 /// <inheritdoc/>
 public override void OnPointerHover(RaycastResult raycastResult, bool isInteractive)
 {
     LaserVisual.SetDistance(raycastResult.distance);
     isHittingTarget = true;
     Debug.Log("Raycast" + raycastResult.worldPosition.ToString());
 }