이 페이지에서

Object3D QML Type (Uncreatable)

모든 3D 노드 및 리소스의 추상 기본 유형입니다. 더 보기...

참고: 이 타입은 생성할 수 없는 타입입니다. QML에서 인스턴스화할 수 없습니다.

속성

상세 설명

Object3D는 모든 Qt Quick 3D 유형의 기본 클래스입니다. 여기에는 다음이 포함됩니다:

  • 3D 장면 내의 오브젝트를 나타내는 공간형(Spatial) 타입으로, 일반적으로 위치 및/또는 방향을 가집니다. 예를 들어, ` Model`, ` Camera` 또는 ` Light` 등이 있습니다. 이러한 타입은 ` Node`을 상속받으며, ` `은 다시 `Object3D`를 상속받습니다.
  • 3D 세계의 객체를 직접 나타내지는 않지만, Node 의 하위 클래스에 대한 구성 요소로 작용하여 특정 종류의 데이터를 제공하는 리소스 유형입니다. 여기에는 Material, Geometry, Texture 등이 포함됩니다.

위의 유형들 외에도, Object3D는 Qt Quick items뿐만 아니라 임의의 QObject 인스턴스의 부모가 될 수도 있습니다. 3D 씬에 2D 항목을 추가하는 방법에 대한 자세한 내용은 Qt Quick 3D 의 ‘2D 콘텐츠가 포함된 씬’을 참조하십시오.

Node도 참조하십시오 .

속성 설명서

children : list<Object3D>

resources : list<Object>

children 속성에는 이 객체의 시각적 자식 요소 목록이 포함됩니다. resources 속성에는 이름으로 참조하려는 비시각적 리소스가 포함됩니다.

자식 객체나 리소스를 추가할 때 일반적으로 이러한 속성을 참조할 필요는 없습니다. 기본 ` data ` 속성이 자식 객체를 적절하게 ` children ` 및 ` resources ` 속성에 자동으로 할당하기 때문입니다. 자세한 내용은 QtQuick3D::Object3D::data 문서를 참조하십시오.

참고: QtQuick3D ::Object3D::resources는 이름과 달리 3D 리소스 목록을 반환하지 않습니다. 이 이름은 QQuickItem 의 의미론에서 유래했습니다. 3D 리소스는 QQuickObject3D의 하위 클래스이므로 QtQuick3D::Object3D::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 의 ‘States’항목도 참조하십시오 .

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 States and Animation and Transitions'를 참조하십시오.

참고: 이 속성은 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.