QRhiTexture Class

텍스처 리소스. 더 보기...

헤더: #include <rhi/qrhi.h>
CMake: find_package(Qt6 REQUIRED COMPONENTS Gui)
target_link_libraries(mytarget PRIVATE Qt6::GuiPrivate)
qmake: QT += gui-private
이후: Qt 6.6
상속합니다: QRhiResource

공용 형

struct NativeTexture
(since 6.8) struct ViewFormat
enum Flag { RenderTarget, CubeMap, MipMapped, sRGB, UsedAsTransferSource, …, OneDimensional }
flags Flags
enum Format { UnknownFormat, RGBA8, BGRA8, R8, RG8, …, ASTC_12x12 }

공용 함수

int arrayRangeLength() const
int arrayRangeStart() const
int arraySize() const
virtual bool create() = 0
virtual bool createFrom(QRhiTexture::NativeTexture src)
int depth() const
QRhiTexture::Flags flags() const
QRhiTexture::Format format() const
virtual QRhiTexture::NativeTexture nativeTexture()
QSize pixelSize() const
(since 6.8) QRhiTexture::ViewFormat readViewFormat() const
int sampleCount() const
void setArrayRange(int startIndex, int count)
void setArraySize(int arraySize)
void setDepth(int depth)
void setFlags(QRhiTexture::Flags f)
void setFormat(QRhiTexture::Format fmt)
virtual void setNativeLayout(int layout)
void setPixelSize(const QSize &sz)
(since 6.8) void setReadViewFormat(const QRhiTexture::ViewFormat &fmt)
void setSampleCount(int s)
(since 6.8) void setWriteViewFormat(const QRhiTexture::ViewFormat &fmt)
(since 6.8) QRhiTexture::ViewFormat writeViewFormat() const

재구현된 공용 함수

virtual QRhiResource::Type resourceType() const override

상세 설명

QRhiTexture 는 VkImage 또는 MTLTexture 과 같은 네이티브 텍스처 오브젝트를 캡슐화합니다.

QRhiTexture 인스턴스는 항상 the QRhi's newTexture() function 를 호출하여 생성됩니다. 이렇게 하면 네이티브 그래픽 리소스가 생성되지 않습니다. 이렇게 하려면 형식과 크기 등 적절한 옵션을 설정한 후 create()를 호출하지만, 대부분의 경우 newTexture()에 전달된 인수를 기반으로 이미 설정되어 있습니다.

flags 을 올바르게 설정하지 않으면 기본 QRhi 백엔드 및 그래픽 API에 따라 다양한 오류가 발생할 수 있습니다. 예를 들어 QRhiTextureRenderTarget 을 통해 렌더 패스로부터 텍스처가 렌더링되는 경우 텍스처는 RenderTarget 플래그가 설정된 상태로 생성되어야 합니다. 마찬가지로 텍스처가 read back 로 렌더링될 경우 UsedAsTransferSource 플래그를 미리 설정해야 합니다. 밉매핑된 텍스처에는 MipMapped 플래그가 설정되어 있어야 합니다. 등등. create ()가 성공한 후에는 플래그를 변경할 수 없습니다. 기존 텍스처를 해제하고 변경된 설정으로 새 네이티브 텍스처 객체를 만들려면 설정자를 호출하고 create()를 다시 호출하세요. 이 경우 잠재적으로 비용이 많이 드는 작업이 될 수 있습니다.

사용 예

512x512 픽셀 크기의 2D 텍스처를 만들고 그 내용을 모두 녹색으로 설정합니다:

QRhiTexture *texture = rhi->newTexture(QRhiTexture::RGBA8, QSize(512, 512));
if (!texture->create()) { error(); }
QRhiResourceUpdateBatch *batch = rhi->nextResourceUpdateBatch();
QImage image(512, 512, QImage::Format_RGBA8888);
image.fill(Qt::green);
batch->uploadTexture(texture, image);
// ...
commandBuffer->resourceUpdate(batch); // or, alternatively, pass 'batch' to a beginPass() call

일반적인 패턴

