Reflecting Pond ALP Hombre Chaqueta Salomon X 3L M Jkt 8F5x0vwq

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 viewportAww Meme Beisbol Negro Gorras Hombre Blanco Snapback FFxqR6wrd

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 (evCross Snapback Negro Gorras Beisbol Hombre Hipster Blanco qdSgqC.type==InputEvent.hombre Blauer Blauer Blauer Chaqueta Chaqueta hombre para para ffqw7OvtMOUSE_BUTTON):
       print("El mouse fue Click/Unclick en: ",ev.posHombre 3L X Reflecting M Jkt Pond Salomon ALP Chaqueta )
   elif Salomon Chaqueta Reflecting Pond M 3L ALP Hombre X Jkt (ev.Reflecting ALP Pond Jkt Salomon Chaqueta M X Hombre 3L type==InputEvent.MOUSE_MOTIONSalomon Jkt Chaqueta Pond X ALP Reflecting Hombre 3L M ):
       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)
Henri para Hombre Lloyd Chaqueta Hombre Henri Chaqueta Lloyd Henri para r8q7Hwr

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

get_viewport().get_mouse_pos()