Sombreador de pulsos : MRTK2
Utilice el sombreador de pulsos para animar un efecto de pulso visual sobre la reconstrucción de la superficie, malla de mano articulada o cualquier otra malla.
Sombreador y material
Los siguientes materiales usan SR_Triangles sombreador. Puede configurar varias opciones, como el color de relleno, el color de línea y el color de pulso.
- MRTK_Pulse_SpatialMeshBlue.mat
- MRTK_Pulse_SpatialMeshPurple.mat
- MRTK_Pulse_ArticulatedHandMeshBlue.mat
- MRTK_Pulse_ArticulatedHandMeshPurple.mat
Requisitos previos
Para el ejemplo de malla espacial, asegúrese de que MRTK_Pulse_SpatialMeshBlue.mat o MRTK_Pulse_SpatialMeshPurple.mat esté asignado en el objeto MixedRealityToolkit -> Spatial Awareness Profile - Display Settings ->> Visible Material.
Para el ejemplo de malla de mano, asegúrese de que MRTK_Pulse_ArticulatedHandMeshBlue.mat o MRTK_Pulse_ArticulatedHandMeshPurple.mat esté asignado en ArticulatedHandMesh.prefab, que se debe asignar en configuración de MRTK - Entrada ->> Seguimiento de manos -> Objeto prefabricado de malla de mano.
Funcionamiento
El sombreador de malla de mano usa UVs para asignar el pulso a lo largo de la malla de la mano y para atenuar la muñeca. El sombreador de reconstrucción de la superficie usa las posiciones del vértice para asignar el pulso.
Ejemplo de malla espacial: PulseShaderSpatialMeshExample.unity
De forma similar a la experiencia de shell de HoloLens 2, puede apuntar y pulsar en el aire con el rayo de mano para generar un efecto de pulso en la malla espacial. La escena de ejemplo contiene el objeto ExampleSpatialMesh, que es un objeto de malla espacial de prueba para el modo de juego de Unity. Este objeto se deshabilitará y ocultará en el dispositivo.
El script PulseShaderSpatialMeshHandler.cs genera el efecto de pulso en la malla espacial en la posición del punto de posicionamiento si PulseOnSelect
es true. La Auto Pulse
propiedad también se puede establecer en true en el propio material para una animación de repetición. En la escena de ejemplo, este script se adjunta al objeto prefabricado PulseShaderSpatialMeshParent. Este objeto prefabricado se hace referencia en el perfil de reconocimiento espacial a través de la propiedad Prefab de malla espacial en tiempo de ejecución. Durante el tiempo de ejecución, se crea una instancia del objeto prefabricado PulseShaderSpatialMeshParent y se agrega a la jerarquía de malla espacial (solo en el dispositivo, este comportamiento no se puede observar en el editor).
Ejemplo de malla de mano: PulseShaderHandMeshExample.unity
En esta escena de ejemplo se muestra la visualización de malla de mano mediante el sombreador de pulsos. Cuando el dispositivo HoloLens detecta una mano, la animación de pulso se desencadenará una vez. Estos comentarios visuales pueden aumentar la confianza de interacción del usuario.
El script PulseShaderHandMeshHandler.cs genera efecto de pulso en el material asignado. De forma predeterminada, se comprueba "Pulse On Hand Detected".