CustomCamera QML 类型

定义了一个具有自定义投影矩阵的摄像机。 更多...

导入语句import QtQuick3D
继承于

Camera

属性

详细描述

摄像机 定义了 3D 场景内容如何在 2D 表面(例如 View3D)上投影。场景至少需要有一个 摄像机 才能可视化其内容。

可以像场景中任何其他空间 节点 一样定位和旋转 摄像机。节点的位置和方向决定了 摄像机 在场景中的位置以及其面对的方向。默认情况下,摄像机 的前向向量沿着负 Z 轴,上升向量沿着正 Y 轴。

CustomCamera 类型提供了一种可以自由定制投影矩阵的 摄像机

以下示例在场景中的位置 [0, 200, 300] 处创建了一个 CustomCamera,设定向下俯仰角为 30 度,并具有一个基于自定义近、远平面距离和自定义视场的自定义投影矩阵。

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);
}

注意:使用 CustomCamera 时,某些抗锯齿模式(临时抗锯齿和进度抗锯齿)无法正确应用。

另请参阅透视摄像机正交摄像机视锥摄像机

属性文档

projection : matrix4x4

此属性定义了 CustomCamera 的投影矩阵。


© 2024 The Qt Company Ltd. 本文档中包含的贡献版权属于其各自的拥有者。本文档根据自由软件基金会的 GNU 自由文档许可证版本 1.3 发布的条款进行许可。Qt 及其标志是 The Qt Company Ltd 在芬兰和其他世界国家的商标。所有其他商标均为其各自所有者的财产。