create()를 호출하면 이전에 create()를 성공적으로 호출한 경우 기존 네이티브 리소스가 모두 파괴됩니다. 해당 네이티브 리소스가 인플라이트 프레임에서 여전히 사용 중인 경우(즉, GPU에서 여전히 읽고 있을 가능성이 있는 경우) 해당 리소스 소멸은 자동으로 연기됩니다. 따라서 이미 존재하는 텍스처의 크기를 안전하게 변경하는 매우 일반적이고 편리한 패턴은 다음과 같습니다. 실제로 이것은 완전히 새로운 네이티브 텍스처 리소스를 삭제하고 그 아래에 생성하므로 반드시 저렴한 작업은 아니지만 texture 객체 자체를 파괴하지 않음으로써 다른 데이터 구조(예: QRhiTexture가 참조되는 모든 QShaderResourceBinding)에서 모든 참조가 유효하게 유지되므로 다른 대안보다 더 편리하고 여전히 빠릅니다.

// determine newSize, e.g. based on the swapchain's output size or other factors
if (texture->pixelSize() != newSize) {
    texture->setPixelSize(newSize);
    if (!texture->create()) { error(); }
}
// continue using texture, fill it with new data

참고: 이 API는 호환성이 제한적으로 보장되는 RHI API입니다. 자세한 내용은 QRhi 을 참조하세요.

QRhiResourceUpdateBatch, QRhi, QRhiTextureRenderTarget도 참조하십시오 .

멤버 유형 문서

열거형 QRhiTexture::플래그
플래그 QRhiTexture::플래그

텍스처의 사용 방법을 지정하는 플래그 값입니다. create () 앞에 설정된 플래그를 따르지 않고 미리 선언되지 않은 방식으로 텍스처를 사용하려고 하면 백엔드 및 기본 그래픽 API에 따라 지정되지 않은 동작이 발생하거나 성능이 저하될 수 있습니다.

Constant설명
QRhiTexture::RenderTarget1 << 0QRhiTextureRenderTarget 와 함께 사용할 텍스처입니다.
QRhiTexture::CubeMap1 << 2텍스처는 큐브맵입니다. 이러한 텍스처에는 +X, -X, +Y, -Y, +Z, -Z의 순서로 각 면에 하나씩 총 6개의 레이어가 있습니다. 큐브맵 텍스처는 다중 샘플이 될 수 없습니다.
QRhiTexture::MipMapped1 << 3텍스처에는 밉맵이 있습니다. 적절한 밉 수는 자동으로 계산되며 QRhi::mipLevelsForSize()를 통해 검색할 수도 있습니다. 밉 레벨에 대한 이미지는 QRhiResourceUpdateBatch::generateMips()를 통해 업로드하거나 생성한 텍스처에 제공되어야 합니다. 멀티샘플 텍스처에는 밉맵을 가질 수 없습니다.
QRhiTexture::sRGB1 << 4sRGB 형식을 사용합니다.
QRhiTexture::UsedAsTransferSource1 << 5텍스처는 텍스처 복사 또는 리드백의 소스로 사용되며, 즉 QRhiResourceUpdateBatch::copyTexture() 또는 QRhiResourceUpdateBatch::readBackTexture()에서 텍스처를 소스로 제공합니다.
QRhiTexture::UsedWithGenerateMips1 << 6텍스처는 QRhiResourceUpdateBatch::generateMips()와 함께 사용됩니다.
QRhiTexture::UsedWithLoadStore1 << 7텍스처가 이미지 로드/저장 작업(예: 컴퓨팅 셰이더)에 사용됩니다.
QRhiTexture::UsedAsCompressedAtlas1 << 8텍스처의 압축 형식이 있으며 하위 리소스 업로드의 크기가 텍스처 크기와 일치하지 않을 수 있습니다.
QRhiTexture::ExternalOES1 << 9텍스처는 OpenGL에서 GL_TEXTURE_EXTERNAL_OES 타깃을 사용해야 합니다. 이 플래그는 다른 그래픽 API에서는 무시됩니다.
QRhiTexture::ThreeDimensional1 << 10텍스처는 3D 텍스처입니다. 이러한 텍스처는 너비와 높이 외에 깊이를 고려하여 QRhi::newTexture() 오버로드를 사용하여 생성해야 합니다. 3D 텍스처는 밉맵을 가질 수 있지만 멀티샘플은 사용할 수 없습니다. 3D 텍스처로 렌더링하거나 데이터를 업로드할 때 렌더 대상의 색상 첨부 또는 업로드 설명에 지정된 layer 은 [0..깊이-1] 범위의 단일 슬라이스를 참조합니다. 기본 그래픽 API는 런타임에 3D 텍스처를 지원하지 않을 수 있습니다. 지원 여부는 QRhi::ThreeDimensionalTextures 기능으로 표시됩니다.
QRhiTexture::TextureRectangleGL1 << 11텍스처는 OpenGL과 함께 GL_TEXTURE_RECTANGLE 타깃을 사용해야 합니다. 이 플래그는 다른 그래픽 API에서는 무시됩니다. ExternalOES와 마찬가지로 이 플래그는 플랫폼에서 받은 네이티브 OpenGL 텍스처 오브젝트가 QRhiTexture 로 래핑되고 플랫폼이 2D가 아닌 텍스처 타깃에 대해서만 텍스처를 제공할 수 있는 플랫폼 API로 작업할 때 유용합니다.
QRhiTexture::TextureArray1 << 12텍스처는 텍스처 배열, 즉 2D 텍스처의 균일한 배열인 단일 텍스처 객체입니다. 텍스처 배열은 QRhi::newTextureArray()로 생성됩니다. 기본 그래픽 API는 런타임에 텍스처 배열 객체를 지원하지 않을 수 있습니다. 지원 여부는 QRhi::TextureArrays 기능으로 표시됩니다. 텍스처 배열로 렌더링하거나 데이터를 업로드할 때 렌더링 대상의 색상 첨부 또는 업로드 설명에 지정된 layer 은 배열의 단일 요소를 선택합니다.
QRhiTexture::OneDimensional1 << 13텍스처는 1D 텍스처입니다. 이러한 텍스처는 QRhi::newTexture()에 높이와 깊이를 0으로 전달하여 만들 수 있습니다. 기본 그래픽 API에 따라 1차원 텍스처에 제한이 있을 수 있다는 점에 유의하세요. 예를 들어, 이러한 텍스처로 렌더링하거나 밉맵 기반 필터링과 함께 사용하는 것은 지원되지 않을 수 있습니다. 이는 QRhi::OneDimensionalTexturesQRhi::OneDimensionalTextureMipmaps 기능 플래그로 표시됩니다.

