이 페이지에서

QQuickGraphicsDevice Class

QQuickGraphicsDevice 클래스는 그래픽 장치나 컨텍스트를 나타내는 네이티브 그래픽 객체를 담는 불투명한 컨테이너를 제공합니다. 더 보기...

헤더: #include <QQuickGraphicsDevice>
CMake: find_package(Qt6 REQUIRED COMPONENTS Quick)
target_link_libraries(mytarget PRIVATE Qt6::Quick)
qmake: QT += quick
다음부터: Qt 6.0부터

공개 함수

정적 공용 멤버

QQuickGraphicsDevice fromAdapter(quint32 adapterLuidLow, qint32 adapterLuidHigh, int featureLevel = 0)
QQuickGraphicsDevice fromDeviceAndCommandQueue(MTLDevice *device, MTLCommandQueue *commandQueue)
QQuickGraphicsDevice fromDeviceAndContext(void *device, void *context)
QQuickGraphicsDevice fromDeviceObjects(VkPhysicalDevice physicalDevice, VkDevice device, int queueFamilyIndex, int queueIndex = 0)
QQuickGraphicsDevice fromOpenGLContext(QOpenGLContext *context)
QQuickGraphicsDevice fromPhysicalDevice(VkPhysicalDevice physicalDevice)
(since 6.6) QQuickGraphicsDevice fromRhi(QRhi *rhi)
(since 6.10) QQuickGraphicsDevice fromRhiAdapter(QRhiAdapter *adapter)

상세 설명

QQuickWindow::setGraphicsDevice() 및 QQuickRenderTarget도 참조하십시오 .

멤버 함수 설명

QQuickGraphicsDevice::QQuickGraphicsDevice()

네이티브 객체를 전혀 참조하지 않는 기본 QQuickGraphicsDevice를 생성합니다.

[noexcept] QQuickGraphicsDevice::~QQuickGraphicsDevice()

소멸자.

[static] QQuickGraphicsDevice QQuickGraphicsDevice::fromAdapter(quint32 adapterLuidLow, qint32 adapterLuidHigh, int featureLevel = 0)

DXGI 어댑터와 D3D 기능 수준을 설명하는 새로운 ` QQuickGraphicsDevice ` 객체를 반환합니다.

이 팩토리 함수는 Direct3D 11 및 12, 특히 OpenXR과 함께 사용할 때 적합합니다. ` adapterLuidLow `과 ` adapterLuidHigh `은 함께 LUID를 지정하며, `featureLevel`은 ` D3D_FEATURE_LEVEL_ ` 값을 지정합니다. ` featureLevel `은 지정할 의도가 없는 경우 0으로 설정할 수 있으며, 이 경우 씬 그래프의 기본값이 사용됩니다.

참고: Direct 3D 12의 경우 featureLevel 는 D3D12CreateDevice()로 전달되는 minimum 기능 레벨을 지정합니다.

[static] QQuickGraphicsDevice QQuickGraphicsDevice::fromDeviceAndCommandQueue(MTLDevice *device, MTLCommandQueue *commandQueue)

기존의 device 및 commandQueue 객체를 참조하는 새로운 QQuickGraphicsDevice 객체를 반환합니다.

이 팩토리 함수는 Metal에 적합합니다.

참고: 반환된 QQuickGraphicsDevice 는 네이티브 리소스를 직접 소유하지 않으며, 단지 참조만 포함하고 있습니다. 필요한 기간 동안 네이티브 리소스가 존재하도록 보장하는 것은 호출자의 책임입니다.

[static] QQuickGraphicsDevice QQuickGraphicsDevice::fromDeviceAndContext(void *device, void *context)

네이티브 디바이스 및 컨텍스트 객체를 참조하는 새로운 ` QQuickGraphicsDevice `를 반환합니다.

이 팩토리 함수는 Direct3D 11에 적합합니다. ` device `는 ` ID3D11Device*`이어야 하며, ` context `는 ` ID3D11DeviceContext*`이어야 합니다.

또한 런타임에 사용되는 3D API가 Direct3D 12인 경우에도 이를 지원합니다. D3D12의 경우 context 는 사용되지 않으므로 null로 설정할 수 있습니다. device 는 ID3D12Device* 이어야 합니다.

