"""
PySide stub files generated by **IceSpringPySideStubs**

Home: https://baijifeilong.github.io/2022/01/06/ice-spring-pyside-stubs/index.html

Github: https://github.com/baijifeilong/IceSpringPySideStubs

PyPI(PySide2): https://pypi.org/project/IceSpringPySideStubs-PySide2

PyPI(PySide6): https://pypi.org/project/IceSpringPySideStubs-PySide6

PyPI(PyQt5): https://pypi.org/project/IceSpringPySideStubs-PyQt5

PyPI(PyQt6): https://pypi.org/project/IceSpringPySideStubs-PyQt6

Generated by BaiJiFeiLong@gmail.com

License: MIT
"""
from PyQt6.QtQuick import *


class QSGVertexColorMaterial(QSGMaterial):
    """
    https://doc.qt.io/qt-6/qsgvertexcolormaterial.html

    **Detailed Description**

    **Warning:** This utility class is only functional when running with the
    default backend of the Qt Quick scenegraph.

    The vertex color material will give each vertex in a geometry a color.
    Pixels between vertices will be linearly interpolated. The colors can
    contain transparency.

    The geometry to be rendered with vertex color must have the following
    layout. Attribute position 0 must contain vertices. Attribute position 1
    must contain colors, a tuple of 4 values with RGBA layout. Both floats in
    the range of 0 to 1 and unsigned bytes in the range 0 to 255 are valid for
    the color values.

    **Note:** The rendering pipeline expects pixels with premultiplied alpha.

    **QSGGeometry::defaultAttributes_ColoredPoint2D** () can be used to
    construct an attribute set that is compatible with this material.

    The vertex color material respects both current opacity and current matrix
    when updating it's rendering state.
    """

    def __init__(self) -> None:
        """
        https://doc.qt.io/qt-6/qsgvertexcolormaterial.html#QSGVertexColorMateria
        l

        **QSGVertexColorMaterial::QSGVertexColorMaterial()**

        Creates a new vertex color material.
        """
        ...

    def createShader(
        self, renderMode: QSGRendererInterface.RenderMode
    ) -> QSGMaterialShader:
        ...

    def type(self) -> QSGMaterialType:
        ...

    def compare(self, other: QSGMaterial) -> int:
        ...
