EyeGazeProvider nulo incluso después de asegurarse de que el proveedor está disponible
– UnityAssets3Free
hola , me llamo jorge y esta vez os traigo
esta unity pregunta
Estoy tratando de registrar el Vector3 correspondiente a los datos de la mirada en un Hololens 2. Mi salida .csv está bien en el editor, pero ejecutándolo en HL2 real puedo comprobar que mi EyeGazeProvider es nulo y, por lo tanto, no se registra ningún dato. En el siguiente código (un script de MS de ejemplo que estoy modificando) nunca entro en el bucle después de marcar «eyeGazeProvider! = null».
Habilité la función en Unity para EyeGaze y verifiqué .appxmanifest. Además, tengo XRSDK Windows Mixed Reality Eye Gaze Provider y su contraparte OpenXR como parte de mis proveedores de datos de entrada. También tengo un perfil EyeGazeInteraction según sea necesario. Estoy realmente confundido aquí.
buscar proveedores
Configuración de OpenXr
var eyeGazeProvider = CoreServices.InputSystem?.EyeGazeProvider;
if (eyeGazeProvider != null)
gameObject.transform.position = eyeGazeProvider.GazeOrigin + eyeGazeProvider.GazeDirection.normalized * defaultDistanceInMeters;
EyeTrackingTarget lookedAtEyeTarget = EyeTrackingTarget.LookedAtEyeTarget;
// Update GameObject to the current eye gaze position at a given distance
if (lookedAtEyeTarget != null)
// Show the object at the center of the currently looked at target.
if (lookedAtEyeTarget.EyeCursorSnapToTargetCenter)
Ray rayToCenter = new Ray(CameraCache.Main.transform.position, lookedAtEyeTarget.transform.position - CameraCache.Main.transform.position);
RaycastHit hitInfo;
UnityEngine.Physics.Raycast(rayToCenter, out hitInfo);
gameObject.transform.position = hitInfo.point;
else
// Show the object at the hit position of the user's eye gaze ray with the target.
gameObject.transform.position = eyeGazeProvider.GazeOrigin + eyeGazeProvider.GazeDirection.normalized * defaultDistanceInMeters;
else
// If no target is hit, show the object at a default distance along the gaze ray.
gameObject.transform.position = eyeGazeProvider.GazeOrigin + eyeGazeProvider.GazeDirection.normalized * defaultDistanceInMeters;
0
nota: si aun no se resuelve tu pregunta por favor dejar un comentario y pronto lo podremos de nuevo , muchas gracias
eso es todo,espero que te funcione