MRTK-profil konfigurációs útmutatója


Felhasználói élmény beállításai

Ez a beállítás Mixed Reality eszközkészlet konfigurációs főoldalán található, és meghatározza a Mixed Reality környezet méretezésének alapértelmezett műveletét.

Experiance settings (Tapasztalati beállítások)

Kamerabeállítások

A kamerabeállítások határozzák meg, hogyan lesz beállítva a kamera Mixed Reality projekthez, meghatározva az általános vágólapra, a minőségre és az átlátszóságra vonatkozó beállításokat.

Kameraprofil

Bemeneti rendszer beállításai

A Mixed Reality Project egy robusztus és jól betanított bemeneti rendszert biztosít a projekt körüli összes bemeneti esemény útválasztásához, amely alapértelmezés szerint ki van választva.

Bemeneti rendszer beállításai 1

Az MRTK által biztosított bemeneti rendszer mögött számos más rendszer is található, amelyek segítenek a többplatformos/vegyes valóságon alapuló keretrendszer összetett kereszttitkának absztrakciós rétegeinek absztrakciójában és kezelésében.

Bemeneti rendszer beállításai 2

Az egyes profilok részletes leírását alább olvashatja:


Határ vizualizációs beállításai

A határrendszer lefordítja az alapul szolgáló platformok határ-/őrrendszere által jelentett észlelt határt. A Boundary vizualizáló konfigurációja lehetővé teszi, hogy automatikusan meg tudja mutatni a jelenet rögzített határvonalát a felhasználó pozíciójához viszonyítva. A határ a jeleneten belüli felhasználói teleportálás helyének megfelelően is reagál/frissül.

Boundry Visualization Gépház

Teleportációs rendszer kiválasztása

A Mixed Reality Project teljes funkcionalitású teleportációs rendszert biztosít a projekt teleportációs eseményeinek kezeléséhez, amely alapértelmezés szerint ki van választva.

Teleport rendszerbeállítások

Térbeli tudatosság beállításai

A Mixed Reality Project egy előre összeállított tértudatos rendszert biztosít a projekt térbeli ellenőrzési rendszereihez, amely alapértelmezés szerint ki van választva.

Térbeli tudatosság beállításai 1

Az Mixed Reality Eszközkészlet térbeli tudatosságának konfigurációja lehetővé teszi a rendszer indulásának testre szabást, akár automatikusan, akár az alkalmazás programozott indításakor, akár később, valamint a nézőpont méretének beállítását.

Emellett a háló és a felület beállításait is konfigurálhatja, így tovább szabhatja, hogy a projekt hogyan megértse az Ön környezetét.

Ez csak olyan eszközökre vonatkozik, amelyek beolvasott környezetet tudnak biztosítani.

Térbeli tudatosság beállításai 2

Diagnosztikai beállítások

Az MRTK választható, de rendkívül hasznos funkciója a beépülő modulok diagnosztikai funkciója.

Diagnosztikai beállítások

A diagnosztikai profil számos egyszerű rendszert biztosít a projekt futása közbeni figyeléshez, köztük egy hasznos be-/kikapcsoló kapcsolót, amely engedélyezi/letiltja a kijelzőpanelt a jelenetben.

Diagnosztikai beállítások Rendszerbeállítások 2

Jelenetrendszer beállításai

Az MRTK biztosítja ezt a választható szolgáltatást, amely segít az additív jelenet összetett betöltésében/eltávolításakor. Ha el szeretné dönteni, hogy a Scene System megfelelő lenne-e a projekthez, olvassa el a Scene System Getting Started Guide (Scene System – Első lépések útmutató) útmutatót.

Scene System settings 1

További szolgáltatásbeállítások

Az Mixed Reality Toolkit egyik fejlettebb területének egyike a szolgáltatáslokátorminta implementációja, amely lehetővé teszi bármely "szolgáltatás" regisztrációját a keretrendszerben. Ez lehetővé teszi, hogy a keretrendszer könnyen ki legyen terjeszteni új funkciókkal/rendszerekkel, de lehetővé teszi a projektek számára, hogy kihasználják ezeket a képességeket a saját futásidejű összetevőik regisztrálása érdekében.

Minden regisztrált szolgáltatás továbbra is az összes Unity-esemény teljes előnyét kihasználhatja anélkül, hogy a MonoBehaviour- vagy clunky singleton-minták megvalósítása többletterhelést és költségeket okozna. Ez lehetővé teszi olyan tiszta C#-összetevők futtatását, amelyek nem jár jelenetterheléssel az előtér- és a háttérfolyamatok futtatásához, például rendszereket, futtatókörnyezeti játéklogikát vagy gyakorlatilag bármi mást futtatnak.