Flags 유형은 QFlags<Flag>에 대한 타입 정의입니다. 플래그 값의 OR 조합을 저장합니다.

enum QRhiTexture::Format

텍스처 형식을 지정합니다. QRhi::isTextureFormatSupported ()를 참조하고 flags()는 QRhiTexture::sRGB 가 설정된 경우 형식을 수정할 수 있다는 점에 유의하세요.

Constant설명
QRhiTexture::UnknownFormat0유효한 형식이 아닙니다. setFormat ()에 전달할 수 없습니다.
QRhiTexture::RGBA81컴포넌트당 부호 없는 정규화된 8비트의 네 가지 컴포넌트. 항상 지원됩니다.
QRhiTexture::BGRA82컴포넌트당 부호 없는 정규화된 8비트의 네 가지 컴포넌트.
QRhiTexture::R83하나의 컴포넌트, 부호 없는 정규화된 8비트.
QRhiTexture::RG84두 개의 컴포넌트, 부호 없는 정규화된 8비트.
QRhiTexture::R165하나의 컴포넌트, 부호 없는 정규화된 16비트.
QRhiTexture::RG166두 개의 컴포넌트, 부호 없는 정규화된 16비트.
QRhiTexture::RED_OR_ALPHA87R8과 동일하거나, RedOrAlpha8IsRed 에 따라 컴포넌트가 알파로 스위즐링된 유사한 형식입니다.
QRhiTexture::RGBA16F84개의 컴포넌트, 컴포넌트당 16비트 부동소수점.
QRhiTexture::RGBA32F9컴포넌트 4개, 컴포넌트당 32비트 플로트.
QRhiTexture::R16F10하나의 컴포넌트, 16비트 플로트.
QRhiTexture::R32F11하나의 컴포넌트, 32비트 플로트.
QRhiTexture::RGB10A2124개의 컴포넌트, 부호 없는 정규화된 10비트 R, G, B, 2비트 알파. 이것은 패킹된 형식이므로 네이티브 엔디안이 적용됩니다. BGR10A2가 없다는 점에 유의하세요. 이는 RGB10A2가 D3D에서는 DXGI_FORMAT_R10G10B10A2_UNORM, Metal에서는 MTLPixelFormatRGB10A2Unorm, Vulkan에서는 VK_FORMAT_A2B10G10R10_UNORM_PACK32, OpenGL(ES에서는 GL_RGB10_A2/GL_RGB/GL_UNSIGNED_INT_2_10_10_REV에 매핑되기 때문입니다.) 이는 보편적으로 지원되는 유일한 RGB30 옵션입니다. 해당 QImage 형식은 QImage::Format_BGR30QImage::Format_A2BGR30_Premultiplied 입니다.
QRhiTexture::D161316비트 깊이(정규화된 부호 없는 정수)
QRhiTexture::D241424비트 깊이(정규화된 부호 없는 정수)
QRhiTexture::D24S81524비트 깊이(정규화된 부호 없는 정수), 8비트 스텐실
QRhiTexture::D32F1632비트 깊이(32비트 플로트)
QRhiTexture::BC117
QRhiTexture::BC218
QRhiTexture::BC319
QRhiTexture::BC420
QRhiTexture::BC521
QRhiTexture::BC6H22
QRhiTexture::BC723
QRhiTexture::ETC2_RGB824
QRhiTexture::ETC2_RGB8A125
QRhiTexture::ETC2_RGBA826
QRhiTexture::ASTC_4x427
QRhiTexture::ASTC_5x428
QRhiTexture::ASTC_5x529
QRhiTexture::ASTC_6x530
QRhiTexture::ASTC_6x631
QRhiTexture::ASTC_8x532
QRhiTexture::ASTC_8x633
QRhiTexture::ASTC_8x834
QRhiTexture::ASTC_10x535
QRhiTexture::ASTC_10x636
QRhiTexture::ASTC_10x837
QRhiTexture::ASTC_10x1038
QRhiTexture::ASTC_12x1039
QRhiTexture::ASTC_12x1240

