En esta página

WasdController QML Type

Controla la posición y orientación de los nodos con las teclas y el ratón. Más...

Import Statement: import QtQuick3D.Helpers
Inherits:

Item

Propiedades

Descripción detallada

Este helper permite al usuario controlar un nodo usando W, A, S, D, las flechas del teclado y el ratón. Normalmente el nodo controlado es una Cámara, especificada en la propiedad controlledObject.

Añadir un WasdController puede ser muy útil tanto en aplicaciones que desean proporcionar una forma estándar de navegar por la escena, y también como una medida temporal durante el desarrollo y la solución de problemas, ya que permite inspeccionar la escena en tiempo de ejecución a través de la familiar navegación con el teclado y el ratón.

Las combinaciones de teclas son las siguientes

  • W o up - avanzar
  • S o down - retroceder
  • A o left - desplazamiento a la izquierda
  • D o right - desplazarse a la derecha
  • R o page up - moverse hacia arriba
  • F o page down - mover hacia abajo
  • shift junto con otras teclas - moverse más rápido, según shiftSpeed

El siguiente fragmento muestra cómo se puede añadir un objeto WasdController. Por defecto, tanto la navegación basada en teclas como la basada en ratón están activas, por lo que en la mayoría de los casos no es necesaria ninguna configuración adicional:

View3D {
    anchors.fill: parent
    camera: camera
    PerspectiveCamera {
        id: camera
        position: Qt.vector3d(0, 0, 600)
    }
    ...
}

WasdController {
    controlledObject: camera
}

Documentación de propiedades

acceptedButtons : enumeration [default: Qt.LeftButton]

Especifica los botones aceptados por el controlador.

Véase también DragHandler y MultiPointHandler.

backSpeed : real [default: 5]

Especifica la velocidad de navegación cuando se pulsa la tecla Atrás.

controlledObject : QtQuick3D::Node

Especifica el nodo a controlar. Normalmente se trata de un objeto Cámara.

downSpeed : real [default: 5]

Especifica la velocidad de navegación cuando se pulsa la tecla abajo.

forwardSpeed : real [default: 5]

Especifica la velocidad de navegación cuando se pulsa la tecla de avance.

inputsNeedProcessing : bool [read-only]

Esta propiedad es verdadera cuando hay entradas que necesitan ser procesadas.

keysEnabled : bool [default: true]

Activa los controles de teclas.

leftSpeed : real [default: 5]

Especifica la velocidad de navegación cuando se pulsa la tecla izquierda.

mouseEnabled : bool [default: true]

Activa los controles del ratón.

rightSpeed : real [default: 5]

Especifica la velocidad de navegación cuando se pulsa la tecla derecha.

shiftSpeed : real [default: 3]

Especifica el multiplicador de velocidad que se activa al pulsar la tecla Mayús.

speed : real [default: 1]

Especifica la velocidad de navegación.

upSpeed : real [default: 5]

Especifica la velocidad de navegación cuando se pulsa la tecla arriba.

xInvert : bool [default: false]

Invierte los controles del eje x.

xSpeed : real [default: 0.1]

Especifica la velocidad de navegación cuando el ratón se mueve a lo largo del eje X.

yInvert : bool [default: true]

Invierte los controles del eje y.

ySpeed : real [default: 0.1]

Especifica la velocidad de navegación cuando el ratón se mueve a lo largo del eje Y.

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.