IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

QSpotLight Class

Encapsulate a Spot Light object in a Qt 3D scene.

This class was introduced in Qt 5.5.

Article lu   fois.

L'auteur

Liens sociaux

Viadeo Twitter Facebook Share on Google+   

QSpotLight Class

  • Header: QSpotLight

  • Since: Qt 5.5

  • CMake:

    find_package(Qt6 REQUIRED COMPONENTS 3drender)

    target_link_libraries(mytarget PRIVATE Qt6::3drender)

  • qmake: QT += 3drender

  • Inherited By:

  • Instantiated By: qml-qt3d-render-spotlight.xml

  • Inherits: Qt3DRender::QAbstractLight

Detailed Description

A spotlight is a light source that emits a cone of light in a particular direction.

A spotlight uses three attenuation factors to describe how the intensity of the light decreases over distance. These factors are designed to be used together in calcuating total attenuation. For the materials in Qt3D Extras the following formula is used, where distance is the distance from the light to the surface being rendered:

 
Sélectionnez
totalAttenuation = 1.0 / (constantAttenuation + (linearAttenuation * distance) + (quadraticAttenuation * distance * distance));

Custom materials may choose to interpret these factors differently.

Property Documentation

 

constantAttenuation : float

Specifies the constant attenuation of the spot light.

The exact meaning and use of this property is up to the material implementation.

Access functions:

  • float constantAttenuation() const

  • void setConstantAttenuation(float value)

Notifier signal:

  • void constantAttenuationChanged(float constantAttenuation)

cutOffAngle : float

Specifies the cut off angle of the spot light.

The exact meaning and use of this property is up to the material implementation.

Access functions:

  • float cutOffAngle() const

  • void setCutOffAngle(float cutOffAngle)

Notifier signal:

  • void cutOffAngleChanged(float cutOffAngle)

linearAttenuation : float

Specifies the linear attenuation of the spot light.

The exact meaning and use of this property is up to the material implementation.

Access functions:

  • float linearAttenuation() const

  • void setLinearAttenuation(float value)

Notifier signal:

  • void linearAttenuationChanged(float linearAttenuation)

localDirection : QVector3D

Specifies the local direction of the spot light.

The exact meaning and use of this property is up to the material implementation.

Access functions:

  • localDirection() const

  • void setLocalDirection(const &localDirection)

Notifier signal:

  • void localDirectionChanged(const &localDirection)

quadraticAttenuation : float

Specifies the quadratic attenuation of the spot light.

The exact meaning and use of this property is up to the material implementation.

Access functions:

  • float quadraticAttenuation() const

  • void setQuadraticAttenuation(float value)

Notifier signal:

  • void quadraticAttenuationChanged(float quadraticAttenuation)

Member Function Documentation

 

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

Constructs a new QSpotLight with the specified parent.

Vous avez aimé ce tutoriel ? Alors partagez-le en cliquant sur les boutons suivants : Viadeo Twitter Facebook Share on Google+