Cvičení – přidání interakce pomocí rukou s využitím ObjectManipulatoru

Dokončeno

Skript ObjectManipulator podporuje způsob přímé manipulace se vstupním modelem rukou a ovladače pohybu. Když je skript připojený k objektu, může uživatel přesunout, škálovat nebo otočit objekt rukama. V tomto cvičení vytvoříte dvě datové krychle, připojíte k nim potřebné skripty a pak přesunete datové krychle.

Přidání a úprava první datové krychle

  1. Na řádku nabídek vyberte GameObject>3D Objektová>krychle.

    Screenshot of menu commands for adding the cube.

    Výchozí velikost datové krychle je jeden krychlový měřič, který je pro naše účely příliš velký. Velikost zvětšujeme na 20 krychlových centimetrů.

  2. Vyberte datovou krychli a potom v inspektoru změňte hodnoty měřítka datové krychle v části Transformace na následující:

    X = 0,2, Y = 0,2, Z = 0,2

    Datová krychle byla umístěna ve scéně na výchozí pozici (0,0,0). To znamená, že datová krychle je na stejné pozici jako náhlavní souprava uživatele a uživatel neuvidí datovou krychli, dokud se nepřesune dozadu. Hodnoty pozice datové krychle změníme tak, aby byly v lepším umístění pro prohlížení.

  3. V inspektoru změňte hodnoty pozice datové krychle v části Transformace na následující:

    X = -0,2, Y = 1,6, Z = 0,5

    Screenshot of the cube's transform component after updates.

    Chceme vidět tři strany datové krychle, takže změníme také otočení datové krychle.

  4. V inspektoru změňte hodnoty otočení datové krychle v hodnotách oddílu Transformace na následující:

    X = 9, Y = 14, Z = 0

    Tip

    Pokud chcete datovou krychli přiblížit, vyberte ji, ujistěte se, že kurzor najede myší na okno Scéna , a stiskněte klávesu F . Tímto způsobem můžete přiblížit libovolný objekt.

Přidání skriptů do datové krychle

Aby byl objekt "uchopitelný" s sledovanými rukama, musí mít připojené tři součásti:

  • Komponenta Sbajovač (tady nemusíte nic dělat; Datová krychle Unity už má ve výchozím nastavení připojený sbalovač boxů.
  • Komponenta Manipulátor objektů (skript)
  • Komponenta Constraint Manager (skript)
  1. Pokud je datová krychle stále vybraná, vyberte v okně inspektoru tlačítko Přidat komponentu a vyhledejte a vyberte skript Manipulátoru objektu.

    Screenshot of adding the Object Manipulator script.

    Skript manipulátoru objektu umožňuje pohyblivý, škálovatelný a otočný objekt jedním nebo dvěma rukama. Když přidáte skript manipulátoru objektu, skript Správce omezení se automaticky přidá také, protože na něm závisí skript manipulátoru objektu.

    Screenshot of the Constraint Manager script added to the cube.

Aktualizace materiálu datové krychle

Pro účely výkonu doporučujeme místo výchozích materiálů Unity používat materiály MRTK.

  1. Pokud je datová krychle stále vybraná, najděte a rozbalte část Materiály v komponentě Mesh Renderer.
  2. Nahraďte výchozí materiál MRTK_Standard_White materiálem umístěným ve standardních materiálech> MRTK. Můžete to provést přetažením materiálu přímo do pole Element v části Materiály .

Přidání druhé datové krychle

  1. V hierarchii klikněte pravým tlačítkem myši na datovou krychli a vyberte Duplikovat. Duplicitní datová krychle se zobrazí s názvem Datová krychle (1).

  2. Klikněte pravým tlačítkem myši na původní datovou krychli, vyberte Přejmenovat a pojmenujte datovou krychli v blízkosti datové krychle.

  3. Klikněte pravým tlačítkem myši na duplicitní datovou krychli, vyberte Přejmenovat a pojmenujte datovou krychli Far.

    V tuto chvíli to vypadá, že v zobrazení scény je jenom jedna datová krychle. Je to proto, že v blízkosti datové krychle a vzdálené krychle jsou na stejném místě. Pojďme změnit pozici a otočení Far Cube.

  4. Pokud je far cube stále vybraná, změňte její hodnoty v komponentě Transform na následující:

    Pozice: X = 0,6, Y = 1,6, Z = 1,1

    Otočení: X = 27, Y = 0, Z = 0

    Fotoaparát by teď měl vidět nejbližší datovou krychli vlevo a far cube o něco dál vpravo. Potvrďte to tak, že v hierarchii vyberete hlavní Kamera (v části MRTK XR Rig> Kamera Offset) a pak se podíváte do okna Hlavní Kamera v okně Scéna.

    Screenshot of the Main Camera view in the Scene window.

    Tip

    Pokud chcete, aby zobrazení v okně Scéna vypadalo podobně jako v okně Scéna , posuňte se v okně Scény . Pokud to ve výchozím nastavení není, budete možná muset nastavit vymazat příznaky fotoaparátu na Skybox.

Chytněte a přesuňte datové krychle v režimu přehrávání.

  1. Vyberte tlačítko Přehrát. Když se projekt začne přehrávat, zobrazení se přepne do okna Game .

    Screenshot of the Game window after entering Play mode.

    Poznámka:

    Před přehráváním ověřte, že v části Project Nastavení> MRTK3 existuje platná sada profilů.

  2. Vyberte tlačítko se třemi tečky nad pravým horním rohem okna Game a pak vyberte Maximalizovat.

    Screenshot of Maximize command for the Game window.

  3. Stisknutím a podržením mezerníku se simulovaná pravá ruka zobrazí v zobrazení.

  4. Přesuňte simulovanou ruku blíž k blízké datové krychli, dokud se nedotkne datové krychle na straně nebo dole.

    Screenshot of the simulated right hand touching the Near Cube.

  5. Klikněte na levé tlačítko myši (tím se z ruky "uchopí" datová krychle) a přetáhněte datovou krychli kolem scény.

    Screenshot of Move the cube.

    K zachycení a přesunutí Far Cube použijeme vzdálený ukazatel připojený k simulované ruce.

  6. Pokud potřebujete, stiskněte a podržte mezerník znovu, aby se simulovaná pravá ruka zobrazila. Všimněte si vzdáleného ukazatele, který se rozšiřuje od konce indexového prstu ruky.

    Screenshot of simulated hand's far pointer.

  7. Přesuňte ruku blíž ke vzdálené krychli, dokud neuvidíte špičku ukazatele na datové krychli. Možná budete muset ruku posouvat v kruhovém pohybu několikrát, aby se špička ukazatele zobrazila v datové krychli.

    Screenshot of the far pointer touching the cube.

  8. Klikněte na levé tlačítko myši (tím se ruka zavře, vezme to, co nazýváme "gesto připnutí") a pak přetáhněte datová krychle kolem scény.