további rendszerbeállítások

Bemeneti műveletek beállításai

A bemeneti műveletek lehetővéják a fizikai interakciók és bemenetek absztrakcióját a futásidejű projektekből. A rendszer minden fizikai bemenetet (vezérlőkből/ kézből/egérből/ stb.) lefordít egy logikai bemeneti műveletre a futásidejű projektben való használathoz. Ez biztosítja, hogy függetlenül attól, honnan érkezik a bemenet, a projekt egyszerűen "Dolgok, amit kell tenni" vagy "Interakció" műveletként implementálja ezeket a műveleteket a színfalak mögött.

Új bemeneti művelet létrehozásához egyszerűen kattintson az "Új művelet hozzáadása" gombra, és adjon meg egy rövid szöveges nevet az adott művelet jelentéséhez. Ezután csak ki kell választania egy tengelyt (az adatok típusát), a műveletet közvetítenie kell, fizikai vezérlők esetén pedig a fizikai bemeneti típust, amelyhez csatolható, például:

Tengelymegkötés Adattípus Leírás Példa a használatra
None Nincs adat Üres művelethez vagy eseményhez használatos Eseményindító
Nyers (fenntartott) object Jövőbeli használatra fenntartva N/A
Digitális logikai Logikai típusú adatok be- és kikapcsolása Vezérlő gomb
Egyetlen tengely float Egyetlen pontosságú adatérték Egy tartományba bemenő adat, például egy eseményindító
Kettős tengely 2. vektor Kettős lebegőgörbe típusú dátum több tengelyhez Egy Dpad vagy thumbstick
Három Dof-pozíció Vector3 Pozíció típusú adatok 3 lebegő tengelyről 3D pozícióstílusú vezérlő
Három Dof-rotáció Quaternion Csak forgó bemenet 4 lebegőpontos tengelysel Egy három fokos stílusvezérlő, például Oculus Go-vezérlő
Hat dof Mixed Reality Pose (Vector3, Quaternion) Pozíció és rotáció típusú bemenet Vector3 és Quaternion összetevőkkel Mozgásvezérlő vagy mutató

A bemeneti műveleteket használó események nem korlátozódnak a fizikai vezérlőkre, és továbbra is felhasználhatók a projekten belül, hogy a futásidejű hatások új műveleteket hozzanak létre.

Megjegyzés

A bemeneti műveletek egyike annak a kevés összetevőnek, amely futásidőben nem szerkeszthető, csak tervezési időkonfiguráció. Ezt a profilt nem szabad felcserélni, amíg a projekt fut, mivel a keretrendszer (és a projektek) függősége az egyes tevékenységek azonosítóitól függ.

Konfigurációs profil

Bemeneti műveletek szabályai

A bemeneti művelet szabályaival automatikusan lefordíthat egy bemeneti művelethez generált eseményt különböző műveletekre az adatértéke alapján. Ezek kezelése zökkenőmentesen, a keretrendszeren belül, és nem jár teljesítményköltségekkel.

Például átalakíthatja az egyetlen kettős tengelyű bemeneti eseményt egy DPadről a 4 megfelelő "Dpad Up" / "DPad Down" / "Dpad Left" / "Dpad Right" műveletre (az alábbi képen látható módon).

Ezt a saját kódban is meg lehet tenni. Mivel azonban ez egy nagyon gyakori minta volt, a keretrendszer egy olyan mechanizmust biztosít, amely "az első lépésként" lehetővé teszi ezt.

Bemeneti művelet A szabályok bármelyik elérhető bemeneti tengelyhez konfigurálhatóak. Az egyik tengelytípus bemeneti műveletei azonban lefordíthatóak egy másik, azonos típusú bemeneti műveletre. A kettős tengely műveletét leképezheti egy másik kettős tengely műveletére, de digitális vagy nincs műveletre nem.

Bemeneti művelet szabályprofilja


Mutató konfigurálása

A mutatók arra használhatók, hogy a jelenetben bármilyen bemeneti eszközről interaktivitást irányt adjanak, és a jelenetben található bármely objektummal (amely egy összeütköztetővel rendelkezik, vagy felhasználói felületi összetevő). A mutatók alapértelmezés szerint automatikusan konfigurálva vannak a vezérlőkhöz, a headsethez (tekintet/ fókusz) és az egér/érintés bemenethez.

