Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Unreal Motion Graphics (UMG) es el sistema de interfaz de usuario integrado de Unreal Engine, que se usa para crear interfaces como menús y cuadros de texto. Las interfaces de usuario creadas con UMG constan de widgets. Le guiaremos a través de la creación de un nuevo widget, su adición al espacio mundial y la habilitación de la interacción mediante el teclado del sistema como ejemplo. Puede obtener más información sobre UMG en la documentación oficial de Unreal Engine.
Creación de un widget
- Cree un plano técnico de widget para diseñar la interfaz de usuario del juego:
- Abra el nuevo plano técnico y agregue componentes de la paleta al lienzo. En este caso, hemos agregado dos componentes de cuadro de texto de la sección "Entrada":
- Seleccione un widget en la ventana Jerarquía o Diseñador y modifique los parámetros en el panel de detalles. En este caso, hemos agregado algunos valores predeterminados de "Texto de sugerencia" y un color de tono que aparece al mantener el puntero sobre el cuadro de texto. Un cuadro de texto mostrará un teclado virtual en HoloLens cuando interactúe con:
- Los eventos también se pueden suscribir a en el panel de detalles:
Agregar un widget al espacio mundial
- Cree un nuevo actor, agregue un componente widget y agregue el actor a la escena:
- En el panel de detalles del widget, establezca la clase widget en el plano técnico del widget creado anteriormente:
- Para un widget de texto, asegúrese de que recibir entrada de hardware está desactivada, por lo que solo actualizamos su texto desde el teclado virtual:
Interacción del widget
Los widgets de UMG normalmente reciben la entrada de un mouse. En HoloLens o VR, es necesario simular un mouse con un componente de interacción de widgets para obtener los mismos eventos.
- Cree un nuevo actor, agregue un componente de interacción del widget y agregue el actor a la escena:
- En el panel de detalles del componente Interacción del widget:
- Establezca la distancia de interacción en el valor de distancia que desee.
- Establecer el origen de interacción en personalizado
- Para el desarrollo, establezca Mostrar depuración en true:
El valor predeterminado de Interaction Source es "World", que debe enviar raycasts en función de la posición mundial del componente Interacción del widget. En AR y VR, eso no es así. La habilitación de "Mostrar depuración" y la adición de un tono de puntero a los widgets es importante comprobar que el componente de interacción del widget está haciendo lo que espera. La solución consiste en usar un origen personalizado y establecer el raycast en el gráfico de eventos desde el rayo de mano.
Aquí llamamos a esto desde Event Tick:
A continuación, agregue eventos de puntero del mouse virtual al componente de interacción del widget que reacciona a la entrada de HoloLens. En este caso, envíe un evento de prensa del mouse izquierdo cuando se agarre la mano y un evento de liberación del mouse izquierdo cuando no se agarra:
Ahora, al implementar la aplicación en HoloLens 2, verá un rayo de mano que se extiende desde la derecha. Si lo diriges a uno de los cuadros de texto editables y pulsaciones de aire, el teclado del sistema aparecerá delante de ti y te permitirá escribir texto.
Nota:
El teclado del sistema HoloLens requiere Unreal Engine 4.26 o posterior. Además, el teclado no aparecerá cuando la aplicación se transmita desde el editor de Unreal al casco, solo cuando la aplicación se ejecuta en el dispositivo.