Pantalón Pantalones Color Mujer Vaqueros Sólido Azul Skinny Denim Oscuro Lápiz Jeans Rotos Elástico fvfXFtR

Acerca

La razón de este pequeño tutorial es aclarar muchos errores comunes sobre las coordenadas de entrada, obtener la posición del mouse y resolución de pantalla, etc.

Coordenadas de pantalla de hardware

Usar coordenadas de hardware tiene sentido en el caso de escribir UIs complejas destinada a correr en PC, como editores, MMOs, herramientas, etc. De todas formas, no tiene mucho sentido fuera de ese alcance.

Coordenadas de pantalla de viewportNeon Yellow Jacket para Gore Hombre Wear Impermeable 100193 Active Tex Neón Ciclismo Chaqueta C5 Negro Gore Gore 2017 Amarillo 8aTwxqPwI

Godot usa viewports para mostrar contenido, los cuales puede ser escalados de varias maneras (vee el tutorial Resoluciones múltiples). Usa, pues, las funciones de los nodos para obtener las coordenadas de mouse y tamaño del viewport, por ejemplo:

func _input(ev):
   # Mouse en coordenadas viewport

   if (evpara Wear Jacket Negro Ciclismo Gore Hombre 100193 Gore Active C5 Tex Impermeable Gore Chaqueta IZPdIq.type==InputEvent.Chaqueta Azul Navy Look New Aviator 41 Hombre zqnwFIZ0EMOUSE_BUTTON):
       print("El mouse fue Click/Unclick en: ",ev.posDenim Sólido Pantalón Lápiz Oscuro Vaqueros Azul Mujer Skinny Pantalones Jeans Rotos Elástico Color )
   elif Sólido Denim Jeans Oscuro Pantalones Skinny Elástico Vaqueros Azul Color Rotos Lápiz Pantalón Mujer (ev.Jeans Pantalones Denim Oscuro Rotos Pantalón Azul Sólido Lápiz Vaqueros Color Elástico Mujer Skinny type==InputEvent.MOUSE_MOTIONPantalón Pantalones Jeans Rotos Elástico Oscuro Color Vaqueros Denim Azul Sólido Mujer Skinny Lápiz ):
       print("Movimiento de mouse en: ",ev.pos)

   # Imprime el tamaño del viewport

   print("La resolución del viewport es: ",get_viewport_rect().size)

func _ready():
    set_process_input(true)
Aviator Bronze 91 Look Hombre Chaqueta New Marrón wCzAqC

Alternativamente es posible pedir al viewport la posición del mouse:

get_viewport().get_mouse_pos()