Contenido del Curso
Unreal Engine FPS Game
Unreal Engine FPS Game
Widget de HUD y Fin del Juego
En este capítulo, crearemos tres widgets; uno para el HUD, uno para el escenario de fin de juego y otro para ganar el juego. Estos widgets se implementan en nuestro nivel principal, FirstPersonMap. Así que comienza abriendo el FirstPersonMap si aún no lo has hecho. Es importante mencionar que en esta sección y capítulo, solo crearemos estos widgets y en la siguiente sección configuraremos las instrucciones para mostrarlos realmente una vez que se cumplan sus respectivas condiciones.
¡Sigue el video a continuación para crear los planos de widgets de HUD, Gameover y Winning!
En general, para crear un HUD, necesitas crear un widget blueprint y llamarlo WBP_HUD
. Coloca un panel de lienzo en la jerarquía, luego busca una Barra de Progreso y colócala donde quieras que esté la barra de salud. En el panel de detalles, puedes cambiar el Porcentaje para ver cómo se vería si la barra estuviera llena. Puedes ajustar el color y otras propiedades de la barra de progreso en el panel de detalles.
Nota
La propiedad Percent comienza desde
0.00
y sube hasta1.00
. Esto significa que0.5
es igual a50%
.
Para conectar la barra de progreso al PlayerHealth, necesitas hacer clic en Bind frente a Percent y crear una nueva vinculación. Desde allí, obtienes el PlayerHealth convirtiendo el Player Pawn a BP_FirstPersonCharacter
y tomando el PlayerHealth. Usa el nodo To Float para convertir el entero a un flotante, y luego divide el valor por 100
. Conecta el resultado de la división al nodo de retorno de la vinculación y listo!
En cuanto a los widgets de Gameover y Winning, lo que quieres hacer es crear estos widgets, usar una imagen de fondo de tu elección y colocar dos botones en el panel de lienzo. Uno para Reiniciar y otro para Menú Principal. Usa el OnClicked event
y utiliza Open Level para reabrir el FirstPersonMap y L_MainMenu
cuando el jugador haga clic en los botones de Reiniciar y Menú Principal respectivamente.
¡Gracias por tus comentarios!