Skip to main content
在游戏循环内调用 ILampArray 颜色函数以产生效果和动画。本页提供了一些示例。 为简单起见,这些示例将在可能的情况下使用 ILampArray::SetColor 将颜色应用于设备上的每个 Lamp。可以通过使用 ILampArray::SetColorsForIndices 在单个 Lamp 或一组 Lamp 上产生效果。

淡入淡出与闪烁

通过在一定时间间隔内将颜色的 RGB 值乘以一个递增或递减的百分比来淡入或淡出 Lamp。通过反复淡入和淡出 Lamp 来创建闪烁、呼吸或闪光效果。 以下示例让 LampArray 的所有 Lamp 反复亮灭:

颜色循环

通过逐渐增加和减少颜色的红、绿、蓝值来创建颜色循环。这将在 RGB 光谱上一大片颜色范围内进行混合。 以下示例在 LampArray 上执行 RGB 颜色循环。

基于位置的效果

在创建看起来在设备上移动的效果(例如涟漪或波浪)时,请使用 ILampInfo::GetPositionILampArray::GetBoundingBox 以下示例将创建一波从左向右在设备上逐渐淡出的 Lamp。请注意,我们借用了“淡入淡出与闪烁”一节中的缩放概念,但这里是基于每个 Lamp 的。

另请参阅

光照 API 概览 ILampArray 参考
最后修改于 2026年8月7日