Přehled fyziky sítě
Simulace fyziky v prostředí Mesh je klíčem k tomu, aby umožňovala zapojení dynamického obsahu. Abychom účastníkům služby Mesh poskytli vysoce kvalitní sdílené fyzikální prostředí a nabídli vývojářům produktivní pracovní postup při vytváření vlastního obsahu, vytvořili jsme systém Fyzika sítě. Fyzika sítě je založená na místní autoritativní simulaci, což vede k velmi jednoduché architektuře. Na klientech není potřeba logika na straně serveru ani zvláštní logika. Nejdůležitější je, že tento přístup vede k velmi responzivnímu a nízké latenci každého hráče, který komunikuje se svým prostředím, i když je připojený k síti s vysokou latencí.
Distribuovaná simulace fyziky
Fyzika sítě synchronizuje pozice tuhých těles a měla by fungovat mimo kancelář, za předpokladu, že všichni klienti sdílejí stejnou scénu. Většina fyzikálních funkcí Unity (například pevné prvky, kolidátory, materiály a omezení) se synchronizují bez dalšího úsilí vývojáře:
Poznámky:
- Pouze pevné pozice a orientace jsou synchronizovány s interpolací.
- Změny diskrétního stavu (například přerušení omezení) a události triggeru se musí vyhnout.
Každý klient zodpovídá za simulaci některých těl označovaných jako distribuované vlastnictví simulace. Když se hráč dotkne tuhého těla, vlastnictví simulace se okamžitě přenese, aby bylo možné interakci s nízkou latencí. U sousedních těl modul synchronizace fyziky provádí místní predikci, interpolaci a automatické redistribuce vlastnictví, aby se minimalizovaly vizuální artefakty.
Fyzika sítě nabízí interakci a další funkce související s fyzikou, jako jsou:
- různá pole pro fyzickou vliv těla uvnitř (buoyancy, závažnost)
- různé součásti pro úpravu chování jednotlivých těl (magnetické, lepivé, házitelné)
- schopnost resetovat těla na jejich pozice po spuštění (selektivní čištění scény)
- Play Mode with Mesh Emulation support for multi-user testing of the features above
Tady jsou další možnosti, které můžete dělat s funkcemi fyziky sítě:
Umožňuje účastníkům vzít a přenášet objekty.
Řídit, jak závažnost ovlivňuje objekty.
Nastavte objekt "lepkavý" – drží se na čemkoliv, co udeří. Příklady: vyvolání šipky na šipku, připojení obrázku ke zdi.
Přidejte animace automatického přehrávání, které pracují s fyzikálními těly.
Umožňuje účastníkům resetovat objekty (například resetovat šachovnu nebo vyčistit místnost po rozptýlení objektů).
Události se aktivují, když objekt vstoupí do sbajovače triggeru.
Vytvořte pole s obsahem. Objekty zůstanou v rámci hranic pole.
Řídí rychlost objektu.
Řízení efektivity objektů – například nastavte lodě a další objekty "plovák".
Řídí úhlovou rychlost objektu.
Vytvořte explozi, což způsobí, že se okolní objekty přesunou směrem ven nebo v určitém směru.
Vytvořte objekty "bouncy", které se navzájem odrazí s předdefinovanou rychlostí.
Teleportuje objekt do nové pozice a (volitelné) nové otočení.
Terminologie
V článcích Fyzika sítě se "tělo" používá jako zkratka pro "Rigidbody".