멤버 함수 문서

int QRhiTexture::arrayRangeLength() const

setArrayRange()가 호출되었을 때 노출된 배열 범위 크기를 반환합니다.

setArrayRange()도 참조하세요 .

int QRhiTexture::arrayRangeStart() const

setArrayRange()가 호출되었을 때 첫 번째 배열 레이어를 반환합니다.

setArrayRange()도 참조하세요 .

int QRhiTexture::arraySize() const

텍스처 배열 크기를 반환합니다.

setArraySize()도 참조하세요 .

[pure virtual] bool QRhiTexture::create()

해당 네이티브 그래픽 리소스를 생성합니다. 해당하는 destroy()가 없는 이전 create()로 인해 이미 리소스가 있는 경우 destroy()가 암시적으로 먼저 호출됩니다.

성공하면 true, 그래픽 작업이 실패하면 false 을 반환합니다. 반환 값에 관계없이 destroy()를 호출하는 것은 항상 안전합니다.

[virtual] bool QRhiTexture::createFrom(QRhiTexture::NativeTexture src)

create()와 유사하지만 새로운 네이티브 텍스처가 생성되지 않는다는 점이 다릅니다. 대신 src 에 지정된 네이티브 텍스처 리소스가 사용됩니다.

이를 통해 외부 그래픽 엔진에서 기존 네이티브 텍스처 객체(그래픽 API에 따라 동일한 디바이스 또는 공유 컨텍스트에 속해야 함)를 가져올 수 있습니다.

지정된 기존 네이티브 텍스처 오브젝트가 비소유 QRhiTexture 로 성공적으로 래핑된 경우 true를 반환합니다.

참고: format(), pixelSize(), sampleCount(), flags()는 여전히 올바르게 설정되어야 합니다. QRhi::newTexture ()에 잘못된 크기 및 기타 값을 전달한 다음 네이티브 텍스처 객체만으로 이러한 값을 추론할 수 있을 것으로 예상하고 그 뒤에 createFrom()을 호출하는 것은 잘못된 것이며 문제가 발생할 수 있습니다.

참고: QRhiTexture 은 텍스처 객체의 소유권을 가지지 않습니다. destroy()는 오브젝트나 관련 메모리를 해제하지 않습니다.

이 작업의 반대인 QRhiTexture- 생성된 네이티브 텍스처 오브젝트를 외부 엔진에 노출하는 작업은 nativeTexture()을 통해 가능합니다.

참고: 3D 텍스처, 텍스처 배열 객체 또는 OpenGL ES의 경우 외부 텍스처를 가져올 때는 이 함수를 호출하기 전에 setFlags()를 통해 해당 플래그 (ThreeDimensional, TextureArray, ExternalOES)를 설정하는 것이 특히 중요합니다.

