Megosztás a következőn keresztül:


Dinamikus világítás

Ez a témakör azt ismerteti, hogy a Windows-alkalmazások hogyan biztosíthatnak dinamikus megvilágítási effektusokat a csatlakoztatott eszközökön, amelyek a nyílt Human Interface Devices (HID)Világítás és megvilágítás standardimplementálják. Különösen az egy vagy több lámpákkal (fényekkel, LED-ekkel, izzókkal stb.) rendelkező eszközök LampArray-specifikációja.

Fontos API-k

Áttekintés

A dinamikus világítással a Windows-alkalmazásfejlesztők és a végfelhasználók is vezérelhetik és szinkronizálhatják a világítási effektusokat kompatibilis perifériákon és más csatlakoztatott eszközökön. Ezekkel a funkciókkal olyan összetartó élményeket biztosíthat, amelyek a felhasználókat szórakoztatják, hatékonyabbá teszik őket, és még akadálymentesebbé is teszik a Windowson keresztüli élményeiket.

támogatott alkalmazástípusok és platformok

  • Win10 1809-es verzió (2018. október) és újabb verziók.
    • Az előtérben futó UWP- és Win32-alkalmazásokra vonatkozik.
  • Windows 11 Build 23466 (előzetes verzió) és újabb verziók.
    • Az előtérben és a háttérbeli (környezeti) UWP- és Win32-alkalmazásokra vonatkozik.
  • Xbox GDK 2023. márciusi 1. és újabb frissítés.

támogatott eszközök és eszköztípusok

  • Billentyűzet vagy billentyűzet.
  • Egér
  • Játékvezérlő (gamepad, repülőbot, kormánykerék stb.).
  • Perifériák (általános eszközök, például hangszórók, egérpadok, mikrofonok, webkamerák stb.).
  • Jelenet (helyiség/színpad/terület világítótestek és hatáselemek, mint például izzók, reflektorfények, stroboszkóplámpák, hirdetőtáblák, kameravillanások stb.).
  • Értesítés (felhasználói figyelemfelkeltő eszközök, például riasztások, hangsegédek stb.).
  • Váz (belső PC-összetevők, például RAM, alaplap, ventilátor stb.).
  • Viselhető (tartozékok, például headsetek, órák, fitneszkövetők, cipők stb.).
  • Bútorok (például székek, asztalok, könyvespolcok stb.).
  • Művészet (például festmény vagy szobor).
  • Headset (kifejezetten a fejhez tervezett tartozékok, például fejhallgatók vagy mikrofonok).

A Windows-alkalmazások szabályozhatják a HID LampArray-eszközöket, ha az alkalmazás az előtérben van (a Windows 10-től kezdve), és ha a háttérben van (más néven környezeti világítási, a Windows 11-től kezdve).

Eszköz rangsorolása

A Windows az alkalmazásállapot alapján rangsorolja a dinamikus világítást. Alapértelmezés szerint az előtéralkalmazások mindig a LampArray-eszközök vezérlőihez vannak rendelve, kivéve, ha a felhasználó másként nem rendelkezik a Beállításokban. Azokban az esetekben, amikor két vagy több környezeti háttéralkalmazás próbál vezérelni egy LampArray-eszközt, a rendszer a Beállítások területen rangsorolja az alkalmazást.

Háttérvilágítás (környezeti)

A Windows.Devices.Lights "környezeti" API-k lehetővé teszik a háttéralkalmazások számára a LampArray-eszközök vezérlését, miközben a felhasználó az előtérben egy nem kapcsolódó alkalmazással kommunikál (például a szinkronizált fényeffektusokat meghajtó zenealkalmazásokkal).

Az alkalmazások a felhasználói beállításoktól függően fogadhatnak LampArray.AvailabilityChanged eseményeket. Az DeviceWatcher osztálysal együtt az alkalmazások nyomon követhetik és kezelhetik az összes csatlakoztatott/leválasztott LampArray-eszközt, és láthatják, hogy a felhasználó melyiket várja el az alkalmazástól. Ilyen például a felhasználói felület, amely ikont jelenít meg az egyes csatlakoztatott eszközökhöz, a nem elérhető eszközök szürkén jelennek meg, és a Dinamikus világítás beállítások lapra mutató hivatkozásokra mutatnak, ahol a felhasználó módosíthatja az előtér-/háttéralkalmazás beállításait.

Felhasználói beállítások

A Dinamikus világítás beállításai képernyő képernyőképe.

