Sdílet prostřednictvím


Uchopte, podržte a zahoďte pomocí interaktivně použitelných

Přehled

Mesh Interactables je systém pro konfiguraci objektů pomocí skriptů Unity, které definují interakci s objektem nebo chováním avatara za běhu. Skripty definují vlastnosti objektu, se kterým lze pracovat pomocí interakce XRI. Sada nástrojů Mesh obsahuje skripty různých typů objektů, které je možné definovat. Při spuštění projektu nastaví všechny nezbytné předfaktory a nastavení vyžadované pro objekty nebo avatar, aby se chovaly podle definice. Pokud chcete zobrazit přibližný náhled toho, jak budou vaše interagovatelné objekty vypadat a vypadat při jejich spuštění v aplikaci Mesh, nezapomeňte nastavit režim přehrávání s emulací Mesh. Mějte na paměti, že funkce IK zobrazená v aplikaci Mesh není dostupná v režimu přehrávání s emulací Mesh.

Komponenta Nastavení pro interakci se sítí

Chcete-li vytvořit objekt pro interakci, musíte přidat komponentu Mesh Interactable Setup .

  1. V hierarchii vyberte objekt.

  2. V inspektoru klikněte na tlačítko Přidat komponentu a pak vyberte Možnost Interakce se sítí.

    Snímek obrazovky dialogového okna Přidat komponentu s výběrem komponenty Pro interakci se sítí

Komponenta je přidána s výchozí interagovatelný typ vlastnost nastavena na Basic. (Typy objektů budou vysvětleny v další části.)

Snímek obrazovky komponenty Interagovatelná instalace sítě s typem objektu nastaveným na Interagovatelné

Vlastnosti pro skupinu objektů, které se chovají stejně, lze nastavit pomocí nadřazené komponenty Mesh Interagovatelné nastavení . Vlastnosti se použijí pro všechny podřízené položky s pevnými body za běhu tím, že automaticky přidá komponentu Mesh Interagovatelné tělo do každého podřízeného objektu. Můžete chtít přidat interagovatelné tělo sítě ručně, aby bylo možné použít mesh interagovatelné se skriptováním vizuálů, například s událostmi interakce nebo upravit manipulovatelnou cílovou transformaci prostřednictvím vizuálního skriptu.

Snímek obrazovky komponenty Interagovatelné tělo sítě

Poznámky:

  • Interagovatelné tělo sítě umožní, aby se jednotlivé interakce mohly chovat nezávisle.

  • Pokud chcete, aby byla fyzika povolená, musí být do objektu přidána pevná.

Získání nápovědy

V části Nastavení interagovatelných sítí a interagovatelných součástí textu sítě můžete kliknutím na tlačítko "?" přejít na stránku v dokumentaci mesh, která obsahuje nápovědu k funkci, ke které je tlačítko připojeno.

Snímek obrazovky s interaktivně použitelnými komponentami sítě se zvýrazněným kontextovým tlačítkem nápovědy

Interagovatelné typy objektů

Existují čtyři typy objektů:

  • Basic
  • Manipulable
  • Vybavení
  • Hoditelné

Výběr typu objektu:

  • V komponentě Interagovatelná instalace sítě klikněte na rozevírací seznam Interagovatelný typ a pak vyberte jednu ze čtyř možností.

Snímek obrazovky s možnostmi nabídky Typ objektu v komponentě Text interagovatelné sítě

Basic

Jak je uvedeno výše, jedná se o výchozí typ. Když uživatel najede myší na objekt nebo ho vybere, může vyvolat zpětná volání a ostatní skripty můžou reagovat. Pokud máte například tlačítko, které chcete použít k povolení jiného objektu, přidejte tento interagovatelný typ na tlačítko se zpětným voláním OnSelected , aby byl tento jiný objekt povolený. Tlačítko bude plně interagovatelné pouze přidáním tohoto typu a sbalitele; Nebudete muset dělat nic jiného.

Poznámka: Další tři interagovatelné typy - Manipulable, Equippable a Throwable (vysvětleno níže), mají stejné atributy jako základní typ, ale s dalšími funkcemi.

Další informace o nastavení základního typu objektu

Manipulable

Objekt tohoto typu můžete přesunout ze vzdálenosti; konkrétně budete manipulovat s jeho transformací za běhu a pohybovat se prostorem na konci interagátoru paprsku. Klávesové zkratky jsou k dispozici pro otočení nebo překlad objektu. Pro manipulaci s objekty v aplikaci Mesh můžete zapnout nastavení IK pro ruku avatara a sledovat objekt. Manipulovatelné objekty nevyžadují pevnou nikoho, ale pokud chcete, aby objekty měly fyzikální schopnosti, měli byste ho přidat.

Snímek obrazovky s prostředím Mesh s kávovarem, se kterým se manipuluje.

Další informace o nastavení manipulovatelného typu objektu

Vybavení

