Cvičení – přidání ruční interakce s objectmanipulatorem

Dokončeno

ObjectManipulator skript podporuje přímé manipulace režim vstupu 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řidejte a upravte první krychli

  1. V řádku nabídek vyberte GameObject>3D Objekt>Krychle.

    Snímek obrazovky s příkazy nabídky pro přidání krychle

    Výchozí velikost krychle je jeden krychlový metr, což je pro naše účely příliš velké. Velikost zmenšíme na 20 krychlových centimetrů.

  2. Vyberte datovou krychli a potom v inspektoru změňte hodnoty škálování datové krychle v části Transformovat následujícím způsobem:

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

    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. Změníme hodnoty polohy krychle, aby byla na lepším místě pro zobrazení.

  3. Ve inspektoruzměňte hodnoty pozice krychle v části Transform na následující:

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

    Snímek obrazovky komponenty transformační krychle po aktualizacích

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

  4. V Inspektoruzměňte hodnoty rotace krychle v oddílu Transformace na následující:

    X = 9, Y = 14, Z = 0

    Spropitné

    Pokud chcete krychli přiblížit, vyberte ji, ujistěte se, že kurzor se nachází nad oknem 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 Kolizní (tady nemusíte nic dělat; krychle Unity už má ve výchozím nastavení připojený Box Collider).
  • Komponenta Manipulátor objektů (skript)
  • Komponenta Constraint Manager (skript)
  1. Je-li krychle stále vybraná, v okně inspektoru vyberte tlačítko Přidat součást a vyhledejte a vyberte skript Objekt manipulátoru.

    snímek obrazovky s přidáním skriptu manipulátoru objektu

    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.

    Snímek obrazovky se skriptem Správce omezení přidaný ke krychli

Aktualizovat materiál 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 oddíl Materials komponenty Mesh Renderer.
  2. Nahraďte výchozí materiál materiálem MRTK_Standard_White umístěným v části Standardní prostředky MRTK>Materiály. Můžete to udělat přetažením materiálu přímo do pole Element v části Materiály.

Přidejte druhou krychli

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

  2. Klikněte pravým tlačítkem myši na původní krychli, vyberte Přejmenovata pojmenujte krychli Near Cube.

  3. Klikněte pravým tlačítkem myši na duplikovanou krychli, vyberte Přejmenovata pojmenujte krychli Far Cube.

    V tuto chvíli to vypadá, že v zobrazení Scéna je jenom jedna datová krychle. Je to proto, že Blízká krychle a Vzdálená krychle jsou přesně 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žší krychli vlevo a vzdálenější krychli o něco dál vpravo. V hierarchii vyberte Hlavní kameru (v části MRTK XR Rig>Kamera Posun), poté se podívejte do okna Hlavní kamera v okně Scéna.

    snímek obrazovky hlavního zobrazení kamery v okně Scéna

    Spropitné

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

Uchopte a přesuňte krychle v herním režimu.

  1. Vyberte tlačítko Přehrát. Jakmile se projekt začne přehrávat, pohled se přepne na okno Game.

    snímek obrazovky s oknem Hry po přechodu do režimu hraní

    Poznámka

    Před spuštěním ověřte, že je v části nastavení projektu profil nastaven pod>MRTK3.

  2. Vyberte tlačítko tří teček nad pravým horním rohem okna hry a pak vyberte Maximalizovat.

    snímek obrazovky s příkazem Maximalizovat pro okno Game

  3. Stiskněte a podržte mezerník, aby se simulovaná pravá ruka zobrazila v zobrazení.

  4. Přesuňte simulovanou ruku blíž k blízké krychli, dokud se nedotkne krychle ze strany nebo zespodu.

    snímek obrazovky simulované pravé ruky dotýkající se objektu Near Cube.

  5. Klikněte na levé tlačítko myši (tím se ruka "uchopí" krychli) a přetáhněte krychli po scéně.

    Snímek obrazovky Posun kostky

    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.

    snímek obrazovky se simulovaným ukazatelem ruky

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

    Snímek obrazovky s dalekým ukazatelem, který se dotýká krychle

  8. Klikněte na levé tlačítko myši (tím se ruka zavře a použije to, co nazýváme "gesto připnutí"), a pak posuňte krychli v rámci scény.