A mutatók az aktív jeleneten belül is ábrázolhatóak a Mixed Reality Toolkit által biztosított számos sorösszetevő egyikével, vagy bármelyik saját eszközzel, ha implementálják az MRTK IMixedRealityPointer felületet.

Bemeneti mutató profilja
  • Rámutatás kiterjedése: Meghatározza az összes mutató globális rámutatás mértékét, beleértve a tekintetet is.
  • A Raycast Layer Masks (Sugárcímzési réteg maszkja): Meghatározza, hogy mely rétegekre mutatnak a mutatói.
  • Debug Draw Pointing Rays: Hibakeresési segédeszközök a sugárcímzéshez használt sugárok megjelenítéséhez.
  • Hibakeresés a rajzolás rámutató sugár színeinek hibakeresése: A vizualizációhoz használt színek halmaza.
  • Tekintet a kurzor előfedőlapjára: Megkönnyíti a globális tekintet kurzorának megadását bármely jelenethez.

Van egy további segítő gomb is, amely gyorsan a Tekintetszolgáltatóra ugrik, hogy szükség esetén felülbírálja a Tekintet bizonyos értékeit.


Kézmozdulatok konfigurálása

A kézmozdulatok rendszerspecifikus implementációk, amelyek lehetővé teszik bemeneti műveletek hozzárendelését a különböző SDK-k által biztosított különböző "kézmozdulatok" bemeneti HoloLens.

Megjegyzés

A kézmozdulatok jelenlegi implementációja csak HoloLens csak az eszközkészlethez, és a jövőben az eszközkészlethez való hozzáadásukkor tovább lesz javítva a többi rendszeren (még nincsenek dátumok).

Kézmozdulatok konfigurálása

Beszédparancsok

A kézmozdulatokhoz hasonló, egyes futásidejű platformok intelligens "Speech to Text" funkciókat is biztosítanak, és lehetővé teszi a Unity-projektek által fogadott parancsok generálését. Ezzel a konfigurációs profillal a következőket konfigurálhatja:

  1. Általános Gépház – Az Automatikus indítás vagy a Manuális indítás beállítású "Indítási viselkedés" meghatározza, hogy inicializálja-e a KeywordRecognizert a bemeneti rendszer indításakor, vagy hagyja, hogy a projekt döntse el, mikor inicializálja a KeywordRecognizert. A "Recognition Confidence Level" a Unity KeywordRecognizer API-jának inicializálására használható
  2. Beszédparancsok – Regisztrálja a "szavakat", és lefordítja őket a projekt által fogadott bemeneti műveletekre. Szükség esetén billentyűzetművelethez is csatolhatóak.

Fontos

A rendszer jelenleg csak akkor támogatja a beszédet, ha Windows 10-platformokon, például HoloLens- és Windows 10 Desktopon fut, és a jövőben az MRTK-hoz való hozzáadásukkor tovább lesz javítva (dátumok egyelőre nincsenek).

Konfigurációs profil képernyői

Vezérlőleképezés konfigurációja

Az Mixed Reality Toolkit egyik fő konfigurációs képernyője a projekt által használható különböző típusú vezérlők konfigurálása és leképezése.

Az alábbi konfigurációs képernyőn konfigurálhatja az eszközkészlet által jelenleg felismert vezérlőket.

Vezérlőleképezés

Az MRTK alapértelmezett konfigurációt biztosít a következő vezérlőkhöz/rendszerekhez:

  • Egér (beleértve a 3D térbeli egértámogatást)
  • Érintőképernyő
  • Xbox-vezérlők
  • Windows Mixed Reality vezérlők
  • HoloLens kézmozdulatok
  • AREL-wand vezérlők
  • Oculus Touch-vezérlők
  • Oculus távoli vezérlő
  • Általános OpenVR-eszközök (csak haladó felhasználók)

Az előre felépített vezérlőrendszerek rendszerképére kattintva egyetlen bemeneti műveletet konfigurálhat az összes megfelelő bemenethez, például lásd az Oculus Touch vezérlő konfigurációs képernyőjét alább:

Vezérlő konfigurációs képernyője

Megjelenik egy speciális képernyő is, amely más, a fentiekben nem azonosított OpenVR- vagy Unity-bemeneti vezérlők konfigurálásához is rendelkezésre áll.


Vezérlő vizualizációs beállításai

A vezérlőleképezés mellett egy külön konfigurációs profil is rendelkezésre áll, amely testreszabja, hogyan jelennek meg a vezérlők a színfalak mögött.