A felhasználók testre szabhatják LampArray eszközélményüket (előtérben és háttérben is) a Beállítások –> Személyre szabás –> Dinamikus világítás képernyőn.

  1. Ha csatlakozik, a kompatibilis eszközök megjelennek az oldal tetején található eszközkártyákon, ahol a felhasználók módosíthatják az egyes eszközbeállításokat.

  2. A globális dinamikus világítás beállításai az eszközkártyák alatt találhatók (a beállítások módosítása az összes csatlakoztatott eszközt érinti).

    1. A Dinamikus világítás használata az eszközökön kapcsolóval a felhasználók be- vagy kikapcsolhatják a dinamikus világítást. Ha a dinamikus világítás ki van kapcsolva, az eszközöknek az alapértelmezett nem dinamikus világítási viselkedésükkel kell működniük. A dinamikus világítás beépített alapeffektusokat tartalmaz.
    2. Az előtérben lévő kompatibilis alkalmazások mindig szabályozzák a világítást, lehetővé teszik a felhasználók számára, hogy be- vagy kikapcsolják az alapértelmezett dinamikus világítási alkalmazás viselkedését. Ha ez a funkció ki van kapcsolva, a háttéralkalmazás akkor is vezérelheti a társított eszközöket, ha egy vezérlőt igénylő előtér-alkalmazás aktív.
    3. A Háttérvilágítás szakasz lehetővé teszi, hogy a felhasználók előnyben részesítsék a környezeti háttérvezérlőként regisztrált telepített alkalmazásokat. Ha egy alkalmazást a lista elejére húz, azzal rangsorolja azt, és gondoskodik arról, hogy a lista más alkalmazásai felett is vezérelhesse az eszközöket. A környezeti háttérbeállítások egy eszközhöz és a csatlakoztatott porthoz vannak kötve. Ha kihúzza, majd újra bedugja a LampArray-t egy másik (USB) portba, az más eszközként fog megjelenni.
    4. A Fényerő csúszkával a felhasználók beállíthatják a LED-fényerőt az eszközeiken.
    5. A effektusok legördülő menü lehetővé teszi, hogy a felhasználók színeket és effektusokat válasszanak az eszközeikhez.

    A Dinamikus világítás beállításai effektusok képernyő képernyőképe.

Jegyzet

Ha egy eszköz nincs kiválasztva a háttérvilágítási vezérléshez, akkor "Autonóm módban" működik.

Ez a HID-specifikációban olyan módként van definiálva, amelyben a hardver visszavált a belső vezérlőprogram által meghatározott alapértelmezett viselkedésre. Előfordulhat például, hogy egy eszköz előre programozott vizualizációs effektussal rendelkezik, amely akkor az alapértelmezett, ha az operációs rendszer nem aktívan szabályozza az eszközt, vagy ha a felhasználó nem vesz részt az eszköz operációs rendszerében. Az eszköznek válaszolnia kell a HID parancsra az autonóm módból való visszatéréshez, hogy zökkenőmentes interakciót biztosítson a felhasználói elvárásokkal.

Csomagolás és alkalmazásdentitás

A környezeti háttéralkalmazásoknak deklarálniuk kell a "com.microsoft.windows.lighting" AppExtension értéket az alkalmazásjegyzékben (ennek módjáról további információt Alkalmazásbővítmény létrehozása és telepítésecímű témakörben talál). Ezt a követelményt az AmbientLightingServer érvényesíti, amely csak a bővítményt támogató csomagidentitást (csomagolt alkalmazást) támogató folyamatban fogadja el az AmbientLightingClientből származó kapcsolatokat. Ez a követelmény szükséges ahhoz, hogy a felhasználó meghatározhassa a telepített alkalmazások házirendjét, majd futásidőben korrelálhassa azt.

Az alkalmazás identitása szükséges a környezeti alkalmazásokhoz, így a felhasználói beállítások futásidőben határozhatók meg. Az alkalmazás telepítése után, ha a környezeti API-kat használja, a rendszernek korrelálnia kell egy alkalmazás futó példányát a felhasználó beállításaival. Továbbá ahhoz, hogy az alkalmazás elérhetővé váljon a felhasználó számára a beállítások között, egy telepítés utáni összetevőre van szükség, amely jelzi a rendszernek, hogy az alkalmazás a környezeti világítás API-k jogos felhasználója.

Ezt az identitáskövetelményt MSIX csomagolási (egy Microsoft által kifejlesztett üzembe helyezési és csomagolási technológia, amelyet korábban APPX néven ismertek) révén érik el.

Ha már MSIX-csomagolást használ a csomagoláshoz és a telepítéshez, nincsenek további követelmények.

Ha csomagolatlan alkalmazással rendelkezik, további lépések szükségesek az alkalmazás identitásának beszerzéséhez. A telepítését teljes MSIX-be migrálhatja, vagy használhatja az MSIX egyszerűsített Ritkított csomagolás és külső hely funkcióját. A Sparse Packaging with External Location úgy lett megtervezve, hogy a meglévő alkalmazástelepítések számára lehetővé tegye az alkalmazás identitásának előnyeit, anélkül, hogy a telepítést teljes mértékben MSIX formátumúvá kellene alakítani. Ez egy új lépés a telepítésben/telepítésben, amely eszközökkel hoz létre egy MSIX-csomagot, amely a telepített alkalmazást képviseli.

Meg kell határoznia egy AppXManifest.xml csomagolási jegyzékfájlt,, amely leírja a telepítést. Az MSIX-csomag a MakeAppXPackage eszközzel jön létre. A telepítéskor az MSIX-csomagot egy Package Manager API használatával telepíti, amely meghatározza a telepített végrehajtható fájl helyét. A kényelem érdekében az add-appxpackage PowerShell-szkript ezt az API-viselkedést is becsomagolja. Másik lehetőségként AddPackageByUriAsync is használható a telepítéskor az MSIX-csomag telepítéséhez.

A csomagolatlan alkalmazástelepítések esetében alkalmazásjegyzéket is a végrehajtható fájlra vonatkozóan.

A csomagolt és csomagolatlan alkalmazások részletesebb magyarázatáért tekintse meg a üzembe helyezési áttekintési.

Példák

LampArray-minta

Bemutatja, hogyan vezérelheti a perifériaeszközök RGB-világítását a Windows.Devices.Lights és Windows.Devices.Lights.Effects API-k használatával.

AutoRGB-minta

Bemutatja, hogyan nyerhet ki egyetlen, reprezentatív színt egy asztali képernyőből, és hogyan világíthatja meg a LED-lámpákat egy csatlakoztatott RGB-eszközön.

Lásd még: