QQuickGraphicsDevice Class
QQuickGraphicsDevice 클래스는 그래픽 장치 또는 컨텍스트를 나타내는 네이티브 그래픽 객체를 위한 불투명 컨테이너를 제공합니다. 더 보기...
Header: | #include <QQuickGraphicsDevice> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Quick) target_link_libraries(mytarget PRIVATE Qt6::Quick) |
qmake: | QT += quick |
이후: | Qt 6.0 |
공용 함수
QQuickGraphicsDevice() | |
~QQuickGraphicsDevice() | |
bool | isNull() const |
정적 공용 멤버
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) |
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 을 반환합니다.
device 은 ID3D11Device*
, context 은 ID3D11DeviceContext*
으로 예상됩니다.
또한 런타임에 사용되는 3D API인 경우 Direct 3D 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()와 마찬가지로, 호출자는 스레딩, 픽셀 형식 등과 관련하여 기본 그래픽 API의 규칙을 위반하지 않고 호환되는 것으로 알려진 QQuickWindows 간에 QRhi (따라서 기본 그래픽 컨텍스트 또는 장치)만 공유하도록 주의해야 합니다.
이 기능은 Qt 6.6에 도입되었습니다.
bool QQuickGraphicsDevice::isNull() const
네이티브 오브젝트를 참조하지 않는 기본 구성 그래픽 디바이스인 경우 true를 반환합니다.
© 2025 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.