QRhiVertexInputLayout 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

공용 함수

QRhiVertexInputLayout()
const QRhiVertexInputAttribute *attributeAt(qsizetype index) const
qsizetype attributeCount() const
const QRhiVertexInputBinding *bindingAt(qsizetype index) const
qsizetype bindingCount() const
const QRhiVertexInputAttribute *cbeginAttributes() const
const QRhiVertexInputBinding *cbeginBindings() const
const QRhiVertexInputAttribute *cendAttributes() const
const QRhiVertexInputBinding *cendBindings() const
void setAttributes(std::initializer_list<QRhiVertexInputAttribute> list)
void setAttributes(InputIterator first, InputIterator last)
void setBindings(std::initializer_list<QRhiVertexInputBinding> list)
void setBindings(InputIterator first, InputIterator last)
size_t qHash(const QRhiVertexInputLayout &key, size_t seed = 0)
bool operator!=(const QRhiVertexInputLayout &a, const QRhiVertexInputLayout &b)
bool operator==(const QRhiVertexInputLayout &a, const QRhiVertexInputLayout &b)

상세 설명

버텍스 입력 레이아웃은 QRhiVertexInputBindingQRhiVertexInputAttribute 의 컬렉션에 의해 정의됩니다.

예를 들어 3개의 컴포넌트 버텍스 위치와 2개의 컴포넌트 UV 좌표가 인터리빙된 단일 버퍼가 있고 (x, y, z, u, v), 버텍스 셰이더가 입력 위치 0과 1에 위치 및 UV를 예상하고 나중에 setVertexInput()를 사용하여 바인딩 포인트 0에 버텍스 버퍼를 바인딩한다고 가정해 보겠습니다:

QRhiVertexInputLayout inputLayout;
inputLayout.setBindings({
    { 5 * sizeof(float) }
});
inputLayout.setAttributes({
    { 0, 0, QRhiVertexInputAttribute::Float3, 0 },
    { 0, 1, QRhiVertexInputAttribute::Float2, 3 * sizeof(float) }
});

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

멤버 함수 문서

[constexpr noexcept] QRhiVertexInputLayout::QRhiVertexInputLayout()

빈 버텍스 입력 레이아웃 설명을 생성합니다.

const QRhiVertexInputAttribute *QRhiVertexInputLayout::attributeAt(qsizetype index) const

주어진 index 에서 속성을 반환합니다.

qsizetype QRhiVertexInputLayout::attributeCount() const

속성 개수를 반환합니다.

const QRhiVertexInputBinding *QRhiVertexInputLayout::bindingAt(qsizetype index) const

주어진 index 에서 바인딩을 반환합니다.

qsizetype QRhiVertexInputLayout::bindingCount() const

바인딩 수를 반환합니다.

const QRhiVertexInputAttribute *QRhiVertexInputLayout::cbeginAttributes() const

속성 목록의 첫 번째 항목을 가리키는 상수 이터레이터를 반환합니다.

const QRhiVertexInputBinding *QRhiVertexInputLayout::cbeginBindings() const

바인딩 목록의 첫 번째 항목을 가리키는 상수 이터레이터를 반환합니다.

const QRhiVertexInputAttribute *QRhiVertexInputLayout::cendAttributes() const

속성 목록의 마지막 항목 바로 뒤를 가리키는 상수 이터레이터를 반환합니다.

const QRhiVertexInputBinding *QRhiVertexInputLayout::cendBindings() const

바인딩 목록의 마지막 항목 바로 뒤를 가리키는 상수 이터레이터를 반환합니다.

void QRhiVertexInputLayout::setAttributes(std::initializer_list<QRhiVertexInputAttribute> list)

지정된 list 에서 속성을 설정합니다.

template <typename InputIterator> void QRhiVertexInputLayout::setAttributes(InputIterator first, InputIterator last)

반복자 firstlast 를 사용하여 속성을 설정합니다.

void QRhiVertexInputLayout::setBindings(std::initializer_list<QRhiVertexInputBinding> list)

지정된 list 에서 바인딩을 설정합니다.

template <typename InputIterator> void QRhiVertexInputLayout::setBindings(InputIterator first, InputIterator last)

반복자 firstlast 를 사용하여 바인딩을 설정합니다.

관련 비회원

[noexcept] size_t qHash(const QRhiVertexInputLayout &key, size_t seed = 0)

seed 을 사용하여 key 에 대한 해시값을 반환합니다.

[noexcept] bool operator!=(const QRhiVertexInputLayout &a, const QRhiVertexInputLayout &b)

두 개의 QRhiVertexInputLayout 객체 ab 의 값이 같으면 false 를 반환하고, 그렇지 않으면 true 를 반환합니다.

[noexcept] bool operator==(const QRhiVertexInputLayout &a, const QRhiVertexInputLayout &b)

두 개의 QRhiVertexInputLayout 객체 ab 의 값이 같으면 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.