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 .
V hierarchii vyberte objekt.
V inspektoru klikněte na tlačítko Přidat komponentu a pak vyberte Možnost Interakce 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.)
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.
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.
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í.
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.
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.
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.
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.