Windows 11 の Dynamic Lighting でキーボードやマウスのイルミネーションを統合管理していると、「バックグラウンド ライトの制御」の並び順が勝手に元に戻ってしまうことがあります。特に Armoury Crate を最優先にしたい ASUS ユーザー向けに、レジストリで確実に順番を固定する具体的な手順をまとめました。
症状の整理:Dynamic Lighting の並び順が保存されない
Windows 11(22H2/23H2 以降)には、周辺機器のライティングを OS 標準で制御できる Dynamic Lighting(動的ライティング) 機能が追加されています。
設定画面の場所は次のとおりです。
- 設定 > 個人用設定 > Dynamic Lighting(動的ライティング)
- 画面下部付近にある 「Background light control(バックグラウンド ライトの制御)」 の一覧
この一覧には、例えば次のような項目が表示されます。
- Armoury Crate(ASUS 純正のライティングソフト)
- Dynamic Lighting Background Controller(Windows 側の標準コントローラー)
本記事で取り上げる症状は、次のような流れで発生します。
- 「バックグラウンド ライトの制御」のリストで、Armoury Crate を一番上、Dynamic Lighting Background Controller を一番下にドラッグして並び替える。
- その場では希望どおりの並び順になり、Armoury Crate が優先的にライティングを制御できているように見える。
- いったん 設定アプリを閉じる。
- 再度「設定 > 個人用設定 > Dynamic Lighting」を開くと、並び順が元に戻っている(Dynamic Lighting Background Controller が先頭に戻る)。
このように、UI 上でいくら並び替えても、設定をまたぐと並び順が保存されないというのが今回の問題です。
原因:並び順はレジストリ上の「数値優先度」で決まっている
この挙動の裏側では、Windows のレジストリにある「ライティング・プロバイダー優先度」が使われています。
関連するレジストリ キーは次の場所です。
HKEY_CURRENT_USER\Software\Microsoft\Lighting\providers
このキーの中には、利用可能なライティング・プロバイダーごとに名前と数値が保存されています。環境によって異なりますが、例えば ASUS の環境では次のような値が存在します。
| レジストリ値の名前 | 意味・正体 | 備考 |
|---|---|---|
AmbientHAL | ASUS Armoury Crate 関連のライティング HAL(ハードウェア抽象レイヤー) | Armoury Crate を代表するプロバイダー |
WindowsDynamicLightning | Windows 標準の Dynamic Lighting Background Controller | Lighting ではなく Lightning と綴られている場合あり |
ここで重要なのが、これらの値に設定されている 数値(DWORD) です。
- 数値が小さいほど優先度が高い(=一覧の上に来る)
- 逆に、数値が大きいほど優先度が低い(=一覧の下に来る)
ところが、一部の環境では次のような問題が起きていると考えられます。
- UI 上で並び替えても、レジストリに保存される数値が競合している
- または、Windows 側の Dynamic Lighting プロバイダーの優先度が固定されており、起動時に優先度が 自動的に書き戻されている
その結果、設定アプリを開き直したタイミングで、Dynamic Lighting Background Controller(WindowsDynamicLightning)が最優先に戻るという挙動になります。
優先度のイメージ
優先度のイメージを簡単な表で整理すると、次のようになります。
| 優先度の数値 | 意味 | UI 上の並び |
|---|---|---|
| 1 | 最優先で実行したいプロバイダー | リストの一番上 |
| 2 | 2 番目に優先したいプロバイダー | 上から 2 番目 |
| 3 | 3 番目に優先したいプロバイダー | 上から 3 番目 |
| … | 数字が大きくなるほど優先度は下がる | リストの下の方へ |
つまり、Armoury Crate(AmbientHAL)の値を小さくし、WindowsDynamicLightning の値をそれより大きくすることで、希望どおりの並び順に固定できる、というのが今回の解決策です。
解決策の概要:レジストリでプロバイダー優先度を手動で設定する
UI 上のドラッグ&ドロップだけでは保存されない並び順を、レジストリに直接、数値として書き込んでしまうのが対処法です。
流れとしては次のとおりです。
- 復元ポイントとレジストリのバックアップを必ず作成する
- レジストリ エディターで
HKEY_CURRENT_USER\Software\Microsoft\Lighting\providersを開く - Armoury Crate 関連の値(例:
AmbientHAL)と WindowsDynamicLightning の優先度を変更する - サインアウトまたは再起動して設定を反映させる
- Dynamic Lighting の画面で並び順が保持されているか確認する
以下で、ASUS 環境を例に取りながら、詳しい手順を解説します。
事前準備:必ずバックアップを取ってから作業する
レジストリの編集は、誤って別の値を変更すると思わぬトラブルにつながる場合があります。自己責任で行う作業になるため、必ず次の準備をしておきましょう。
システムの復元ポイントを作成する
- タスクバーの検索ボックスに 「復元ポイントの作成」 と入力し、表示された項目をクリック。
- 「システムのプロパティ」画面が開いたら、「システムの保護」タブで対象のドライブ(通常は C:)を選択。
- 「作成」ボタンをクリックし、任意の名前を付けて復元ポイントを作成する。
対象レジストリキーのエクスポート
- Win + R キーを押して「ファイル名を指定して実行」を開く。
regeditと入力して Enter キーを押し、レジストリ エディターを起動。- 後述するキー
HKEY_CURRENT_USER\Software\Microsoft\Lighting\providersまで移動。 - 左ペインで providers キーを右クリックし、「エクスポート」を選択。
- 任意の名前(例:
lighting_providers_backup.reg)で保存。
万一問題が起きた場合は、この .reg ファイルをダブルクリックすることで 元の状態へ戻すことができます。
手順① レジストリ エディターで該当キーを開く
- Win + R キーで「ファイル名を指定して実行」を開きます。
regeditと入力して Enter。- ユーザーアカウント制御(UAC)が表示されたら「はい」をクリック。
- レジストリ エディターの左側ツリーから、次の順に展開していきます。
HKEY_CURRENT_USERSoftwareMicrosoftLightingproviders
右ペインに、各ライティングプロバイダー名が一覧表示されます。
手順② 各プロバイダーの現在の優先度を確認する
右ペインに表示される主な項目と、その意味は次のとおりです(ASUS 環境の例)。
| 名前 | 種類 | データ(例) | 説明 |
|---|---|---|---|
AmbientHAL | REG_DWORD | 0x00000003 (3) | Armoury Crate/ASUS ライティング HAL の優先度 |
WindowsDynamicLightning | REG_DWORD | 0x00000002 (2) | Dynamic Lighting Background Controller の優先度 |
数値の表示は 16進数 になっていることが多いので、編集時には「10 進数」に切り替えると分かりやすくなります。
- ダブルクリック → 「DWORD(32 ビット)値の編集」ダイアログ
- 「基数」で 「10 進数」 を選択すると、分かりやすい整数で表示・入力できます
手順③ Armoury Crate を優先する数値へ変更する
ここからが本題です。Armoury Crate を Dynamic Lighting より優先したい場合は、次のような優先度に設定すると分かりやすいでしょう。
| プロバイダー | レジストリ名 | 推奨優先度(10 進数) | 目的 |
|---|---|---|---|
| Armoury Crate(ASUS) | AmbientHAL | 2 | Windows より上に表示・優先実行 |
| Dynamic Lighting Background Controller | WindowsDynamicLightning | 3 | Armoury Crate より下に表示・優先度を下げる |
このときの編集手順例は次のとおりです。
WindowsDynamicLightning の優先度を調整する
- 右ペインで
WindowsDynamicLightningをダブルクリック。 - ダイアログが開いたら「基数」を 「10 進数」 に変更。
- 一度 「4」 のような別の値にして「OK」をクリック。
- 再度開き直し、今度は 「3」 に変更して「OK」をクリック。
一度別の値に変えてから目的の値へ戻すことで、内部的に優先度の再計算が行われ、設定が確実に反映されやすくなるケースがあります。
AmbientHAL(Armoury Crate)の優先度を調整する
- 同様に、
AmbientHALをダブルクリック。 - 「基数」を「10 進数」にして、数値を 「2」 に設定。
- 「OK」をクリックして保存。
この結果、10 進数ベースで次のような状態になります。
| レジストリ名 | 設定値(10 進数) | UI 上の位置 |
|---|---|---|
AmbientHAL | 2 | 「バックグラウンド ライトの制御」の上位 |
WindowsDynamicLightning | 3 | Armoury Crate の下 |
他にも Razer や Corsair などのプロバイダーがある場合は、重複しないように 1, 2, 3, 4… と通し番号で振っていくと管理しやすくなります。
手順④ サインアウト/再起動して挙動を確認する
レジストリの値を変更しただけでは、すぐに Dynamic Lighting に反映されないことがあります。
次のいずれかの操作を行い、設定を読み直させます。
- 一度 サインアウトしてから再度サインインする
- PC を 再起動する
再ログイン後、次の手順で動作を確認します。
- 「設定 > 個人用設定 > Dynamic Lighting」を開く。
- 「バックグラウンド ライトの制御」のリストで、上から順に並び順を確認。
- Armoury Crate(例:ASUS Armoury Crate)が上位に、Dynamic Lighting Background Controller が下位になっているかを確認。
- いったん設定アプリを閉じ、再度開いても並びが変わらないかを確認。
ここで並び順が維持されていれば、レジストリによる優先度設定が正しく機能していると考えられます。
うまくいかないときに確認したいポイント
レジストリを変更したのに「まだ戻ってしまう」「順番が反映されない」といった場合は、次のポイントをチェックしてみてください。
基数(16進数/10進数)の設定ミス
- 編集時に「16 進数」で入力してしまうと、意図しない値になる場合があります。
- 例えば、「10 進数」のつもりで 「3」 を入れたはずが、16 進数の 3 はそのまま 3 なので一見問題なさそうに見えますが、他の値との整合性がとれていないこともあります。
- 念のため、すべて 「10 進数」で入力し直すことをおすすめします。
同じ優先度の数値が複数存在している
- 異なるプロバイダーに同じ数字が設定されていると、UI 上での並び順が不安定になりがちです。
- 重要なプロバイダーから順に 1, 2, 3, 4… と重複しない整数で振り直すとトラブルを避けやすくなります。
別ユーザーアカウントを操作している
- キーは
HKEY_CURRENT_USER以下にあるため、現在ログインしているユーザーごとに設定が分かれています。 - 別のユーザーでログインしていると、意図したアカウント側に変更が加わっていないこともあります。
Armoury Crate 側の設定との競合
- Armoury Crate には独自の「ゲームモード」や「シナリオプロファイル」などがあり、Dynamic Lighting の設定と重なっている場合があります。
- 一時的に Armoury Crate 側の 自動切替機能や OS 連携機能をオフにして、挙動が改善するか確認すると切り分けになります。
他メーカーのライティングソフトを使っている場合
本記事では ASUS Armoury Crate を例に説明しましたが、Razer、Corsair、Logitech など、他社のライティングソフトでも考え方は同じです。
- レジストリの
HKEY_CURRENT_USER\Software\Microsoft\Lighting\providersにある名称を一つずつ確認。 - 自分が優先したいライティングソフトに対応する値を、小さめの数値に設定する。
- Windows 標準の
WindowsDynamicLightningの値を、それより大きな数値に設定する。
どの名前がどのソフトに対応しているか分からない場合は、次の手順で推測できます。
- Dynamic Lighting の画面で、問題のソフトを一時的に無効にする(またはアンインストールする)。
- レジストリ エディターで
providersキーを再読み込みし、どの値が消えたか確認する。 - 消えた名前が、そのソフトに対応している可能性が高い。
このようにして対応関係を把握すれば、ASUS 環境以外でも同じテクニックで優先度を調整できます。
よくある質問(FAQ)
Q. レジストリ編集が怖いのですが、どうしても必要ですか?
A. 現時点では、一部の環境で UI 上の並び替えだけでは Windows 側が最優先に戻ってしまう不具合が存在すると考えられます。そのため、「どうしても Armoury Crate を最優先したい」「バックグラウンド ライトの制御の順番を固定したい」という場合は、レジストリ編集が有効な回避策になります。
ただし、無理に行う必要はありません。標準の Dynamic Lighting を優先しても問題ない場合は、そのまま利用するのも一つの選択です。
Q. 数値は 1 や 0 にしてもいいですか?
A. 技術的には 0 や 1 に設定することも可能ですが、他のプロバイダーとの兼ね合いがあるため、「1 から順に番号を振る」運用がおすすめです。
- 最優先にしたいソフト:1 or 2
- 次点のソフト:2 or 3
- それ以外:4 以降
すでに他のプロバイダーが 1 を使っている場合は、そのプロバイダーを 2, 3… へシフトしつつ、全体の整合性が取れるように調整するとよいでしょう。
Q. 将来的に Windows Update で直る可能性はありますか?
A. Dynamic Lighting はまだ新しい機能であり、今後の Windows Update や各ベンダーのアップデートで、UI 上の並び替えだけで安定して保存されるようになる可能性は十分あります。その場合、今回紹介した手動設定は不要になるかもしれません。
ただし、「今すぐ安定して Armoury Crate を最優先にしたい」「ゲームや配信の都合でライティング制御を固定したい」といったニーズがある場合、レジストリによる調整は 現時点での実用的な解決策として有効です。
Q. 元に戻したくなった場合はどうすればいいですか?
A. 事前にエクスポートしておいた .reg ファイルをダブルクリックして適用するか、レジストリ エディターで値を元の数字に戻せば OK です。どの値だったか覚えていない場合は、バックアップからの復元が最も安全です。
まとめ:OS の UI で直らないなら「数値優先度」を直接いじる
Windows 11 の Dynamic Lighting は便利な反面、まだ挙動が安定しない部分もあり、「バックグラウンド ライトの制御」の並び順が保存されないケースが報告されています。
その根本的な理由は、並び順がレジストリ上の「プロバイダー優先度(数値)」で管理されているにもかかわらず、UI 上の操作だけではその値が意図どおりに更新されないことにあります。
この記事で紹介したように、
HKEY_CURRENT_USER\Software\Microsoft\Lighting\providersの値をバックアップしたうえで編集する- Armoury Crate(例:
AmbientHAL)を 2、WindowsDynamicLightning を 3 といった形で、小さい数値ほど優先度が高くなるように割り当てる - サインアウトまたは再起動後に Dynamic Lighting の画面で確認する
という手順を踏めば、UI を開き直しても並び順が戻らない状態を実現できる可能性が高くなります。
レジストリ編集は決して気軽な作業ではありませんが、しっかりバックアップを取りつつ進めれば、Dynamic Lighting と Armoury Crate を共存させつつ、思いどおりのライティング環境を構築できます。Windows 11 の標準機能と各社ユーティリティの “主導権争い” に悩まされている方は、一度この方法を試してみてください。

コメント