이 페이지에서

Qt3DRender::QGeometryRenderer Class

class Qt3DRender::QGeometryRenderer

지오메트리 렌더링 기능을 포함합니다. 더 보기...

헤더: #include <qgeometryrenderer.h>
CMake: find_package(Qt6 REQUIRED COMPONENTS 3drender)
target_link_libraries(mytarget PRIVATE Qt6::3drender)
qmake: QT += 3drender
QML에서: GeometryRenderer
상속: Qt3DCore::QBoundingVolume
상속받는 클래스:

Qt3DExtras::QConeMesh, Qt3DExtras::QCuboidMesh, Qt3DExtras::QCylinderMesh, Qt3DExtras::QExtrudedTextMesh, Qt3DExtras::QPlaneMesh, Qt3DExtras::QSphereMesh, Qt3DExtras::QTorusMesh 및 Qt3DRender::QMesh

상태: 사용 중단됨

이 클래스는 더 이상 사용되지 않습니다. 새로운 코드에서는 이 클래스를 사용하지 않도록 강력히 권장합니다.

공개 유형

enum PrimitiveType { Points, Lines, LineLoop, LineStrip, Triangles, …, Patches }

속성

공개 함수

QGeometryRenderer(Qt3DCore::QNode *parent = nullptr)
int firstInstance() const
int firstVertex() const
Qt3DCore::QGeometry *geometry() const
int indexBufferByteOffset() const
int indexOffset() const
int instanceCount() const
bool primitiveRestartEnabled() const
Qt3DRender::QGeometryRenderer::PrimitiveType primitiveType() const
int restartIndexValue() const
float sortIndex() const
int vertexCount() const
int verticesPerPatch() const

공개 슬롯

void setFirstInstance(int firstInstance)
void setFirstVertex(int firstVertex)
void setGeometry(Qt3DCore::QGeometry *geometry)
void setIndexBufferByteOffset(int offset)
void setIndexOffset(int indexOffset)
void setInstanceCount(int instanceCount)
void setPrimitiveRestartEnabled(bool enabled)
void setPrimitiveType(Qt3DRender::QGeometryRenderer::PrimitiveType primitiveType)
void setRestartIndexValue(int index)
void setSortIndex(float sortIndex)
void setVertexCount(int vertexCount)
void setVerticesPerPatch(int verticesPerPatch)

신호

void firstInstanceChanged(int firstInstance)
void firstVertexChanged(int firstVertex)
void geometryChanged(Qt3DCore::QGeometry *geometry)
void indexBufferByteOffsetChanged(int offset)
void indexOffsetChanged(int indexOffset)
void instanceCountChanged(int instanceCount)
void primitiveRestartEnabledChanged(bool primitiveRestartEnabled)
void primitiveTypeChanged(Qt3DRender::QGeometryRenderer::PrimitiveType primitiveType)
void restartIndexValueChanged(int restartIndexValue)
void sortIndexChanged(float sortIndex)
void vertexCountChanged(int vertexCount)
void verticesPerPatchChanged(int verticesPerPatch)

상세 설명

Qt3DRender::QGeometryRenderer 는 Qt3DCore::QGeometry 를 그리는 데 필요한 모든 정보를 담고 있습니다. QGeometry는 지오메트리 데이터의 좌표를 담고 있으며, QGeometryRenderer는 해당 데이터를 해석하는 방법을 지정합니다.

멤버 유형 문서

enum QGeometryRenderer::PrimitiveType

기본형의 유형.

상수값설명
Qt3DRender::QGeometryRenderer::Points0x0000점의 목록
Qt3DRender::QGeometryRenderer::Lines0x0001선의 목록
Qt3DRender::QGeometryRenderer::LineLoop0x0002양 끝이 연결되어 고리를 이루는 선분들의 연결된 집합
Qt3DRender::QGeometryRenderer::LineStrip0x0003연결된 선의 집합
Qt3DRender::QGeometryRenderer::Triangles0x0004삼각형 목록
Qt3DRender::QGeometryRenderer::TriangleStrip0x0005연결된 삼각형 목록
Qt3DRender::QGeometryRenderer::TriangleFan0x0006모든 삼각형이 첫 번째 꼭짓점을 공유하는 연결된 삼각형 목록
Qt3DRender::QGeometryRenderer::LinesAdjacency0x000A지오메트리 셰이더가 선 목록 내의 인접한 선에 접근할 수 있도록 함
Qt3DRender::QGeometryRenderer::TrianglesAdjacency0x000C지오메트리 셰이더가 삼각형 리스트에서 인접한 삼각형에 접근할 수 있게 합니다
Qt3DRender::QGeometryRenderer::LineStripAdjacency0x000B지오메트리 셰이더가 라인 스트립 내의 인접한 라인에 접근할 수 있게 합니다
Qt3DRender::QGeometryRenderer::TriangleStripAdjacency0x000D지오메트리 셰이더가 삼각형 스트립 내의 인접한 삼각형에 접근할 수 있게 합니다
Qt3DRender::QGeometryRenderer::Patches0x000E패치가 임의의 수의 정점으로 구성되는 테셀레이션 셰이더에서 허용되는 유일한 프리미티브 유형

