Poznámka
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Kolekce objektů posouvání MRTK je komponenta uživatelského rozhraní, která umožňuje posouvání 3D obsahu v obsažené zobrazitelné oblasti. Pohyb posouvání může být aktivován téměř nebo daleko vstupní interakcí a diskrétní stránkováním. Podporuje interaktivní i neinteraktivní objekty.
Začínáme s kolekcí objektů posouvání
Nastavení scény
- Vytvořte novou scénu unity.
- Přidejte do scény sadu MRTK tak, že přejdete na sadu nástrojů> Mixed RealityPřidat do scény a Konfigurovat.
Nastavení objektu posouvání
Vytvořte ve scéně prázdný herní objekt a změňte jeho umístění na (0, 0, 1).
Přidejte komponentu kolekce posouvání objektů do herního objektu.
Po přidání kolekce posouvání objektů se k objektu kořenové hry automaticky připojí uchytávačka rámečku a dotyková komponenta téměř interakce . Tyto komponenty umožňují objektu posouvání naslouchat vstupním událostem blízké a vzdálené interakce, jako je dotyk nebo kliknutí ukazatelem.
Kolekce posouvání objektů MRTK má dva důležité prvky, které jsou vytvořeny jako podřízené herní objekty v hierarchii objektů kořenového posouvání:
-
Container
- Všechny objekty obsahu, které se posouvají, musí být podřízené objektu hry kontejneru. -
Clipping bounds
- Pokud je povoleno posouvání maskování obsahu, element clipping bounds zajišťuje, že je viditelný pouze posouvatelný obsah uvnitř jeho hranic. Objekt hry s ořezáváním hranic má dvě komponenty: zakázanou schytávačku a ořezovou krabici.
-
Přidání obsahu do objektu posouvání
Kolekci posouvání objektů je možné kombinovat s kolekcí objektů mřížky , aby se obsah rozkresloval v mřížce zarovnaných prvků, které mají jednotnou velikost a mezery.
- Vytvořte prázdný herní objekt jako podřízený objekt kontejneru scroll.
- Přidejte komponentu kolekce objektů mřížky do herního objektu.
- Pro svislé posouvání s jedním sloupcem nakonfigurujte na kartě inspektoru kolekci objektů mřížky následujícím způsobem:
- Počet sloupců: 1
- Rozložení: sloupec a řádek
- Ukotvení: vlevo nahoře
- Změňte šířku a výšku buňky podle rozměrů objektů obsahu.
- Přidejte objekty obsahu jako podřízené objektu mřížky.
- Stiskněte kolekci aktualizací.
Důležité
Jakýkoli materiál objektu obsahu posouvání musí používat standardní shader MRTK , aby efekt oříznutí na zobrazitelné oblasti fungoval správně.
Poznámka
Pokud je povoleno posouvání maskování obsahu, kolekce posouvání objektů přidá komponentu instance materiálu ke všem objektům obsahu, které mají připojený vykreslovací modul. Tato komponenta slouží ke správě životnosti materiálů v instancích a ke zlepšení výkonu paměti.
Konfigurace zobrazované oblasti pro posouvání
- Pokud chcete svisle procházet jeden sloupec objektů, nakonfigurujte na kartě Inspektor kolekci objektů posouvání následujícím způsobem:
- Buňky na úroveň: 1
- Zvolte počet vrstev na stránku podle požadovaného počtu viditelných řádků.
- Změňte šířku,výšku a hloubku buňky stránky podle rozměrů objektů obsahu.
Všimněte si, že objekty obsahu, které se nacházejí mimo oblast umožňující posouvání, jsou nyní zakázány, zatímco objekty protínající drátový model posouvání můžou být částečně maskovány primitivem oříznutí.
Testování kolekce objektů posouvání v editoru
- Stisknutím klávesy Play a podržením mezerníku zobrazte vstupní simulační ruku.
- Posouvejte rukou, dokud nebude fokus na schytávač posouvání nebo interaktivní obsah pro posouvání, a aktivujte pohyb posouvání kliknutím a přetažením nahoru a dolů levou myší.
Řízení objektu posouvání z kódu
Kolekce objektů posouvání MRTK zveřejňuje několik veřejných metod, které umožňují přesun kontejneru posouvání tak, že přichytí jeho pozici podle pagination
konfigurace vlastností.
Příklad přístupu k rozhraní stránkování kolekce objektů posouvání je k dispozici ve MRTK/Examples/Demos/ScrollingObjectCollection/Scripts
složce. Ukázkový skript stránkování s možností posouvání lze propojit s libovolnou existující kolekcí objektů posouvání ve scéně. Na skript pak mohou odkazovat komponenty scény, které zveřejňují události Unity (například tlačítko MRTK).
public class ScrollablePagination : MonoBehaviour
{
[SerializeField]
private ScrollingObjectCollection scrollView;
public void ScrollByTier(int amount)
{
scrollView.MoveByTiers(amount);
}
}
Posouvání vlastností kolekce objektů
Obecné | Popis |
---|---|
Směr posouvání | Směr, ve kterém se má obsah posouvat. |
Stránkování | Popis |
---|---|
Buňky na vrstvu | Počet buněk v řádku v zobrazení posunu nahoru a dolů nebo počet buněk ve sloupci v levém pravém zobrazení posouvání. |
Vrstvy na stránku | Počet viditelných vrstev v oblasti posouvání |
Buňka stránky | Rozměry stránkovací buňky. |
Rozšířená nastavení | Popis |
---|---|
Režim úprav masky | Upravte režimy pro definování hranic maskování rámečku výřezu. Funkce Auto automaticky používá hodnoty stránkování. Ruční umožňuje přímou manipulaci s objektem výřezového rámečku. |
Režim úprav uchytávače | Upravte režimy pro definování hranic s collideru interakce posouvání. Funkce Auto automaticky používá hodnoty stránkování. "Ruční" umožňuje přímou manipulaci s uchytávačem. |
Může se posouvat | Povolí nebo zakáže posouvání s téměř nebo dalekou interakcí. |
Použití při předběžném vykreslení | Přepíná, jestli scrollingObjectCollection bude používat událost Camera OnPreRender ke správě viditelnosti obsahu. |
Křivka stránkování | Křivka animace pro stránkování. |
Délka animace | Doba (v sekundách) bude trvat vyhodnocení paginationCurve. |
Prahová hodnota posunu ručně | Vzdálenost v metrech může aktuální ukazatel před aktivací posouvání procházet po směru posouvání. |
Vzdálenost předního dotykového ovládání | Vzdálenost v metrech pro umístění místní roviny XY, která se používá k ověření, jestli v přední části zobrazení posouvání začalo dotykové ovládání. |
Prahová hodnota verze | Odpojte množství v metrech od hranic posouvání potřebných k přechodu z dotykového ovládání na uvolněné. |
Rychlost | Popis |
---|---|
Typ rychlosti | Požadovaný typ sousoší rychlosti pro posuvník. |
Násobitel rychlosti | Velikost (extra) rychlosti, která se má použít pro posouvání. |
Tlumení rychlosti | Množství spadnutí použitého na rychlost. |
Násobitel odrazu | Multiplikátor pro přidání dalšího odrazu do nadsazení seznamu při použití falloff na rámec nebo falloff na položku. |
Možnosti ladění | Popis |
---|---|
Maska povolena | Režim viditelnosti obsahu posouvání. Výchozí hodnota bude maskovat všechny objekty mimo oblast zobrazení posouvání. |
Zobrazit roviny prahových hodnot | Pokud je hodnota true, editor vykreslí roviny prahové hodnoty uvolnění dotykového ovládání kolem hranic posouvání. |
Ladění stránkování | Tato část slouží k ladění stránkování posouvání za běhu. |
Události | Popis |
---|---|
Při kliknutí | Aktivuje se, když se s colliderem pozadí posouvání nebo kterýmkoli z jeho interaktivního obsahu dostane kliknutí. |
Při dotykovém ovládání se spustilo | Aktivuje se, když se uchytá s collider pozadí posouvání nebo jakýkoli interaktivní obsah téměř dotkne interakce. |
Při dotyku skončilo | Aktivuje se při ukončení aktivní dotykové interakce, když ukazatel téměř interakce překročí rovinu prahové hodnoty uvolnění. |
Na spádu začal | Aktivuje se, když se kontejner posuvníku začne pohybovat interakcí, poklesem rychlosti nebo stránkováním. |
Na moment skončil | Aktivuje se, když se kontejner posuvníku přestane pohybovat interakcí, poklesem rychlosti nebo stránkováním. |
Ukázková scéna posouvání
Ukázková scéna ScrollingObjectCollection.unity se skládá ze 3 posouvatelných příkladů, z nichž každý má jinou konfiguraci poklesu rychlosti. Ukázková scéna obsahuje zdi, které znázorňují chování umístění povrchu, které je ve výchozím nastavení v hierarchii zakázané. Ukázková scéna se nachází ve MRTK/Examples/Demos/ScrollingObjectCollection/Scenes
složce .
Ukázkové ukázky posouvání
Pro usnadnění používání jsou k dispozici dva prefaby kolekce objektů, které se posouvají. Ukázkové předfaby najdete ve MRTK/Examples/Demos/ScrollingObjectCollection/Prefabs
složce .