Můžete si pořídit objekt tohoto typu. Ve Mesh pojmech říkáme, že "vybavení" objektu rukou avatara. Chcete-li vybavit objekt na počítači, klikněte na objekt nebo stiskněte klávesu F , zatímco je objekt vybrán. Pokud chcete objekt na Questu vybavit, stiskněte tlačítko "Grip", zatímco je objekt vybrán. Vybavení objektů obsahuje nastavení pro cíle IK pro pozici ramen vašeho avatara, zatímco je objekt vybaven. Cíle IK jsou posunem od hrudníku avatara; určuje, kde se ruka nachází při držení nebo aktivaci objektu.

Další informace o nastavení typu objektu Zařízení s možností

Hoditelné

Jak název napovídá, můžete vzít a vyvolat objekt tohoto typu. Po pochytnutí můžete vstoupit do režimu cíle stisknutím a podržením levého tlačítka myši. To umožní, aby vaše avatara rameno sledovat váš cíl myši; objekt vyvoláte uvolněním levého tlačítka myši.

Snímek obrazovky šipkové hry s šipkami uchopený a přečtený, aby byl vyvolán.

Další informace o nastavení typu objektu throwable

Interakce objektů pomocí vizuálního skriptování

Všechny komponenty Interagovatelné mají vlastnosti interakce a metody dostupné pro vizuální skriptování , takže máte neomezený počet způsobů, jak je vytvořit společně. Pokud chcete tuto výhodu využít, použijte komponentu Mesh Interactable Body uvnitř grafu skriptu s uzlem k dostupné vlastnosti, jako je OnHovered nebo OnSelected, připojená k uzlu OnStateChanged. Například následující graf skriptu povolí válci, když je tlačítko stisknuto, a po uvolnění tlačítka ho zakáže. Tlačítko je plně interagovatelné pouze přidáním skriptu a sbalitele; Nemusíte dělat nic jiného.

Snímek obrazovky s grafem skriptu s uzlem Interagovatelná síť je vybraný uzel.

Vlastnosti skriptování vizuálu

Pro všechna interagovatelná těla:

  • IsHovered (jen pro čtení) – určuje, jestli váš místní avatar na objekt najet myší.
  • IsSelected (jen pro čtení) – určuje, zda některý avatar vybírá objekt. Při spuštění v MeshBrowser bude tato síť.
  • IsSelectedLocally – určuje, zda místní avatar vybírá objekt.
  • IsMine (jen pro čtení) – True pro poslední avatar vybrat nebo vybavit objekt.

Pro vybavení:

  • EquippedAt (jen pro čtení) - Kde je tento objekt vybaven – None, DefaultHand, RightHand, LeftHand. Při spuštění v MeshBrowser bude tato síť.
  • EquipTime (jen pro čtení) – kdy byl tento objekt vybaven. Při spuštění v MeshBrowser bude tato síť.
  • IsActivated (jen pro čtení) – Pokud je tento objekt v aktivovaném stavu. Platí pouze pro objekty, které nelze vyvolat. Při spuštění v MeshBrowser bude tato síť.
  • IsAiming (jen pro čtení) – Pokud je místní avatar v cíleném stavu při držení tohoto objektu. Platí pouze pro vyvolání.
  • IsThrowing (jen pro čtení) – Pokud je místní avatar aktivně vyvolán objekt. Platí pouze pro vyvolání.
  • IsEquipped (jen pro čtení) (jen pro čtení) – Pokud je tento objekt aktuálně vybaven avatarem. Při spuštění v MeshBrowser bude tato síť.
  • IsThrowable – pokud je tento objekt vyvolán.
  • ThrowVelocity – rychlost vyvolání objektu při jeho uvolnění.

Pro manipulovatelné úpravy cílové pozice:

  • Cílová pozice (jen pro čtení):: Cílová pozice těla při použití výchozího režimu vynucení v interagovatelných vlastnostech sítě
  • Obměna cíle (jen pro čtení):: Otočení cíle při použití výchozího režimu vynucení v interagovatelných vlastnostech sítě
  • Pozice paprskového hitu (jen pro čtení):: Pozice hitu paprsku interakce na těle
  • Ray Hit Rotation (jen pro čtení):: Otočení interakce kolem směru paprsku
  • Změněná cílová pozice (čtení a zápis):: Slouží k nastavení nové cílové pozice pomocí vizuálního skriptu. Tím se přepíše výchozí cílová pozice. Osvědčeným postupem je přepsat tuto vlastnost:
    • Použití funkce Při změně stavu cílové pozice V tomto případě se vizuální skript aktivuje tok pouze v případě, že se interakce a nová pozice změnila.
    • Používá se při pozdní aktualizaci. Pokud potřebujete změnit cílovou transformaci v každém rámci, proveďte ji v pozdní aktualizaci, aby nová cílová transformace byla k dispozici okamžitě v dalším rámci.
  • Upravená cílová rotace (čtení a zápis):: Slouží k nastavení nového cílového otočení pomocí vizuálního skriptu. Tím se přepíše výchozí cílová pozice.

Další kroky