int QRhiTexture::depth() const

3D 텍스처의 깊이를 반환합니다.

setDepth()도 참조하세요 .

QRhiTexture::Flags QRhiTexture::flags() const

텍스처 플래그를 반환합니다.

setFlags()도 참조하십시오 .

QRhiTexture::Format QRhiTexture::format() const

텍스처 형식을 반환합니다.

setFormat()도 참조하세요 .

[virtual] QRhiTexture::NativeTexture QRhiTexture::nativeTexture()

이 텍스처의 기본 네이티브 리소스를 반환합니다. 백엔드에서 기본 네이티브 리소스 노출이 지원되지 않는 경우 반환된 값은 비어 있습니다.

createFrom()도 참조하세요 .

QSize QRhiTexture::pixelSize() const

크기를 픽셀 단위로 반환합니다.

setPixelSize()도 참조하세요 .

[since 6.8] QRhiTexture::ViewFormat QRhiTexture::readViewFormat() const

텍스처를 샘플링할 때 사용되는 뷰 포맷을 반환합니다. 호출되지 않으면 뷰 형식은 format()와 동일한 것으로 간주됩니다.

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

setReadViewFormat()도 참조하십시오 .

[override virtual] QRhiResource::Type QRhiTexture::resourceType() const

재구현합니다: QRhiResource::resourceType() const.

리소스 타입을 리턴합니다.

int QRhiTexture::sampleCount() const

샘플 수를 반환합니다. 1은 다중 샘플 앤티앨리어싱이 없음을 의미합니다.

setSampleCount()도 참조하세요 .

void QRhiTexture::setArrayRange(int startIndex, int count)

일반적으로 모든 배열 레이어가 노출되며 sampler2DArray 을 샘플링할 때 texture() GLSL 함수에 전달되는 세 번째 좌표를 통해 레이어를 선택하는 것은 셰이더의 몫입니다. QRhi::TextureArrayRange 이 지원되는 것으로 보고되면 create() 또는 createFrom() 앞에 setArrayRange() 를 호출하면 지정된 범위, count 부터 시작하는 startIndex 요소만 선택하도록 요청합니다. 그러면 셰이더 로직은 이를 고려하여 작성할 수 있습니다.

QRhi::TextureArrayRange참조하세요 .

void QRhiTexture::setArraySize(int arraySize)

텍스처를 설정합니다 arraySize.

arraySize()도 참조하세요 .

void QRhiTexture::setDepth(int depth)

3D 텍스처에 depth 을 설정합니다.

depth()도 참조하세요 .

void QRhiTexture::setFlags(QRhiTexture::Flags f)

텍스처 플래그를 f 로 설정합니다.

flags()도 참조하세요 .

void QRhiTexture::setFormat(QRhiTexture::Format fmt)

요청된 텍스처 형식을 fmt 로 설정합니다.

참고: 설정된 값은 다음 번 create() 호출 시, 즉 기본 그래픽 리소스가 (재)생성될 때만 고려됩니다. 그렇지 않으면 새 값을 설정하는 것은 쓸모가 없으며 일관되지 않은 상태가 될 수 있으므로 피해야 합니다.

format()도 참조하세요 .

[virtual] void QRhiTexture::setNativeLayout(int layout)

Vulkan과 같은 일부 그래픽 API의 경우 그래픽 API를 직접 사용하는 사용자 정의 렌더링 코드를 통합할 때 이미지 레이아웃에 특별한 주의가 필요합니다. 이 기능을 사용하면 네이티브 렌더링 명령 뒤에 QRhiTexture 을 뒷받침하는 이미지가 예상되는 layout 으로 전달할 수 있습니다.

예를 들어 QRhiCommandBuffer::beginExternal() 및 QRhiCommandBuffer::endExternal()로 둘러싸인 코드 블록에서 Vulkan을 사용하여 QRhiTexture 의 VkImage로 직접 렌더링한 다음 QRhi 기반 렌더 패스에서 텍스처 샘플링에 이미지를 사용하는 경우를 생각해 보겠습니다. 잠재적으로 잘못된 이미지 레이아웃 전환을 방지하기 위해 이 함수는 해당 코드 블록에 기록된 명령이 완료되면 이미지 레이아웃이 어떻게 될지 표시하는 데 사용할 수 있습니다.

이 함수를 호출하는 것은 QRhiCommandBuffer::endExternal() 이후와 후속 QRhiCommandBuffer::beginPass() 앞에만 의미가 있습니다.