Ez konfigurálható "Globális" (egy adott kéz vezérlő összes példánya) vagy egy adott vezérlőtípusra/-kézre jellemzően.

Az MRTK a natív SDK-vezérlőmodelleket is támogatja a Windows Mixed Reality és az OpenVR-hez. Ezek GameObject-ként töltődnek be a jelenetbe, és a platform vezérlőkövetési funkcióját használják.

Ha a jelenet vezérlőinek ábrázolása eltolható a fizikai vezérlő pozíciójától, egyszerűen állítsa be az eltolást a vezérlőmodell előfedőjéhez (például a vezérlő előfab átalakítási pozíciójának beállítása eltolási pozícióval).

Vizualizációs profil

Szerkesztő segédprogramok

Az alábbi segédprogramok csak a szerkesztőben működnek, és hasznosak a fejlesztési hatékonyság növelése érdekében.

MRTK-szerkesztő konfigurációs segédprogramjai

Szolgáltatásvizsgáltatók

A Service Inspectors egy csak szerkesztői funkció, amely az aktív szolgáltatásokat képviselő jeleneten lévő objektumokat hoz létre. Ezeknek az objektumoknak a kiválasztásával megjelenik a dokumentációs hivatkozásokat, a szerkesztővizualizációk vezérlését és a szolgáltatás állapotának elemzését lehetővé tő vizsgálók.

Service Inspectors

A szolgáltatásvizsgáltatók engedélyezéséhez ellenőrizze a Use Service Inspectors (Szolgáltatásvizsgáltatók használata) beállítást Gépház a Configuration Profile (Konfigurációs profil) szerkesztőben.

Mélységi puffer renderelője

A mélységi puffer megosztása néhány vegyes valóságú platformmal javíthatja a hologram-stabilizálást. A Windows Mixed Reality például módosíthatja a renderelt jelenet képpontonkénti beállítását, hogy figyelembe veszi a kis fejmozgást a képkockák renderelése során. Ezek a technikák azonban pontos adatokat használó mélységi puffereket igényelnek, hogy tudják, hol és milyen messze van a geometria a felhasználótól.

Annak érdekében, hogy egy jelenet az összes szükséges adatot a mélységi pufferbe renderelje, a fejlesztők a Konfigurációs profil szerkesztőjének Szerkesztő Gépház válthatnak a Renderelés mélységi puffer funkciójával. Ez az aktuális mélységi puffert színként rendereli a jelenetnézetben egy utófeldolgozási hatás () a DepthBufferRenderer fő kamerára való alkalmazásával.

Render Depth Buffer Utility (Rendermélység puffere)A jelenet kék hengerének anyagaZWrite-ki van kapcsolva, így nem ír mélységi adatokat

Profilok módosítása futásidőben

A profilok futásidőben frissítve is lehetnek, és általában két különböző forgatókönyv és időpont van, amelyekben ez hasznos lehet:

  1. MRTK-inicializáláselőtti profilkapcsoló: Indításkor, az MRTK inicializálása és a profil aktívvá válása előtt, lecserélve a még nem használatban lévő profilt a különböző funkciók engedélyezéséhez/letiltásához az eszköz képességei alapján. Ha például a felhasználói élmény olyan VR-ban fut, amely nem rendelkezik térleképezési hardverrel, valószínűleg nincs értelme engedélyezni a térbeli leképezési összetevőt.
  2. Aktív profilkapcsoló:Indítás után, az MRTK inicializálása és egy profil aktívvá válása után felcseréli a jelenleg használatban lévő profilt bizonyos funkciók viselkedésének módosításakor. Előfordulhat például, hogy az alkalmazásban van egy olyan alélmény, amely teljesen el szeretné távolítani a távoli kézmutatókat.

MRTK-inicializálás előtti profilkapcsoló

Ez egy MonoBehaviour csatolásával valósítható meg (az alábbi példában), amely az MRTK inicializálása előtt fut (pl. Az És()). Figyelje meg, hogy a szkriptet (azaz a hívását) a szkriptnél korábban kell végrehajtani, ami a parancsprogram végrehajtási sorrendjének beállításával SetProfileBeforeInitializationMixedRealityToolkit érhető SetProfileBeforeInitialization

using Microsoft.MixedReality.Toolkit;
using UnityEngine;

