このページでは

Object3D QML Type

すべての3Dノードとリソースの抽象的な基本型。詳細...

プロパティ

詳細説明

Object3D は、すべてのQt Quick 3D タイプの基本クラスです。これには以下が含まれます:

  • 3Dシーン内のオブジェクトを表す空間型は、通常、位置や方向を持つ。Model Camera Lightこのような型はNode を継承し、 は Object3D を継承します。
  • リソース型は、それ自身が3D世界のオブジェクトを表すのではなく、Node のサブクラスのコンポーネントとして機能し、何らかのデータを提供する。これには、MaterialGeometryTexture などがあります。

上記のタイプに加え、Object3Dは、次のタイプの親としても機能します。 Qt Quick itemsまた、任意のQObject インスタンスの親としても機能します。3D シーンに 2D アイテムを追加する方法については、Qt Quick 3D Scenes with 2D Content を参照してください。

Nodeも参照して ください。

プロパティ ドキュメント

children : list<Object3D>

resources : list<Object>

children プロパティには、このオブジェクトの視覚的な子のリストが含まれます。resources プロパティには、名前で参照したい非ビジュアル・リソースが含まれます。

通常、子オブジェクトやリソースを追加する際にこれらのプロパティを参照する必要はありません。デフォルトのdata プロパティは、子オブジェクトを自動的にchildrenresources プロパティに適切に割り当てるからです。詳しくは、QtQuick3D::Object3D::data のドキュメントを参照してください。

注意: QtQuick3D::Object3D::resources は、名前に反して 3D リソースのリストを返しません。QQuickItem3DリソースはQQuickObjec3Dのサブクラスなので、QtQuick3D::Objec3D::childrenのリストで返されます。

data : list<Object> [default]

dataプロパティは、Object3D チルドレンとリソースをオブジェクトの中に自由に混在させることができます。データ・リストにObject3D を割り当てると、それは子になり、他のオブジェクト・タイプを割り当てると、それはリソースとして追加されます。

ですから、次のように書くことができます:

と書くことができます:

Item {
    children: [
        Node {},
        DirectionalLight {}
    ]
    resources: [
        Timer {}
    ]
}

data プロパティは、Object3D のデフォルト・プロパティであるため、すべての子オブジェクトは自動的にこのプロパティに割り当てられるので、一般的には参照する必要はないはずです。

parent : Object3D

このプロパティは、3D シーンにおけるObject3D の親を保持する。

注: Object3D の親は、そのオブジェクトの親と同じとは限らない。これは、オブジェクトの親が、例えばシーンのルートオブジェクトのように、Object3D 型でないアイテムである可能性があるために必要である。

state : string

このプロパティは、オブジェクトの現在の状態の名前を保持する。

アイテムがデフォルト状態、つまり明示的な状態が設定されていない場合、このプロパティは空文字列を保持します。同様に、このプロパティに空の文字列を設定することで、アイテムをデフォルトの状態に戻すことができます。

Qt Quick Stateも参照してください

states : list<State>

このプロパティは、このオブジェクトの可能な状態のリストを保持する。このオブジェクトの状態を変更するには、state プロパティをこれらの状態のいずれかに設定するか、state プロパティを空の文字列に設定してオブジェクトをデフォルトの状態に戻します。

このプロパティは、State オブジェクトのリストとして指定されます。例えば、以下は "above_state "と "below_state "の状態を持つQtQuick3D::Nodeです:

import QtQuick
import QtQuick3D

Node {
    id: root
    y: 0

    states: [
        State {
            name: "above_state"
            PropertyChanges { target: root; y: 100 }
        },
        State {
            name: "below_state"
            PropertyChanges { target: root; y: -100 }
        }
    ]
}

状態と遷移の詳細については、Qt Quick の「状態」と、 Qt Quick の「アニメーションと遷移」を参照してください。

注意: このプロパティはQtQuick::Item::statesと同じ働きをしますが、QtQuick3D::Object3DはQtQuick::Itemのサブクラスではないので必要です。

QtQuick3D::Object3D::transitionsも参照してください

transitions : list<Transition>

このプロパティは、このオブジェクトのトランジションのリストを保持する。これらは、オブジェクトがそのstate を変更するたびに適用されるトランジションを定義する。

このプロパティは、Transition オブジェクトのリストとして指定されます。例えば

import QtQuick
import QtQuick3D

Node {
    transitions: [
        Transition {
            //...
        },
        Transition {
            //...
        }
    ]
}

ステートとトランジションの詳細については、Qt Quick ステートと アニメーションとトランジション(Qt Quick)を参照してください。

注意: このプロパティは、QtQuick::Item::transitions と同じ働きをしますが、QtQuick3D::Object3D は QtQuick::Item のサブクラスではないので必要です。

QtQuick3D::Object3D::statesも参照してください

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