이 함수는 기본 그래픽 API가 이미지 레이아웃 개념을 노출하지 않는 QRhi 백엔드에서는 효과가 없습니다.

참고: Vulkan에서 layoutVkImageLayout 이며, Direct 3D 12에서 layoutD3D12_RESOURCE_STATES 의 비트로 구성된 값입니다.

void QRhiTexture::setPixelSize(const QSize &sz)

픽셀 단위로 지정된 텍스처 크기를 sz 로 설정합니다.

참고: 설정된 값은 다음에 create()를 호출할 때, 즉 기본 그래픽 리소스가 (재)생성될 때만 고려됩니다. 그 외에는 새 값을 설정하는 것은 쓸모가 없으며 일관성 없는 상태가 될 수 있으므로 피해야 합니다. 다른 모든 설정자에도 동일하게 적용됩니다.

pixelSize()도 참조하세요 .

[since 6.8] void QRhiTexture::setReadViewFormat(const QRhiTexture::ViewFormat &fmt)

셰이더 리소스 뷰 형식(또는 텍스처 샘플링에 사용되는 뷰의 형식)을 fmt 으로 설정합니다. 기본적으로 텍스처 자체와 동일한 형식(및 sRGB)이 사용되며 대부분의 경우 이 함수를 호출할 필요가 없습니다.

이 설정은 TextureViewFormat 기능이 지원되는 것으로 보고된 경우에만 고려됩니다.

참고: 이 기능은 셰이더 판독이 암시적 sRGB 변환을 수행하거나 수행하지 않도록 하기 위해 비 sRGB와 sRGB 간의 "캐스팅"을 허용하기 위해 제공됩니다. 다른 유형의 캐스팅은 작동할 수도 있고 작동하지 않을 수도 있습니다.

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

readViewFormat()도 참조하십시오 .

void QRhiTexture::setSampleCount(int s)

샘플 수를 s 로 설정합니다.

sampleCount()도 참조하세요 .

[since 6.8] void QRhiTexture::setWriteViewFormat(const QRhiTexture::ViewFormat &fmt)

렌더링 대상 뷰 형식을 fmt 로 설정합니다. 기본적으로 텍스처 자체와 동일한 형식(및 sRGB)이 사용되며 대부분의 경우 이 함수를 호출할 필요가 없습니다.

쓰기 뷰 포맷을 제공하는 일반적인 사용 사례 중 하나는 외부에서 제공된 텍스처로 작업하는 경우인데, 이 텍스처는 Vulkan 또는 Direct 3D와 같은 3D API로 sRGB 포맷을 사용하지만 렌더링 엔진은 셰이딩 파이프라인 마지막에 선형화 및 sRGB로의 변환을 처리하도록 이미 준비되어 있습니다. 이 경우 이러한 텍스처로 렌더링할 때 필요한 것은 동일하지만 sRGB 형식이 아닌 렌더링 대상 뷰(예: VkImageView)입니다. (예를 들어 OpenXR 구현에서 VK_FORMAT_R8G8B8A8_SRGB 텍스처를 얻는 경우, 렌더링 엔진의 파이프라인에 필요한 경우 VK_FORMAT_R8G8B8A8_UNORM 뷰를 사용하여 렌더링을 수행해야 할 가능성이 높으며 이 예에서는 QRhiTexture::RGBA8 형식의 ViewFormatsrgbfalse 로 설정되어 이 함수를 호출할 수 있습니다).

이 설정은 TextureViewFormat 기능이 지원되는 것으로 보고된 경우에만 고려됩니다.

참고: 이 기능은 셰이더 쓰기가 암시적 sRGB 변환을 수행하지 않거나 수행하도록 하기 위해 비 sRGB와 sRGB 간의 "캐스팅"을 허용하기 위해 제공됩니다. 다른 유형의 캐스팅은 작동할 수도 있고 작동하지 않을 수도 있습니다.

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

writeViewFormat()도 참조하십시오 .

[since 6.8] QRhiTexture::ViewFormat QRhiTexture::writeViewFormat() const

텍스처에 쓸 때와 이미지 로드/저장과 함께 사용할 때 사용되는 뷰 형식을 반환합니다. 호출되지 않으면 뷰 형식은 format()와 동일한 것으로 간주됩니다.

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

setWriteViewFormat()도 참조하십시오 .

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