En esta página

CustomCamera QML Type

Define una cámara con una matriz de proyección personalizada. Más...

Import Statement: import QtQuick3D
Inherits:

Camera

Propiedades

Descripción detallada

Un Camera define cómo se proyecta el contenido de la escena 3D sobre una superficie 2D, como un View3D. Una escena necesita al menos un Camera para poder visualizar su contenido.

Es posible posicionar y rotar el Camera como cualquier otro Node espacial de la escena. La ubicación y orientación de Node determinan dónde se encuentra Camera en la escena y en qué dirección está orientado. La orientación predeterminada de Camera tiene su vector hacia delante apuntando a lo largo del eje Z negativo y su vector hacia arriba a lo largo del eje Y positivo.

El tipo CustomCamera proporciona un Camera donde la matriz de proyección se puede personalizar libremente.

El siguiente ejemplo crea una CustomCamera en la posición [0, 200, 300] de la escena, con una inclinación hacia abajo de 30 grados, y una matriz de proyección personalizada basada en distancias de plano cercano y lejano personalizadas, y un campo de visión personalizado.

CustomCamera {
    position: Qt.vector3d(0, 200, 300)
    eulerRotation.x: -30

    property real near: 10.0
    property real far: 10000.0
    property real fov: 60.0 * Math.PI / 180.0
    projection: Qt.matrix4x4(Math.cos(fov / 2) / Math.sin(fov / 2) * (window.height / window.width), 0, 0, 0,
                             0, Math.cos(fov / 2) / Math.sin(fov / 2), 0, 0,
                             0, 0, -(near + far) / (far - near), -(2.0 * near * far) / (far - near),
                             0, 0, -1, 0);
}

Nota: Cuando se utiliza CustomCamera, algunos modos de anti-aliasing (Temporal AA y Progressive AA) no se pueden aplicar correctamente.

Véase también PerspectiveCamera, OrthographicCamera, y FrustumCamera.

Documentación de propiedades

projection : matrix4x4

Esta propiedad define la matriz de proyección de CustomCamera.

© 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.