Condividi tramite


Panoramica della fisica mesh

In un'esperienza mesh, la simulazione della fisica è fondamentale per abilitare contenuti dinamici coinvolgenti. Per fornire ai partecipanti mesh esperienze fisiche condivise di alta qualità e offrire agli sviluppatori un flusso di lavoro produttivo nella creazione di contenuti personalizzati, abbiamo creato il sistema Di fisica mesh. La fisica delle mesh si basa sulla simulazione autorevole locale, che comporta un'architettura molto semplice. Non è necessaria logica sul lato server e logica speciale nei client. Soprattutto, questo approccio comporta un'esperienza molto reattiva e a bassa latenza per ogni giocatore che interagisce con il proprio ambiente, anche quando si è connessi a una rete a latenza elevata.

Simulazione fisica distribuita

Screenshot che mostra gli oggetti fisici distribuiti.

La fisica mesh sincronizza le posizioni dei corpi rigidi e dovrebbe funzionare all'esterno, presupponendo che tutti i client condividono la stessa scena. La maggior parte delle funzionalità di fisica di Unity (ad esempio, rigidbodies, collideri, materiali e vincoli) verrà sincronizzata senza ulteriori sforzi per gli sviluppatori:

Note:

  • Solo le posizioni e gli orientamenti di rigidbody vengono sincronizzati con l'interpolazione
  • È necessario evitare modifiche discrete dello stato (ad esempio, vincoli interrompibili) ed eventi di trigger

Ogni client è responsabile della simulazione di alcuni corpi, denominata proprietà della simulazione distribuita. Quando un giocatore tocca un corpo rigido, la proprietà della simulazione viene immediatamente trasferita per consentire l'interazione a bassa latenza. Per i corpi adiacenti, il motore di sincronizzazione della fisica esegue stime locali, interpolazione e ridistribuzione automatica della proprietà per ridurre al minimo gli artefatti visivi.

La fisica mesh offre interazioni e funzionalità aggiuntive correlate alla fisica, ad esempio:

  • vari campi per influenzare fisicamente i corpi all'interno (buoyancy, gravità)
  • vari componenti per modificare il comportamento dei singoli corpi (magnetico, sticky, throwable)
  • possibilità di reimpostare i corpi nelle posizioni di avvio (pulizia selettiva della scena)
  • Modalità di riproduzione con supporto di emulazione mesh per i test multiutente delle funzionalità precedenti

Ecco altre operazioni che è possibile eseguire con le funzionalità di Fisica mesh:

  • Consente ai partecipanti di afferrare e trasportare oggetti.

  • Controllare il modo in cui la gravità influisce sugli oggetti.

    Screenshot di un gioco che usa la gravità.

  • Crea un oggetto "appiccicoso": si attacca a qualsiasi cosa colpisca. Esempi: gettando una dart a bordo dart, collegando un'immagine a un muro.

    Screenshot di dipinti collegati a un muro.

  • Aggiungere animazioni di riproduzione automatica che interagiscono con i corpi fisici.

    Screenshot di un trigger di animazione.

  • Consenti ai partecipanti di reimpostare gli oggetti (ad esempio, reimpostare una scacchiera o pulire una stanza dopo che gli oggetti sono stati sparsi).

    Screenshot in due parti di una stanza con mobili in disarray e poi la stessa stanza con mobili in posto.

  • Genera eventi quando un oggetto entra in un collisore di trigger.

    Screenshot di un volume di trigger.

  • Creare un campo di contenimento. Gli oggetti rimarranno entro i limiti del campo.

    Screenshot di un campo di contenimento.

  • Controllare la velocità di un oggetto.

  • Controllare la buoyancy degli oggetti, ad esempio creare barche e altri oggetti seagoing "float".

    Screenshot di una barca galleggiante sull'acqua.

  • Controllare la velocità angolare di un oggetto.

  • Creare un'esplosione, causando lo spostamento degli oggetti nelle vicinanze verso l'esterno o in una direzione specifica.

  • Creare oggetti "bouncy" che rimbalzano l'uno dall'altro con una velocità predefinita.

    Screenshot di numerose palle a metà rimbalzo.

  • Teletrasportare un oggetto in una nuova posizione e (facoltativo) nuova rotazione.

    Screenshot in due parti del punto iniziale e finale di un processo di teletrasporto.

Terminologia

In tutti gli articoli di Fisica mesh, "corpo" viene usato come abbreviato per "Rigidbody".

Passaggi successivi