속성 설명서

firstInstance : int

기본 인스턴스를 보관합니다.

액세스 함수:

int firstInstance() const
void setFirstInstance(int firstInstance)

알림 신호:

void firstInstanceChanged(int firstInstance)

firstVertex : int

베이스 정점을 저장합니다.

액세스 함수:

int firstVertex() const
void setFirstVertex(int firstVertex)

알림 신호:

void firstVertexChanged(int firstVertex)

geometry : Qt3DCore::QGeometry*

지오메트리를 저장합니다.

액세스 함수:

Qt3DCore::QGeometry *geometry() const
void setGeometry(Qt3DCore::QGeometry *geometry)

알림 신호:

void geometryChanged(Qt3DCore::QGeometry *geometry)

indexBufferByteOffset : int

인덱스 버퍼 내의 바이트 오프셋을 저장합니다.

액세스 함수:

int indexBufferByteOffset() const
void setIndexBufferByteOffset(int offset)

알림 신호:

void indexBufferByteOffsetChanged(int offset)

indexOffset : int

베이스 정점을 보관합니다.

액세스 함수:

int indexOffset() const
void setIndexOffset(int indexOffset)

알림 신호:

void indexOffsetChanged(int indexOffset)

instanceCount : int

인스턴스 수를 저장합니다.

액세스 함수:

int instanceCount() const
void setInstanceCount(int instanceCount)

알림 신호:

void instanceCountChanged(int instanceCount)

primitiveRestartEnabled : bool

기본 재시작 플래그를 보유합니다.

액세스 함수:

bool primitiveRestartEnabled() const
void setPrimitiveRestartEnabled(bool enabled)

알림 신호:

void primitiveRestartEnabledChanged(bool primitiveRestartEnabled)

primitiveType : PrimitiveType

기본 데이터형을 저장합니다.

액세스 함수:

Qt3DRender::QGeometryRenderer::PrimitiveType primitiveType() const
void setPrimitiveType(Qt3DRender::QGeometryRenderer::PrimitiveType primitiveType)

알림 신호:

void primitiveTypeChanged(Qt3DRender::QGeometryRenderer::PrimitiveType primitiveType)

restartIndexValue : int

재시작 인덱스를 저장합니다.

액세스 함수:

int restartIndexValue() const
void setRestartIndexValue(int index)

알림 신호:

void restartIndexValueChanged(int restartIndexValue)

[since 6.0] sortIndex : float

깊이 정렬이 활성화된 경우 정렬 인덱스를 재정의합니다.

프레임 그래프에서 깊이 정렬이 활성화된 경우, 렌더러는 바운딩 볼륨의 중심이 카메라로부터 얼마나 멀리 떨어져 있는지에 따라 오브젝트를 정렬하고, 가장 먼 것부터 가장 가까운 순서로 오브젝트를 렌더링합니다.

이 속성을 사용하면 깊이 인덱스를 재정의하여 오브젝트가 렌더링되는 순서를 정밀하게 제어할 수 있습니다. 이는 모든 오브젝트가 카메라로부터 물리적으로 동일한 거리에 있을 때 유용합니다.

실제 값 자체는 중요하지 않으며, 오브젝트를 정렬할 순서를 정의하는 역할만 합니다. 값이 가장 작은 오브젝트가 먼저 그려지고, 그 다음으로 두 번째로 작은 오브젝트가 그려지는 식으로 정렬됩니다.

참고: 이 값을 -1.f로설정하면 해당 엔티티에 대한 명시적 정렬이 비활성화되고, 바운딩 볼륨의 중심으로부터의 거리를 사용하는 방식으로 되돌아갑니다.

이 열거형은 Qt 6.0에서 도입되었습니다.

액세스 함수:

float sortIndex() const
void setSortIndex(float sortIndex)

알림 신호:

void sortIndexChanged(float sortIndex)

Qt3DRender::QSortPolicy도 참조하십시오 .

vertexCount : int

기본 카운트 값을 저장합니다.

액세스 함수:

int vertexCount() const
void setVertexCount(int vertexCount)

알림 신호:

void vertexCountChanged(int vertexCount)

verticesPerPatch : int

패치당 정점 수를 저장합니다.

액세스 함수:

int verticesPerPatch() const
void setVerticesPerPatch(int verticesPerPatch)

알림 신호:

void verticesPerPatchChanged(int verticesPerPatch)

멤버 함수 문서

[explicit] QGeometryRenderer::QGeometryRenderer(Qt3DCore::QNode *parent = nullptr)

parent 를 사용하여 새로운 QGeometryRenderer를 생성합니다.

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