class QDiffuseSpecularMaterial

The QDiffuseSpecularMaterial class provides a default implementation of the phong lighting effect. More

Inheritance diagram of PySide6.Qt3DExtras.Qt3DExtras.QDiffuseSpecularMaterial

Synopsis

Properties

Methods

Slots

Signals

Note

This documentation may contain snippets that were automatically translated from C++ to Python. We always welcome contributions to the snippet translation. If you see an issue with the translation, you can also let us know by creating a ticket on https:/bugreports.qt.io/projects/PYSIDE

Detailed Description

The phong lighting effect is based on the combination of 3 lighting components ambient, diffuse and specular. The relative strengths of these components are controlled by means of their reflectivity coefficients which are modelled as RGB triplets:

  • Ambient is the color that is emitted by an object without any other light source.

  • Diffuse is the color that is emitted for rought surface reflections with the lights.

  • Specular is the color emitted for shiny surface reflections with the lights.

  • The shininess of a surface is controlled by a float property.

This material uses an effect with a single render pass approach and performs per fragment lighting. Techniques are provided for OpenGL 2, OpenGL 3 or above as well as OpenGL ES 2.

Note

Properties can be used directly when from __feature__ import true_property is used or via accessor functions otherwise.

property alphaBlendingᅟ: bool

Indicates if the alpha information coming from the diffuse property will be taken into account during rendering. Defaults to false.

Access functions:
property ambientᅟ: QColor

Holds the ambient color that is emitted by an object without any other light source.

Access functions:
property diffuseᅟ: object

Holds the diffuse color of the material that is emitted for rough surface reflections with the lights. This can be either a plain color value or a texture.

Access functions:
property normalᅟ: object

Holds the current normal map texture of the material. This can only be a texture, otherwise it is ignored. By default this map is not set.

Access functions:
property shininessᅟ: float

Holds the shininess exponent. Higher values of shininess result in a smaller and brighter highlight.

Defaults to 150.0.

Access functions:
property specularᅟ: object

Holds the specular color of the material that is emitted for shiny surface reflections with the lights. This can be either a plain color value or a texture.

Access functions:
property textureScaleᅟ: float

Holds the current texture scale. It is applied as a multiplier to texture coordinates at render time. Defaults to 1.0.

When used in conjunction with QTextureWrapMode::Repeat, textureScale provides a simple way to tile a texture across a surface. For example, a texture scale of 4.0 would result in 16 (4x4) tiles.

Access functions:
__init__([parent=None])
Parameters:

parentQNode

Constructs a new QDiffuseSpecularMaterial instance with parent object parent.

alphaBlendingEnabledChanged(enabled)
Parameters:

enabled – bool

Notification signal of property alphaBlendingᅟ .

ambient()
Return type:

QColor

See also

setAmbient()

Getter of property ambientᅟ .

ambientChanged(ambient)
Parameters:

ambientQColor

Notification signal of property ambientᅟ .

diffuse()
Return type:

object

See also

setDiffuse()

Getter of property diffuseᅟ .

diffuseChanged(diffuse)
Parameters:

diffuse – object

Notification signal of property diffuseᅟ .

isAlphaBlendingEnabled()
Return type:

bool

Getter of property alphaBlendingᅟ .

normal()
Return type:

object

See also

setNormal()

Getter of property normalᅟ .

normalChanged(normal)
Parameters:

normal – object

Notification signal of property normalᅟ .

setAlphaBlendingEnabled(enabled)
Parameters:

enabled – bool

See also

isAlphaBlendingEnabled()

Setter of property alphaBlendingᅟ .

setAmbient(ambient)
Parameters:

ambientQColor

See also

ambient()

Setter of property ambientᅟ .

setDiffuse(diffuse)
Parameters:

diffuse – object

See also

diffuse()

Setter of property diffuseᅟ .

setNormal(normal)
Parameters:

normal – object

See also

normal()

Setter of property normalᅟ .

setShininess(shininess)
Parameters:

shininess – float

See also

shininess()

Setter of property shininessᅟ .

setSpecular(specular)
Parameters:

specular – object

See also

specular()

Setter of property specularᅟ .

setTextureScale(textureScale)
Parameters:

textureScale – float

See also

textureScale()

Setter of property textureScaleᅟ .

shininess()
Return type:

float

See also

setShininess()

Getter of property shininessᅟ .

shininessChanged(shininess)
Parameters:

shininess – float

Notification signal of property shininessᅟ .

specular()
Return type:

object

See also

setSpecular()

Getter of property specularᅟ .

specularChanged(specular)
Parameters:

specular – object

Notification signal of property specularᅟ .

textureScale()
Return type:

float

See also

setTextureScale()

Getter of property textureScaleᅟ .

textureScaleChanged(textureScale)
Parameters:

textureScale – float

Notification signal of property textureScaleᅟ .