Working EyeTracking with moving Hitpoint

This commit is contained in:
Thorbjoern
2025-06-02 19:26:42 +02:00
parent a5f152a23f
commit 0cb48fe1a9
17 changed files with 10909 additions and 692 deletions
@@ -0,0 +1,35 @@
using Cysharp.Threading.Tasks;
using GhostSystem;
using NUnit.Framework;
using UnityEngine;
public class EyeTrackingCollisionPoints : MonoBehaviour
{
[SerializeField]
private float rayDistance = 1.0f;
[SerializeField]
private LayerMask layersToInclude;
public GameObject hitPointPrefab;
private GameObject hitPoint;
private void FixedUpdate()
{
RaycastHit hit;
Vector3 rayCastDirection = transform.TransformDirection(Vector3.forward) * rayDistance;
if ( hitPoint != null && Physics.Raycast(transform.position, rayCastDirection, out hit, rayDistance, layersToInclude))
{
hitPoint.transform.position = new Vector3(hit.point.x, hit.point.y, hit.point.z);
}
}
public Transform SpawnHitPoint() // Wird durch LocalPlayerReferences aufgerufen, um nicht zu oft den GhostRecorder zu suchen.
{
hitPoint = Instantiate(hitPointPrefab);
return hitPoint.transform;
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 333c9f69cc49e564ba4816a87e7255bb