7#include <QtQuick3DRuntimeRender/private/qssgrenderdefaultmaterial_p.h>
8#include <QtQuick3DUtils/private/qssgutils_p.h>
987 return m_baseColorMap;
992 return m_baseColorSingleChannelEnabled;
997 return m_baseColorChannel;
1002 return m_specularSingleChannelEnabled;
1007 return m_specularChannel;
1012 return m_emissiveSingleChannelEnabled;
1017 return m_emissiveChannel;
1022 return m_emissiveMap;
1027 return m_emissiveFactor;
1032 return m_specularReflectionMap;
1037 return m_specularMap;
1042 return m_specularTint;
1047 return m_specularAmount;
1057 return m_roughnessMap;
1062 return m_invertOpacityMapValue;
1072 return m_opacityMap;
1082 return m_metalnessAmount;
1087 return m_metalnessMap;
1092 return m_normalStrength;
1097 return m_occlusionMap;
1102 return m_occlusionAmount;
1112 return m_alphaCutoff;
1117 return m_roughnessChannel;
1122 return m_opacityChannel;
1127 return m_metalnessChannel;
1132 return m_occlusionChannel;
1152 return m_heightChannel;
1157 return m_heightAmount;
1162 return m_minHeightMapSamples;
1167 return m_maxHeightMapSamples;
1172 m_dirtyAttributes = 0xffffffff;
1183 markDirty(LightingModeDirty);
1193 markDirty(BlendModeDirty);
1198 if (m_baseColor == diffuseColor)
1201 m_baseColor = diffuseColor;
1203 markDirty(BaseColorDirty);
1215 markDirty(BaseColorDirty);
1225 markDirty(BaseColorDirty);
1230 if (m_baseColorChannel ==
channel)
1235 markDirty(BaseColorDirty);
1245 markDirty(SpecularDirty);
1250 if (m_specularChannel ==
channel)
1255 markDirty(SpecularDirty);
1265 markDirty(EmissiveDirty);
1270 if (m_emissiveChannel ==
channel)
1275 markDirty(EmissiveDirty);
1287 markDirty(EmissiveDirty);
1297 markDirty(EmissiveDirty);
1309 markDirty(SpecularDirty);
1321 markDirty(SpecularDirty);
1332 markDirty(SpecularDirty);
1343 markDirty(SpecularDirty);
1354 markDirty(RoughnessDirty);
1366 markDirty(RoughnessDirty);
1376 markDirty(OpacityDirty);
1387 markDirty(OpacityDirty);
1399 markDirty(OpacityDirty);
1411 markDirty(NormalDirty);
1416 metalnessAmount = ensureNormalized(metalnessAmount);
1420 m_metalnessAmount = metalnessAmount;
1422 markDirty(MetalnessDirty);
1427 if (m_metalnessMap == metallicMap)
1432 m_metalnessMap = metallicMap;
1434 markDirty(MetalnessDirty);
1439 factor = ensureNormalized(factor);
1443 m_normalStrength = factor;
1445 markDirty(NormalDirty);
1457 markDirty(OcclusionDirty);
1467 markDirty(OcclusionDirty);
1477 markDirty(AlphaModeDirty);
1487 markDirty(AlphaModeDirty);
1492 if (m_metalnessChannel ==
channel)
1497 markDirty(MetalnessDirty);
1502 if (m_roughnessChannel ==
channel)
1507 markDirty(RoughnessDirty);
1512 if (m_opacityChannel ==
channel)
1517 markDirty(OpacityDirty);
1522 if (m_occlusionChannel ==
channel)
1527 markDirty(OcclusionDirty);
1536 markDirty(PointSizeDirty);
1543 m_lineWidth =
width;
1545 markDirty(LineWidthDirty);
1548void QQuick3DPrincipledMaterial::setHeightMap(
QQuick3DTexture *heightMap)
1556 emit heightMapChanged(m_heightMap);
1557 markDirty(HeightDirty);
1562 if (m_heightChannel ==
channel)
1566 emit heightChannelChanged(m_heightChannel);
1567 markDirty(HeightDirty);
1570void QQuick3DPrincipledMaterial::setHeightAmount(
float heightAmount)
1576 emit heightAmountChanged(m_heightAmount);
1577 markDirty(HeightDirty);
1580void QQuick3DPrincipledMaterial::setMinHeightMapSamples(
int samples)
1582 if (m_minHeightMapSamples ==
samples)
1585 m_minHeightMapSamples =
samples;
1587 markDirty(HeightDirty);
1590void QQuick3DPrincipledMaterial::setMaxHeightMapSamples(
int samples)
1592 if (m_maxHeightMapSamples ==
samples)
1595 m_maxHeightMapSamples =
samples;
1597 markDirty(HeightDirty);
1618 if (m_dirtyAttributes & LightingModeDirty)
1621 if (m_dirtyAttributes & BlendModeDirty)
1624 if (m_dirtyAttributes & BaseColorDirty) {
1625 if (!m_baseColorMap)
1630 material->
color = QSSGUtils::color::sRGBToLinear(m_baseColor);
1635 if (m_dirtyAttributes & EmissiveDirty) {
1646 if (m_dirtyAttributes & RoughnessDirty) {
1647 if (!m_roughnessMap)
1656 if (m_dirtyAttributes & MetalnessDirty) {
1657 if (!m_metalnessMap)
1667 if (m_dirtyAttributes & SpecularDirty) {
1668 if (!m_specularReflectionMap)
1673 if (!m_specularMap) {
1681 material->
ior = m_indexOfRefraction;
1690 if (m_dirtyAttributes & OpacityDirty) {
1691 material->
opacity = m_opacity;
1698 material->
opacity = m_opacity;
1702 if (m_dirtyAttributes & NormalDirty) {
1711 if (m_dirtyAttributes & OcclusionDirty) {
1712 if (!m_occlusionMap)
1720 if (m_dirtyAttributes & AlphaModeDirty) {
1725 if (m_dirtyAttributes & PointSizeDirty)
1728 if (m_dirtyAttributes & LineWidthDirty)
1731 if (m_dirtyAttributes & HeightDirty) {
1742 if (m_dirtyAttributes & ClearcoatDirty) {
1744 if (!m_clearcoatMap)
1750 if (!m_clearcoatRoughnessMap)
1755 if (!m_clearcoatNormalMap)
1766 if (m_dirtyAttributes & TransmissionDirty) {
1768 if (!m_transmissionMap)
1775 if (m_dirtyAttributes & VolumeDirty) {
1777 if (!m_thicknessMap)
1787 if (m_dirtyAttributes & VertexColorsDirty) {
1790 material->
vertexColorRedMask = QSSGRenderDefaultMaterial::VertexColorMaskFlags::fromInt(m_vertexColorRedMask);
1791 material->
vertexColorGreenMask = QSSGRenderDefaultMaterial::VertexColorMaskFlags::fromInt(m_vertexColorGreenMask);
1792 material->
vertexColorBlueMask = QSSGRenderDefaultMaterial::VertexColorMaskFlags::fromInt(m_vertexColorBlueMask);
1793 material->
vertexColorAlphaMask = QSSGRenderDefaultMaterial::VertexColorMaskFlags::fromInt(m_vertexColorAlphaMask);
1796 m_dirtyAttributes = 0;
1803 if (change == QQuick3DObject::ItemSceneChange)
1804 updateSceneManager(
value.sceneManager);
1845void QQuick3DPrincipledMaterial::markDirty(QQuick3DPrincipledMaterial::DirtyType
type)
1855 return m_clearcoatAmount;
1858void QQuick3DPrincipledMaterial::setClearcoatAmount(
float newClearcoatAmount)
1862 m_clearcoatAmount = newClearcoatAmount;
1863 emit clearcoatAmountChanged(m_clearcoatAmount);
1864 markDirty(ClearcoatDirty);
1869 return m_clearcoatMap;
1872void QQuick3DPrincipledMaterial::setClearcoatMap(
QQuick3DTexture *newClearcoatMap)
1874 if (m_clearcoatMap == newClearcoatMap)
1879 m_clearcoatMap = newClearcoatMap;
1880 emit clearcoatMapChanged(m_clearcoatMap);
1881 markDirty(ClearcoatDirty);
1886 return m_clearcoatChannel;
1891 if (m_clearcoatChannel == newClearcoatChannel)
1893 m_clearcoatChannel = newClearcoatChannel;
1894 emit clearcoatChannelChanged(m_clearcoatChannel);
1895 markDirty(ClearcoatDirty);
1900 return m_clearcoatRoughnessAmount;
1903void QQuick3DPrincipledMaterial::setClearcoatRoughnessAmount(
float newClearcoatRoughnessAmount)
1905 if (
qFuzzyCompare(m_clearcoatRoughnessAmount, newClearcoatRoughnessAmount))
1907 m_clearcoatRoughnessAmount = newClearcoatRoughnessAmount;
1908 emit clearcoatRoughnessAmountChanged(m_clearcoatRoughnessAmount);
1909 markDirty(ClearcoatDirty);
1914 return m_clearcoatRoughnessChannel;
1919 if (m_clearcoatRoughnessChannel == newClearcoatRoughnessChannel)
1921 m_clearcoatRoughnessChannel = newClearcoatRoughnessChannel;
1922 emit clearcoatRoughnessChannelChanged(m_clearcoatRoughnessChannel);
1923 markDirty(ClearcoatDirty);
1928 return m_clearcoatRoughnessMap;
1931void QQuick3DPrincipledMaterial::setClearcoatRoughnessMap(
QQuick3DTexture *newClearcoatRoughnessMap)
1933 if (m_clearcoatRoughnessMap == newClearcoatRoughnessMap)
1938 m_clearcoatRoughnessMap = newClearcoatRoughnessMap;
1939 emit clearcoatRoughnessMapChanged(m_clearcoatRoughnessMap);
1940 markDirty(ClearcoatDirty);
1945 return m_clearcoatNormalMap;
1948void QQuick3DPrincipledMaterial::setClearcoatNormalMap(
QQuick3DTexture *newClearcoatNormalMap)
1950 if (m_clearcoatNormalMap == newClearcoatNormalMap)
1955 m_clearcoatNormalMap = newClearcoatNormalMap;
1956 emit clearcoatNormalMapChanged(m_clearcoatNormalMap);
1957 markDirty(ClearcoatDirty);
1963 return m_clearcoatNormalStrength;
1966void QQuick3DPrincipledMaterial::setClearcoatNormalStrength(
float newClearcoatNormalStrength)
1968 if (
qFuzzyCompare(m_clearcoatNormalStrength, newClearcoatNormalStrength))
1971 m_clearcoatNormalStrength = newClearcoatNormalStrength;
1972 emit clearcoatNormalStrengthChanged(m_clearcoatNormalStrength);
1973 markDirty(ClearcoatDirty);
1978 return m_transmissionFactor;
1981void QQuick3DPrincipledMaterial::setTransmissionFactor(
float newTransmissionFactor)
1983 if (
qFuzzyCompare(m_transmissionFactor, newTransmissionFactor))
1985 m_transmissionFactor = newTransmissionFactor;
1986 emit transmissionFactorChanged(m_transmissionFactor);
1987 markDirty(TransmissionDirty);
1992 return m_transmissionMap;
1995void QQuick3DPrincipledMaterial::setTransmissionMap(
QQuick3DTexture *newTransmissionMap)
1997 if (m_transmissionMap == newTransmissionMap)
2002 m_transmissionMap = newTransmissionMap;
2003 emit transmissionMapChanged(m_transmissionMap);
2004 markDirty(TransmissionDirty);
2009 return m_transmissionChannel;
2014 return m_indexOfRefraction;
2019 return m_fresnelScaleBiasEnabled;
2024 return m_fresnelScale;
2029 return m_fresnelBias;
2034 return m_fresnelPower;
2039 return m_clearcoatFresnelScaleBiasEnabled;
2044 return m_clearcoatFresnelScale;
2049 return m_clearcoatFresnelBias;
2054 return m_clearcoatFresnelPower;
2059 return m_vertexColorsEnabled;
2064 if (m_transmissionChannel == newTransmissionChannel)
2066 m_transmissionChannel = newTransmissionChannel;
2067 emit transmissionChannelChanged(m_transmissionChannel);
2068 markDirty(TransmissionDirty);
2073 return m_thicknessFactor;
2076void QQuick3DPrincipledMaterial::setThicknessFactor(
float newThicknessFactor)
2080 m_thicknessFactor = newThicknessFactor;
2081 emit thicknessFactorChanged(m_thicknessFactor);
2082 markDirty(VolumeDirty);
2087 return m_thicknessMap;
2090void QQuick3DPrincipledMaterial::setThicknessMap(
QQuick3DTexture *newThicknessMap)
2092 if (m_thicknessMap == newThicknessMap)
2097 m_thicknessMap = newThicknessMap;
2098 emit thicknessMapChanged(m_thicknessMap);
2099 markDirty(VolumeDirty);
2104 return m_thicknessChannel;
2109 if (m_thicknessChannel == newThicknessChannel)
2111 m_thicknessChannel = newThicknessChannel;
2112 emit thicknessChannelChanged(m_thicknessChannel);
2113 markDirty(VolumeDirty);
2118 return m_attenuationDistance;
2121void QQuick3DPrincipledMaterial::setAttenuationDistance(
float newAttenuationDistance)
2123 if (
qFuzzyCompare(m_attenuationDistance, newAttenuationDistance))
2125 m_attenuationDistance = newAttenuationDistance;
2126 emit attenuationDistanceChanged(m_attenuationDistance);
2127 markDirty(VolumeDirty);
2132 return m_attenuationColor;
2135void QQuick3DPrincipledMaterial::setAttenuationColor(
const QColor &newAttenuationColor)
2137 if (m_attenuationColor == newAttenuationColor)
2139 m_attenuationColor = newAttenuationColor;
2140 emit attenuationColorChanged(m_attenuationColor);
2141 markDirty(VolumeDirty);
2144void QQuick3DPrincipledMaterial::setIndexOfRefraction(
float indexOfRefraction)
2150 emit indexOfRefractionChanged(m_indexOfRefraction);
2151 markDirty(SpecularDirty);
2154void QQuick3DPrincipledMaterial::setFresnelScaleBiasEnabled(
bool fresnelScaleBiasEnabled)
2160 emit fresnelScaleBiasEnabledChanged(m_fresnelScaleBiasEnabled);
2161 markDirty(SpecularDirty);
2164void QQuick3DPrincipledMaterial::setFresnelScale(
float fresnelScale)
2170 emit fresnelScaleChanged(m_fresnelScale);
2171 markDirty(SpecularDirty);
2174void QQuick3DPrincipledMaterial::setFresnelBias(
float fresnelBias)
2180 emit fresnelBiasChanged(m_fresnelBias);
2181 markDirty(SpecularDirty);
2184void QQuick3DPrincipledMaterial::setFresnelPower(
float fresnelPower)
2190 emit fresnelPowerChanged(m_fresnelPower);
2191 markDirty(SpecularDirty);
2194void QQuick3DPrincipledMaterial::setClearcoatFresnelScaleBiasEnabled(
bool clearcoatFresnelScaleBiasEnabled)
2200 emit clearcoatFresnelScaleBiasEnabledChanged(m_clearcoatFresnelScaleBiasEnabled);
2201 markDirty(ClearcoatDirty);
2204void QQuick3DPrincipledMaterial::setClearcoatFresnelScale(
float clearcoatFresnelScale)
2210 emit clearcoatFresnelScaleChanged(m_clearcoatFresnelScale);
2211 markDirty(ClearcoatDirty);
2214void QQuick3DPrincipledMaterial::setClearcoatFresnelBias(
float clearcoatFresnelBias)
2220 emit clearcoatFresnelBiasChanged(m_clearcoatFresnelBias);
2221 markDirty(ClearcoatDirty);
2224void QQuick3DPrincipledMaterial::setClearcoatFresnelPower(
float clearcoatFresnelPower)
2230 emit clearcoatFresnelPowerChanged(m_clearcoatFresnelPower);
2231 markDirty(ClearcoatDirty);
2234void QQuick3DPrincipledMaterial::setVertexColorsEnabled(
bool vertexColors)
2236 if (m_vertexColorsEnabled == vertexColors)
2239 m_vertexColorsEnabled = vertexColors;
2240 emit vertexColorsEnabledChanged(m_vertexColorsEnabled);
2241 markDirty(VertexColorsDirty);
2246 return m_vertexColorsMaskEnabled;
2249void QQuick3DPrincipledMaterial::setVertexColorsMaskEnabled(
bool vertexColorsMaskEnabled)
2254 emit vertexColorsMaskEnabledChanged();
2255 markDirty(VertexColorsDirty);
2260 return m_vertexColorRedMask;
2263void QQuick3DPrincipledMaterial::setVertexColorRedMask(QQuick3DPrincipledMaterial::VertexColorMaskFlags vertexColorRedMask)
2268 emit vertexColorRedMaskChanged();
2269 markDirty(VertexColorsDirty);
2274 return m_vertexColorGreenMask;
2277void QQuick3DPrincipledMaterial::setVertexColorGreenMask(QQuick3DPrincipledMaterial::VertexColorMaskFlags vertexColorGreenMask)
2282 emit vertexColorGreenMaskChanged();
2283 markDirty(VertexColorsDirty);
2288 return m_vertexColorBlueMask;
2291void QQuick3DPrincipledMaterial::setVertexColorBlueMask(QQuick3DPrincipledMaterial::VertexColorMaskFlags vertexColorBlueMask)
2296 emit vertexColorBlueMaskChanged();
2297 markDirty(VertexColorsDirty);
2302 return m_vertexColorAlphaMask;
2305void QQuick3DPrincipledMaterial::setVertexColorAlphaMask(QQuick3DPrincipledMaterial::VertexColorMaskFlags vertexColorAlphaMask)
2310 emit vertexColorAlphaMaskChanged();
2311 markDirty(VertexColorsDirty);
IOBluetoothL2CAPChannel * channel
The QColor class provides colors based on RGB, HSV or CMYK values.
QSSGRenderGraphObject * updateSpatialNode(QSSGRenderGraphObject *node) override
void refSceneManager(QQuick3DSceneManager &)
static void attachWatcher(Context *context, Setter setter, Object3D *newO, Object3D *oldO)
Attach a object-destroyed-watcher to an object that's not owned.
\qmltype Object3D \inqmlmodule QtQuick3D \instantiates QQuick3DObject \inherits QtObject
virtual void markAllDirty()
void opacityMapChanged(QQuick3DTexture *opacityMap)
QQuick3DTexture * clearcoatNormalMap
QQuick3DMaterial::TextureChannelMapping emissiveChannel
void setBaseColorSingleChannelEnabled(bool baseColorSingleChannelEnabled)
void setSpecularSingleChannelEnabled(bool specularSingleChannelEnabled)
void setSpecularAmount(float specularAmount)
void setOcclusionMap(QQuick3DTexture *occlusionMap)
QQuick3DMaterial::TextureChannelMapping opacityChannel
bool emissiveSingleChannelEnabled
float clearcoatRoughnessAmount
void specularTintChanged(float specularTint)
QQuick3DTexture * occlusionMap
void setSpecularChannel(QQuick3DMaterial::TextureChannelMapping channel)
void setLighting(QQuick3DPrincipledMaterial::Lighting lighting)
void opacityChannelChanged(QQuick3DMaterial::TextureChannelMapping channel)
void opacityChanged(float opacity)
QQuick3DMaterial::TextureChannelMapping clearcoatRoughnessChannel
void baseColorSingleChannelEnabledChanged(bool baseColorSingleChannelEnabled)
void occlusionChannelChanged(QQuick3DMaterial::TextureChannelMapping channel)
void setBaseColorMap(QQuick3DTexture *baseColorMap)
void setEmissiveChannel(QQuick3DMaterial::TextureChannelMapping channel)
void metalnessChanged(float metalness)
void metalnessMapChanged(QQuick3DTexture *metalnessMap)
bool vertexColorsMaskEnabled
void roughnessMapChanged(QQuick3DTexture *roughnessMap)
void setMetalnessMap(QQuick3DTexture *metalnessMap)
float clearcoatFresnelPower
QQuick3DTexture * transmissionMap
void metalnessChannelChanged(QQuick3DMaterial::TextureChannelMapping channel)
float clearcoatNormalStrength
QQuick3DMaterial::TextureChannelMapping roughnessChannel
QQuick3DTexture * baseColorMap
float clearcoatFresnelScale
void markAllDirty() override
void setBaseColorChannel(QQuick3DMaterial::TextureChannelMapping channel)
void itemChange(ItemChange, const ItemChangeData &) override
void normalMapChanged(QQuick3DTexture *normalMap)
QQuick3DMaterial::TextureChannelMapping thicknessChannel
void roughnessChanged(float roughness)
void occlusionMapChanged(QQuick3DTexture *occlusionMap)
bool invertOpacityMapValue
QQuick3DMaterial::TextureChannelMapping occlusionChannel
void setNormalStrength(float normalStrength)
void lightingChanged(QQuick3DPrincipledMaterial::Lighting lighting)
void setMetalnessChannel(QQuick3DMaterial::TextureChannelMapping channel)
QQuick3DTexture * thicknessMap
void occlusionAmountChanged(float occlusionAmount)
QQuick3DTexture * metalnessMap
VertexColorMaskFlags vertexColorGreenMask
QQuick3DMaterial::TextureChannelMapping heightChannel
QQuick3DTexture * normalMap
void setEmissiveMap(QQuick3DTexture *emissiveMap)
void setOpacity(float opacity)
void setInvertOpacityMapValue(bool invertOpacityMapValue)
void setSpecularTint(float specularTint)
QQuick3DMaterial::TextureChannelMapping transmissionChannel
void setRoughnessChannel(QQuick3DMaterial::TextureChannelMapping channel)
void normalStrengthChanged(float normalStrength)
void specularReflectionMapChanged(QQuick3DTexture *specularReflectionMap)
void baseColorMapChanged(QQuick3DTexture *baseColorMap)
void specularAmountChanged(float specularAmount)
void setSpecularReflectionMap(QQuick3DTexture *specularReflectionMap)
void baseColorChannelChanged(QQuick3DMaterial::TextureChannelMapping channel)
QQuick3DMaterial::TextureChannelMapping specularChannel
float clearcoatFresnelBias
void setAlphaMode(QQuick3DPrincipledMaterial::AlphaMode alphaMode)
QQuick3DTexture * heightMap
void setOpacityMap(QQuick3DTexture *opacityMap)
void setLineWidth(float width)
QQuick3DTexture * specularMap
void emissiveSingleChannelEnabledChanged(bool emissiveColorSingleChannelEnabled)
VertexColorMaskFlags vertexColorBlueMask
void specularSingleChannelEnabledChanged(bool specularColorSingleChannelEnabled)
void specularMapChanged(QQuick3DTexture *specularMap)
void setOcclusionChannel(QQuick3DMaterial::TextureChannelMapping channel)
void setAlphaCutoff(float alphaCutoff)
QSSGRenderGraphObject * updateSpatialNode(QSSGRenderGraphObject *node) override
bool clearcoatFresnelScaleBiasEnabled
void invertOpacityMapValueChanged(bool invertOpacityMapValue)
void setRoughnessMap(QQuick3DTexture *roughnessMap)
QQuick3DTexture * roughnessMap
QQuick3DTexture * specularReflectionMap
QQuick3DTexture * clearcoatMap
bool specularSingleChannelEnabled
void emissiveFactorChanged(QVector3D emissiveFactor)
VertexColorMaskFlags vertexColorRedMask
void blendModeChanged(QQuick3DPrincipledMaterial::BlendMode blendMode)
VertexColorMaskFlags vertexColorAlphaMask
void setNormalMap(QQuick3DTexture *normalMap)
void setEmissiveFactor(QVector3D emissiveFactor)
QQuick3DTexture * emissiveMap
void emissiveMapChanged(QQuick3DTexture *emissiveMap)
bool baseColorSingleChannelEnabled
void setRoughness(float roughness)
QQuick3DTexture * clearcoatRoughnessMap
void setBlendMode(QQuick3DPrincipledMaterial::BlendMode blendMode)
void alphaCutoffChanged(float alphaCutoff)
QQuick3DMaterial::TextureChannelMapping baseColorChannel
void setOcclusionAmount(float occlusionAmount)
void specularChannelChanged(QQuick3DMaterial::TextureChannelMapping channel)
void setSpecularMap(QQuick3DTexture *specularMap)
void setOpacityChannel(QQuick3DMaterial::TextureChannelMapping channel)
QQuick3DPrincipledMaterial(QQuick3DObject *parent=nullptr)
\qmltype PrincipledMaterial \inherits Material \inqmlmodule QtQuick3D
void alphaModeChanged(QQuick3DPrincipledMaterial::AlphaMode alphaMode)
float attenuationDistance
QQuick3DMaterial::TextureChannelMapping metalnessChannel
void setBaseColor(QColor baseColor)
void baseColorChanged(QColor baseColor)
bool fresnelScaleBiasEnabled
~QQuick3DPrincipledMaterial() override
void roughnessChannelChanged(QQuick3DMaterial::TextureChannelMapping channel)
void setEmissiveSingleChannelEnabled(bool emissiveSingleChannelEnabled)
void setMetalness(float metalnessAmount)
void emissiveChannelChanged(QQuick3DMaterial::TextureChannelMapping channel)
QQuick3DTexture * opacityMap
void setPointSize(float size)
QQuick3DMaterial::TextureChannelMapping clearcoatChannel
QSSGRenderImage * getRenderImage()
The QVector3D class represents a vector or vertex in 3D space.
constexpr QVector3D toVector3D() const noexcept
Returns the 3D vector form of this 4D vector, dropping the w coordinate.
Combined button and popup list for selecting options.
EGLOutputLayerEXT EGLint EGLAttrib value
[5]
bool qFuzzyCompare(qfloat16 p1, qfloat16 p2) noexcept
GLenum GLuint GLintptr GLsizeiptr size
[1]
GLenum GLenum GLenum GLenum mapping
float clearcoatNormalStrength
QSSGRenderImage * opacityMap
QSSGRenderImage * roughnessMap
QSSGRenderImage * clearcoatMap
TextureChannelMapping baseColorChannel
QSSGRenderImage * transmissionMap
QSSGRenderImage * thicknessMap
QSSGRenderImage * clearcoatNormalMap
QSSGRenderDefaultMaterial::MaterialSpecularModel specularModel
bool invertOpacityMapValue
TextureChannelMapping transmissionChannel
VertexColorMaskFlags vertexColorAlphaMask
float clearcoatFresnelPower
QSSGRenderImage * metalnessMap
bool emissiveSingleChannelEnabled
bool vertexColorsMaskEnabled
TextureChannelMapping clearcoatChannel
QSSGRenderImage * clearcoatRoughnessMap
bool specularAmountSingleChannelEnabled
VertexColorMaskFlags vertexColorBlueMask
QSSGRenderImage * specularReflection
TextureChannelMapping emissiveChannel
QSSGRenderImage * colorMap
float clearcoatRoughnessAmount
TextureChannelMapping heightChannel
float clearcoatFresnelScale
QSSGRenderImage * heightMap
QSSGRenderDefaultMaterial::MaterialBlendMode blendMode
float clearcoatFresnelScaleBiasEnabled
TextureChannelMapping opacityChannel
VertexColorMaskFlags vertexColorGreenMask
MaterialLighting lighting
TextureChannelMapping specularAmountChannel
QSSGRenderImage * occlusionMap
TextureChannelMapping occlusionChannel
float fresnelScaleBiasEnabled
float attenuationDistance
bool baseColorSingleChannelEnabled
TextureChannelMapping thicknessChannel
VertexColorMaskFlags vertexColorRedMask
QVector3D attenuationColor
TextureChannelMapping roughnessChannel
QSSGRenderImage * normalMap
TextureChannelMapping metalnessChannel
QSSGRenderImage * specularMap
float clearcoatFresnelBias
QSSGRenderDefaultMaterial::MaterialAlphaMode alphaMode
TextureChannelMapping clearcoatRoughnessChannel
QSSGRenderImage * emissiveMap