Skip to main content
Sends all staged lighting colors to the input device in a single update.

Syntax

Parameters

This method has no parameters.

Return value

Type: void

Remarks

Colors that you set by calling IGameInputDevice::SetLightingColor are only staged; they don’t change the lamps until you call ApplyLightingColors. This method sends the staged colors of every lamp to the device in a single write, so changes to several groups or lamps take effect at the same time. Only lamps that have a staged color are updated. If no colors are staged, the call has no effect. Staged colors remain in effect after they’re applied. To change one group later, stage the new color for that group and call ApplyLightingColors again; the colors of the other lamps are preserved. To discard all staged colors and return the lamps to their default behavior, call IGameInputDevice::ApplyLightingSystemDefault. When the device disconnects, its staged colors are discarded. Calls on a disconnected device have no effect. The following example sets the face buttons of a controller to red and its center light to blue, and then applies both colors in a single update.
Lighting support depends on the device and the platform. Currently, GameInput supports lighting on Windows Dynamic Lighting (LampArray) devices and on the lightbar of DualSense controllers.

Requirements

Header: GameInput.h Library: gameinput.lib Supported platforms: Windows, XBOX One family consoles and XBOX Series consoles

See also

Overview of GameInput
IGameInputDevice
IGameInputDevice::SetLightingColor
IGameInputDevice::ApplyLightingSystemDefault
IGameInputDevice::GetSupportedLightingGroups
GameInputColor
GameInputLightingGroups

Version History

Last modified on November 5, 2026