Záznam vstupní animace — MRTK2

MRTK obsahuje záznamový systém, pomocí kterého lze do animačních souborů ukládat údaje o pohybu hlavy a sledování rukou. Zaznamenaná data se pak dají přehrát pomocí vstupního simulačního systému.

Vstup záznamu je užitečný nástroj v různých situacích:

  • Vytváření automatizovaných testů pro interakci, manipulaci, řešitele atd. Vytváření pohybu ovladačů a rukou pro tyto testy může být časově náročné. Přímý záznam záznamu může proces urychlit a poskytnout data z reálného světa.
  • Výuka použití prvků uživatelského rozhraní prostřednictvím animací Když uživatelům ukážeme, jak pracovat s tlačítky a dalšími objekty, můžete křivku učení vyhladit.
  • Ladění neočekávaného chování, ke kterému může dojít při běžném používání. Systém záznamu podporuje koncept "vyrovnávací paměti", který umožňuje zaznamenávat nedávné vstupy na pozadí. Viz Služba záznamu vstupu.

Služby nahrávání a přehrávání

Pro záznam a přehrávání vstupu jsou k dispozici dvě služby vstupního systému.

Služba záznamu vstupu

InputRecordingService přebírá data z hlavní kamery transformace a aktivních ovladačů rukou a ukládá je do interní vyrovnávací paměti. Po vyžádání jsou tato data serializována do binárních souborů pro uložení a pozdější přehrání.

Diagram záznamu

Pokud chcete zahájit nahrávání vstupu, zavolejte StartRecording funkci. StopRecording pozastaví nahrávání (ale nezahodí dosud zaznamenaná data, použijte DiscardRecordedInput k tomu v případě potřeby).

Ve výchozím nastavení je velikost vyrovnávací paměti pro záznam omezena na 30 sekund. Díky tomu může záznamová služba uchovávat záznam na pozadí, aniž by se hromadily příliš mnoho dat, a v případě potřeby pak uložit posledních 30 sekund. Časový interval je možné změnit pomocí RecordingBufferTimeLimit vlastnosti nebo nahrávání může být neomezené pomocí UseBufferTimeLimit možnosti .

Data ve vyrovnávací paměti záznamu lze uložit do binárního souboru pomocí funkce SaveInputAnimation .

Podrobnosti o formátu binárního souboru najdete v tématu Specifikace vstupního formátu souboru animace.

Služba přehrávání vstupu

InputPlaybackService přečte binární soubor se vstupními daty animace a pak tato data použije prostřednictvím služby InputSimulationService k opětovnému vytvoření zaznamenaných pohybů.

Přehrát diagram

Pokud chcete začít přehrávat vstupní animaci, měla by být načtena ze souboru pomocí funkce LoadInputAnimation .

Pokud chcete ovládat přehrávání animací, zavolejte hovor na Přehrát, Pozastavit nebo Zastavit .

Aktuální čas animace lze také ovládat přímo pomocí vlastnosti LocalTime .

Upozornění

Smyčka nebo resetování vstupní animace nebo nastavení LocalTime přímo drhnutím časové osy může při manipulaci se scénou přinést neočekávané výsledky. Zaznamenávají se pouze pohyby vstupu, žádné další změny, jako je přesunutí objektů nebo překlopení přepínačů, nebudou resetovány. Pokud dojde k nevratným změnám, nezapomeňte scénu znovu načíst.

Nástroje editoru pro nahrávání a přehrávání vstupní animace

V editoru Unity existuje řada nástrojů pro nahrávání a zkoumání vstupní animace. K těmto nástrojům se dostanete v okně vstupních simulačních nástrojů, které lze otevřít z nabídky Mixed Reality Toolkit > Utilities > Input Simulation.

Poznámka

Nahrávání vstupu a přehrávání funguje jenom v režimu přehrávání.

Vstupní okno záznamu má dva režimy:

  • Záznam pro vstup záznamu v režimu přehrávání a jeho uložení do souborů animace.

    Při přepnutí na tlačítko záznamu InputRecordingService je povolen vstup záznamu. Když vypnete tlačítko nahrávání, zobrazí se výběr pro uložení souboru a nahraná vstupní animace se uloží do vybraného cíle.

    V tomto režimu je také možné změnit časový limit vyrovnávací paměti.

  • Přehrávání pro načítání souborů animací a následné opětovné vytvoření vstupu prostřednictvím vstupního simulačního systému

    Nejprve je nutné v tomto režimu načíst animaci. Po vstupu záznamu v režimu záznamu se výsledná animace automaticky načte. Můžete také kliknout na tlačítko Načíst a vybrat existující soubor animace.

    Ovládací tlačítka času zleva doprava jsou:

    • Resetujte dobu přehrávání na začátek animace.
    • Přehrávejte animaci nepřetržitě v průběhu času.
    • Krok vpřed o jeden krok.

    Pomocí posuvníku můžete také procházet časovou osu animace.

Upozornění

Smyčka nebo resetování vstupní animace nebo scrubbing na časové ose může při manipulaci se scénou přinést neočekávané výsledky! Zaznamenávají se pouze pohyby vstupu, žádné další změny, jako je přesunutí objektů nebo překlopení přepínačů, nebudou resetovány. Pokud dojde k nevratným změnám, nezapomeňte scénu znovu načíst.