/// <summary>
/// Sample MonoBehaviour that will run before the MixedRealityToolkit object, and change
/// the profile, so that when the MRTK initializes it uses the profile specified below
/// rather than the one that is saved in its scene.
/// </summary>
/// <remarks>
/// Note that this script must have a higher priority in the script execution order compared
/// to that of MixedRealityToolkit.cs. See https://docs.unity3d.com/Manual/class-MonoManager.html
/// for more information on script execution order.
/// </remarks>
public class PreInitProfileSwapper : MonoBehaviour
{

    [SerializeField]
    private MixedRealityToolkitConfigurationProfile profileToUse = null;

    private void Awake()
    {
        // Here you could choose any arbitrary MixedRealityToolkitConfigurationProfile (for example, you could
        // add some platform checking code here to determine which profile to load).
        MixedRealityToolkit.SetProfileBeforeInitialization(profileToUse);
    }
}

A "profileToUse" helyett előfordulhat, hogy egyes profilok adott platformokra vonatkoznak (például egy a HoloLens 1-hez, egy a VR-hoz, egy a HoloLens 2-hez stb.). Különböző más jelzők (például , vagy hogy a kamera átlátszatlan vagy átlátszó) használatával eldöntse, melyik profilt https://docs.unity3d.com/ScriptReference/SystemInfo.html töltse be.

Aktív profilkapcsoló

Ez úgy valósítható meg, hogy a tulajdonságot egy új profilra használhatja, lecserélve MixedRealityToolkit.Instance.ActiveProfile az aktív profilt.

MixedRealityToolkit.Instance.ActiveProfile = profileToUse;

Vegye figyelembe, hogy a futtatás során a jelenleg futó szolgáltatások megsemmisítése az összes szolgáltatás utolsó LateUpdate() után történik, és az új profilhoz társított szolgáltatások példányosítása és inicializálása az összes szolgáltatás első Update() (frissítés) előtt történik ActiveProfile meg.

A folyamat során észrevehető alkalmazás-hezitálást okozhat. Emellett a szkriptnél magasabb prioritású parancsfájlok is beírhatja az Update (Frissítés) gombra MixedRealityToolkit az új profil megfelelő beállítása előtt. A szkript prioritással kapcsolatos további információkért lásd: Szkriptvégrehajtási sorrend beállításai.

A profilváltási folyamatban a meglévő felhasználói felületi kamera változatlan marad, így biztosítva, hogy a vásznat igénylő Unity felhasználói felületi összetevők továbbra is működnek a kapcsoló után.

Lásd még

A Mixed Reality eszközkészlet a lehető legtöbb olyan konfigurációt központosítja, amely az eszközkészlet kezeléséhez szükséges (kivéve a valódi futásidejű "dolgokat").

Ez az útmutató egy egyszerű útmutató az eszközkészlethez jelenleg elérhető konfigurációs profilképernyőkhöz.

A fő Mixed Reality eszközkészlet konfigurációs profilja

A fő konfigurációs profil, amely a MixedRealityToolkit GameObject elemhez van csatolva a jelenetben, a projektben található eszközkészlet fő belépési pontját biztosítja.

Megjegyzés

Az Mixed Reality-eszközkészlet "zárolja" az alapértelmezett konfigurációs képernyőket, így mindig közös kiindulópontot biztosít a projekthez, és azt is javasolt, hogy a projekt fejlődése során elkezdje meghatározni a saját beállításait. Az MRTK-konfiguráció nem szerkeszthető a lejátszás közben.

MRTK konfigurációs profil

A Mixed Reality Eszközkészlet összes "alapértelmezett" profilja megtalálható az SDK-projektben az Assets/MRTK/SDK/Profiles mappában.

Fontos

A DefaultHoloLens2ConfigurationProfile a 2. HoloLens van optimalizálva. A részletekért lásd: Profilok.

A fő eszközkészlet Mixed Reality konfigurációs profil megnyitásakor a következő képernyő jelenik meg a vizsgálóban:

MRTK-konfigurációs jelenet

Ha a MixedRealityToolkitConfigurationProfile eszközt a jelenetben a MixedRealityToolkit nélkül választja ki, a rendszer megkérdezi, hogy az MRTK automatikusan beállítja-e a jelenet beállítását. Ez nem kötelező, de az összes konfigurációs képernyő eléréséhez egy aktív MixedRealityToolkit objektumnak kell lennie a jelenetben.

Itt található a projekt aktuális aktív futásidejű konfigurációja.

Innen navigálhat az MRTK összes konfigurációs profiljához, beleértve a következőket:

Ezeket a konfigurációs profilokat alább, a vonatkozó szakaszok ismertetik: