背景切换配置(changing background 段)

基本信息

属性 值
配置段名 changing background
默认周期 40 秒
默认渐变 2000 ms
实现 MinecraftDisplayer.backgroundChanging、blendTimeMillis、changeFrequency、shouldGLClear

配置项

backgroundChanging

  • 类型:Boolean
  • 默认:true
  • 行为:开启后每隔 changeFrequency 秒从 randomBackgroundArray(即 layout.backgroundList)随机抽一张图替换 background;新背景与旧背景在 blendTimeMillis 毫秒内进行 ALPHA 混合过渡。

blendTimeMilliseconds

  • 类型:float
  • 默认:2000
  • 范围:[0, 30_000] ms
  • 行为:两张背景 alpha 渐变时长。

changeFrequency

  • 类型:int
  • 默认:40
  • 范围:[1, 9000] 秒
  • 行为:两次切换的间隔。

shouldGLClear

  • 类型:Boolean
  • 默认:false
  • 说明:注释明确写 “No, don’t touch that!”,普通用户不应修改。

切换实现细节

  • randomUnused(String[] options, String current, List<String> used):从候选集中排除当前正在显示的那张,若全部已用过则清空 used 重新洗牌;返回剩余候选随机一条。
  • 在 Imgur 集成开启时,randomBackgroundArray 会持续被扩展(每收到一张回调就 add 进去),所以循环切换会自然覆盖所有图。
  • 切换前先 backgroundChanging=false 时不做此逻辑;useImgur=true 时第一张回调立即覆盖 background(避免要等第一次定时切换才显示新图)。

数值

字段 默认 范围
backgroundChanging true –
blendTimeMilliseconds 2000 [0, 30000]
changeFrequency 40 [1, 9000]
shouldGLClear false –

相关条目