SpotLight Class

Definition

A light source that casts inner and outer cones of light. For example, a flashlight.

public ref class SpotLight sealed : CompositionLight
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 196608)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class SpotLight final : CompositionLight
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 196608)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class SpotLight : CompositionLight
Public NotInheritable Class SpotLight
Inherits CompositionLight
Inheritance
Object Platform::Object IInspectable CompositionObject CompositionLight SpotLight
Attributes

Windows requirements

Device family
Windows 10 Anniversary Edition (introduced in 10.0.14393.0)
API contract
Windows.Foundation.UniversalApiContract (introduced in v3.0)

Examples

_spotLight = _compositor.CreateSpotLight(); 
_spotLight.CoordinateSpace = root; 
_spotLight.InnerConeAngleInDegrees = 30; 
_spotLight.InnerConeColor = Colors.Red; 
_spotLight.OuterConeAngleInDegrees = 45; 
_spotLight.OuterConeColor = Colors.Yellow; 
_spotLight.Offset = new Vector3(30, 30, 200); 
_spotLight.Targets.Add(root);          

Remarks

SpotLight is one of the four light types derived from CompositionLight.

Light Description
AmbientLight A light source that emits non directional light that appears to have been reflected by everything in the scene.
DistantLight An infinitely large distant light source that emits light in a single direction.
PointLight A point source of light that emits light in all directions.
SpotLight A light source that emits inner and outer cones of light.

Note

A Visual cannot be targeted by more than two non-ambient lights (PointLight, SpotLight or DistantLight).

Version history

Windows version SDK version Value added
1709 16299 InnerConeIntensity
1709 16299 OuterConeIntensity
1803 17134 MaxAttenuationCutoff
1803 17134 MinAttenuationCutoff

Properties

Comment

A string to associate with the CompositionObject.

(Inherited from CompositionObject)
Compositor

The Compositor used to create this CompositionObject.

(Inherited from CompositionObject)
ConstantAttenuation

The constant coefficient in the light's attenuation equation. Controls light intensity. Animatable.

CoordinateSpace

The Visual used to determine the light's direction and offset. The light's offset and direction properties are relative to this Visual's coordinate space. SpotLight.CoordinateSpace is a required property. If SpotLight.CoordinateSpace is not set, the SpotLight will not render.

Direction

The direction in which the light is pointing, specified relative to its CoordinateSpace Visual.

Dispatcher

The dispatcher for the CompositionObject.

(Inherited from CompositionObject)
DispatcherQueue

Gets the DispatcherQueue for the CompostionObject.

(Inherited from CompositionObject)
ExclusionsFromTargets

Gets a collection of Visuals that are not targeted by the light.

(Inherited from CompositionLight)
ImplicitAnimations

The collection of implicit animations attached to this object.

(Inherited from CompositionObject)
InnerConeAngle

The SpotLight’s inner cone angle, expressed as a semi-vertical angle in radians. Animatable.

InnerConeAngleInDegrees

The SpotLight’s inner cone angle, expressed as a semi-vertical angle in degrees. Animatable.

InnerConeColor

Color of the spotlight's inner cone. Animatable.

InnerConeIntensity

Gets or sets the intensity of the light in the spotlight's inner cone.

IsEnabled

Gets or sets a value that determines whether the composition light is on.

(Inherited from CompositionLight)
LinearAttenuation

The linear coefficient in the light's attenuation equation that determines how the light falls off with distance. Animatable.

MaxAttenuationCutoff

Gets or sets the maximum range at which this light is effective.

MinAttenuationCutoff

Gets or sets the minimum range at which this light is effective.

Offset

Offset of the light source relative to its CoordinateSpace Visual. Animatable.

OuterConeAngle

The SpotLight’s outer cone angle, expressed as a semi-vertical angle in radians. Animatable.

OuterConeAngleInDegrees

The semi-vertical angle, in degrees, of the SpotLight's outer cone. Animatable.

OuterConeColor

The color of the spotlight's outer cone. Animatable.

OuterConeIntensity

Gets or sets the intensity of the light in the spotlight's outer cone.

Properties

The collection of properties associated with the CompositionObject.

(Inherited from CompositionObject)
QuadraticAttenuation

The quadratic portion of the attenuation equation that determines how the light falls off with distance. Animatable.

Targets

The collection of Visuals targeted by the light.

(Inherited from CompositionLight)

Methods

Close()

Closes the CompositionObject and releases system resources.

(Inherited from CompositionObject)
ConnectAnimation(String, CompositionAnimation)

Connects and animation.

(Inherited from CompositionObject)
DisconnectAnimation(String)

Disconnects an animation.

(Inherited from CompositionObject)
Dispose()

Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.

(Inherited from CompositionObject)
PopulatePropertyInfo(String, AnimationPropertyInfo)

Defines a property that can be animated.

(Inherited from CompositionObject)
StartAnimation(String, CompositionAnimation)

Connects an animation with the specified property of the object and starts the animation.

(Inherited from CompositionObject)
StartAnimation(String, CompositionAnimation, AnimationController)

Connects an animation with the specified property of the object and starts the animation.

(Inherited from CompositionObject)
StartAnimationGroup(ICompositionAnimationBase)

Starts an animation group.

The StartAnimationGroup method on CompositionObject lets you start CompositionAnimationGroup. All the animations in the group will be started at the same time on the object.

(Inherited from CompositionObject)
StopAnimation(String)

Disconnects an animation from the specified property and stops the animation.

(Inherited from CompositionObject)
StopAnimationGroup(ICompositionAnimationBase)

Stops an animation group.

(Inherited from CompositionObject)
TryGetAnimationController(String)

Returns an AnimationController for the animation running on the specified property.

(Inherited from CompositionObject)

Applies to

See also