Light QML Type

An uncreatable abstract base type for all lights. 更多...

导入语句: import QtQuick3D
继承: Node
继承者: DirectionalLight , PointLight ,和 SpotLight

特性

详细描述

Light itself is an uncreatable base for all of its subtypes. The subtypes provide multiple options to determine the style of the light.

For usage examples, see Qt Quick 3D - 灯光范例 .

另请参阅 DirectionalLight and PointLight .

特性文档编制

ambientColor : color

The property defines the ambient color applied to materials before being lit by this light. The default value is black, rgb(0, 0, 0).


bakeMode : enumeration

The property controls if the light is active in baked lighting, such as when generating lightmaps.

常量 描述
Light.BakeModeDisabled The light is not used in baked lighting.
Light.BakeModeIndirect Indirect lighting contribution (for global illumination) is baked for this light. Direct lighting (diffuse, specular, real-time shadow mapping) is calculated normally for the light at run time. At run time, when not in baking mode, the renderer will attempt to sample the lightmap to get the indirect lighting data and combine that with the results of the real-time calculations.
Light.BakeModeAll Both direct (diffuse, shadow) and indirect lighting is baked for this light. The light will not have a specular contribution and will not generate realtime shadow maps, but it will always have baked shadows. At run time, when not in baking mode, the renderer will attempt to sample the lightmap in place of the standard, real-time calculations for diffuse lighting and shadow mapping.

默认值为 Light.BakeModeDisabled

注意: Just as with Model::usedInBakedLighting , designers and developers must always evaluate on a per-light basis if the light is suitable to take part in baked lighting.

警告: Lights with dynamically changing properties, for example, animated position, rotation, or other properties, are not suitable for participating in baked lighting.

This property is relevant both when baking and when using lightmaps. A consistent state between the baking run and the subsequent runs that use the generated data is essential. Changing to a different value will not change the previously generated and persistently stored data in the lightmaps, the engine's rendering behavior will however follow the property's current value.

For more information on how to bake lightmaps, see the Lightmaps and Global Illumination .

另请参阅 Model::usedInBakedLighting , Model::bakedLightmap , Lightmapper ,和 Lightmaps and Global Illumination .


brightness : real

This property defines an overall multiplier for this light’s effects. The default value is 1.


castsShadow : bool

When this property is enabled, the light will cast (real-time) shadows. The default value is false.

注意: bakeMode is set to Light.BakeModeAll, this property has no effect. A fully baked light always has baked shadows, but it will never participate in real-time shadow mapping.

color : color

This property defines the color applied to models illuminated by this light. The default value is white, rgb(255, 255, 255).


scope : Node

The property allows the selection of a Node in the scene. Only that node and its children are affected by this light. By default the value is null, which indicates no scope selected.

注意: Scoped lights cannot cast real-time shadows, meaning a Light with a scope set should not set castsShadow to true. They can however generate baked shadows when bakeMode is set to Light.BakeModeAll.

shadowBias : real

This property is used to tweak the shadowing effect when objects are casting shadows on themselves. The value range is [-1.0, 1.0]. Generally, a value inside [-0.1, 0.1] is sufficient. The default value is 0.


shadowFactor : real

This property determines how dark the cast shadows should be. The value range is [0, 100], where 0 means no shadows and 100 means the light is fully shadowed. The default value is 5.


shadowFilter : real

This property sets how much blur is applied to the shadows. The default value is 5.


shadowMapFar : real

The property determines the maximum distance for the shadow map. Smaller values improve the precision and effects of the map. The default value is 5000.


shadowMapQuality : enumeration

The property sets the quality of the shadow map created for shadow rendering. Lower quality uses less resources, but produces lower quality shadows while higher quality uses more resources, but produces better quality shadows.

Supported quality values are:

常量 描述
Light.ShadowMapQualityLow Render shadowmap using 256x256 texture.
Light.ShadowMapQualityMedium Render shadowmap using 512x512 texture.
Light.ShadowMapQualityHigh Render shadowmap using 1024x1024 texture.
Light.ShadowMapQualityVeryHigh Render shadowmap using 2048x2048 texture.

默认值为 Light.ShadowMapQualityLow