QSGGeometryNode ClassThe QSGGeometryNode class is used for all rendered content in the scene graph. More... #include <QSGGeometryNode> Inherits: QSGBasicGeometryNode. Inherited by: QSGSimpleRectNode and QSGSimpleTextureNode. Public Functions
Detailed DescriptionThe QSGGeometryNode class is used for all rendered content in the scene graph. The QSGGeometryNode consists of geometry and material. The geometry defines the mesh, the vertices and their structure, to be drawn. The Material defines how the shape is filled. The following is a code snipped illustrating how to create a red line using a QSGGeometryNode: QSGGeometry *geometry = new QSGGeometry(QSGGeometry::defaultAttributes_Point2D(), 2); geometry->setDrawingMode(GL_LINES); geometry->setLineWidth(3); geometry->vertexDataAsPoint2D()[0].set(0, 0); geometry->vertexDataAsPoint2D()[1].set(width(), height()); QSGFlatColorMaterial *material = new QSGFlatColorMaterial; material->setColor(QColor(255, 0, 0)); QSGGeometryNode *node = new QSGGeometryNode; node->setGeometry(geometry); node->setFlag(QSGNode::OwnsGeometry); node->setMaterial(material); node->setFlag(QSGNode::OwnsMaterial); A geometry node must have both geometry and a normal material before it is added to the scene graph. When the geometry and materials are changed after the node has been added to the scene graph, the user should also mark them as dirty using QSGNode::markDirty(). The geometry node supports two types of materials, the opaqueMaterial and the normal material. The opaqueMaterial is used when the accumulated scene graph opacity at the time of rendering is 1. The primary usecase is to special case opaque rendering to avoid an extra operation in the fragment shader can have significant performance impact on embedded graphics chips. The opaque material is optional. See also QSGGeometry, QSGMaterial, and QSGSimpleMaterial. Member Function Documentation
|