참고: 결과로생성된 QQuickGraphicsDevice 는 네이티브 리소스를 직접 소유하지 않으며, 단지 참조만 포함합니다. 필요한 기간 동안 네이티브 리소스가 존재하도록 보장하는 것은 호출자의 책임입니다.

[static] QQuickGraphicsDevice QQuickGraphicsDevice::fromDeviceObjects(VkPhysicalDevice physicalDevice, VkDevice device, int queueFamilyIndex, int queueIndex = 0)

기존의 device 객체를 참조하는 새로운 QQuickGraphicsDevice 객체를 반환합니다.

이 팩토리 함수는 Vulkan에 적합합니다. ` physicalDevice`, ` device ` 및 ` queueFamilyIndex `는 반드시 제공되어야 합니다. ` queueIndex `는 기본값인 0이 대개 적합하므로 선택 사항입니다.

참고: 생성된 QQuickGraphicsDevice 는 네이티브 리소스를 직접 소유하지 않으며, 단지 참조만 포함합니다. 필요한 기간 동안 네이티브 리소스가 존재하도록 보장하는 것은 호출자의 책임입니다.

[static] QQuickGraphicsDevice QQuickGraphicsDevice::fromOpenGLContext(QOpenGLContext *context)

기존 OpenGL context 를 참조하는 새로운 QQuickGraphicsDevice 를 반환합니다.

이 팩토리 함수는 OpenGL에 적합합니다.

참고: ` context `가 ` QQuickWindow`와 호환되고 사용 가능한지 확인하는것은 호출자의책임입니다 . 관련 ` QSurfaceFormat`의 플랫폼별 불일치나, 여러 스레드에서 ` context `를 사용하려고 시도할 때 발생하는 스레딩 문제는 호출자가 방지해야 합니다.

[static] QQuickGraphicsDevice QQuickGraphicsDevice::fromPhysicalDevice(VkPhysicalDevice physicalDevice)

기존의 ` physicalDevice`를 참조하는 새로운 ` QQuickGraphicsDevice `를 반환합니다.

이 팩토리 함수는 Vulkan, 특히 OpenXR과 함께 사용할 때 적합합니다.

참고: 반환된 ` QQuickGraphicsDevice `는 네이티브 리소스를 직접 소유하지 않으며, 단지 참조만 포함합니다. 필요한 기간 동안 네이티브 리소스가 존재하도록 보장하는 것은 호출자의 책임입니다.

[static, since 6.6] QQuickGraphicsDevice QQuickGraphicsDevice::fromRhi(QRhi *rhi)

기존의 ` rhi ` 객체를 참조하는 새로운 ` QQuickGraphicsDevice ` 객체를 반환합니다.

참고: fromOpenGLContext() 함수와마찬가지로 , 호출자는 호환성이 확인된 QQuickWindow 간에만 QRhi (그리고 이에 기반한 그래픽 컨텍스트 또는 장치)를 공유해야 하며, 스레딩, 픽셀 형식 등과 관련하여 기본 그래픽 API의 규칙을 위반하지 않도록 주의해야 합니다.

이 함수는 Qt 6.6에서 도입되었습니다.

[static, since 6.10] QQuickGraphicsDevice QQuickGraphicsDevice::fromRhiAdapter(QRhiAdapter *adapter)

기존의 adapter QRhiAdapter 객체를 참조하는 새로운 QQuickGraphicsDevice 객체를 반환합니다.

QRhiAdapter 에 실제 구현이 없는 QRhi 백엔드 및 그래픽 API에는 적용되지 않습니다.

Direct 3D의 경우 fromAdapter()와 동일하며, Vulkan의 경우 fromPhysicalDevice()와 동일합니다.

참고: adapter 에 대해서는소유권이 인수되지 않으며, 이 객체는 최소한 씬 그래프가 초기화될 때까지 유효한 상태를 유지해야 합니다. 씬 그래프 초기화는 대부분 관련 QQuickWindow 가 노출될 때 발생합니다.

이 함수는 Qt 6.10에서 도입되었습니다.

QRhi::enumerateAdapters()도 참조하십시오 .

bool QQuickGraphicsDevice::isNull() const

이 객체가 네이티브 객체를 참조하지 않는 기본 생성된 그래픽스 장치인 경우 true를 반환합니다.

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