Dela via


Självstudiekurs om Mesh 201 Kapitel 3: Läsa in en lokal delad HTML-fil i en WebSlate

I föregående kapitel i den här självstudien aktiverade du en knapp för att läsa in en lokal html-fil som inte delas till en WebSlate. I det här kapitlet konfigurerar vi också en HTML-sida som ska läsas in, men den här gången delas den och kan därför visas av alla deltagare i upplevelsen.

  1. I fönstret Scen ändrar du vyn så att du tittar på Station 2, som visas nedan.

    En skärmbild av en datorbeskrivning

    Precis som i föregående kapitel finns det redan en GameObject på plats med lite beskrivande text, men den här gången finns det två knappar: Load 1 och Load 2. Det finns också en WebSlate redan på plats. Vi slutför stationen genom att uppdatera ett skriptdiagram som är kopplat till en av knapparna. När en deltagare klickar på någon av knapparna läses en webbsida in och alla andra deltagare i upplevelsen kan dela med sig av visning av den nya sidan. Varje knapp på den här stationen läser in en något annorlunda typ av innehåll.

  2. I hierarkin döljer du GameObject med namnet 1 – LocalWebslate.

  3. Expandera 2 – StaticContentWebslate. Ett WebSlateFramed-objekt har förinlästs och finns här.

    En skärmbild av en datorbeskrivning

  4. Expandera ChapterLabel och dess underordnade objekt Åtgärder. Knapparna vi ska arbeta med, LoadButton1 och LoadButton2, finns här.

    En skärmbild av en datorbeskrivning

Redigera skriptdiagrammet

  1. I hierarkin väljer du LoadButton1. Observera att LoadButton1 har en skriptdatorkomponent med ett skript som är kopplat med namnet LoadButtonSharedStart i inspektören. Den har också flera kopplade objektvariabler som används i skriptdiagrammet.

    En skärmbild av en datorbeskrivning

    När du valde LoadButton1 lästes skriptet i komponenten Skriptdator automatiskt in i fönstret Skriptdiagram . Precis som i föregående kapitel har skriptdiagrammet redan startats åt dig.

    En skärmbild av en datorbeskrivning

Lägg till mesh-interaktionsbar brödtext: Är vald nod

Vår första uppgift är att lägga till en mesh-interaktionsbar brödtext: Är vald nod. Som beskrivs i föregående kapitel har du ett val av två "Mesh Interactable Body"-noder: Väljs lokalt eller Är vald. Texten ovanför varje nod kan hjälpa dig att bekräfta beteendet.

En skärmbild av en datorbeskrivning

För Station 1 ville vi bara att den person som utlöste händelsen skulle uppleva den, så skriptet innehöll noden som säger "Väljs lokalt". Den här gången vill vi att alla deltagare ska uppleva händelsen, så vi väljer den andra noden för detta – den som helt enkelt säger "Är vald".

  1. Klicka på datautdataporten för spelobjektnoden och dra sedan till höger. Då öppnas Fuzzy Finder. VARNING! När du har öppnat Fuzzy Finder klickar du inte någonstans utanför Unity-gränssnittet. Detta stänger Fuzzy Finder och orsakar oförutsägbart beteende i skriptdiagrammet.

  2. I Fuzzy Finder söker du efter "Mesh Interactable Body: Is Selected" och väljer den.

    En skärmbild av en datorbeskrivning

    Detta lägger till noden i diagrammet.

  3. Dra en anslutningsapp från datautdataporten för den interaktionsbara mesh-brödtexten : Är vald nod och anslut den sedan till dataindataporten för Noden Microsoft Mesh: På noden Ändrad tillstånd.

    En skärmbild av en datorbeskrivning

Lägg till noden Webbskiffer: Läs in HTML-innehåll (HTML-tillgång)

Skriptdiagrammet innehåller redan de två objektvariabelnoder som vi behöver, så vi kan gå vidare och lägga till den sista nod som vi behöver.

  1. Dra en anslutningsapp från kontrollutdataporten för noden If och skapa sedan en ny nod för webbskiffer: Läs in HTML-innehåll (HTML-tillgång). Som vi nämnde i föregående kapitel bör du tänka på att det finns två noder med mycket liknande namn.

    En skärmbild av en datorbeskrivning

    Du vill ha den som säger "HTML-tillgång", inte "HTML-innehåll".

    En skärmbild av en datorbeskrivning

  2. Dra en anslutningsapp från datautdataporten för noden Hämta objektvariabel med värdet "WebSlate" och anslut den sedan till den första dataindataporten för noden Webbskiffer: Läs in HTML-innehåll .

    En skärmbild av en datorbeskrivning

  3. Webbsidan som vi vill läsa in finns i den andra noden Hämta objektvariabel . Dra en anslutningsapp från datautdataporten för noden och anslut den sedan till den andra dataindataporten för noden Webbskiffer: Läs in HTML-innehåll .

    En skärmbild av en datorbeskrivning

Testa ditt arbete

  1. Spara projektet i Unity och tryck sedan på uppspelningsknappen för Unity-redigeraren.

  2. Placera dig framför station 2. Precis som i föregående kapitel visar WebSlate viss information om Microsoft eftersom standard-URL:en i WebSlate-komponenten är inställd på Microsofts startsida.

    En skärmbild av en datorbeskrivning

  3. Klicka på knappen Läs in 1 . WebSlate läser in och visar en sida med rubriken "Wind Energy Across the World". Observera att WebSlate är interaktivt – du kan klicka på pilarna ovanför och under rullningslisten eller ett tomt utrymme i rullningslisten för att flytta skjutreglaget och ändra vyn på sidan. (Du kan inte dra själva skjutreglaget.)

    En skärmbild av en datorbeskrivning

  4. Klicka på knappen Läs in 2 och observera att en bild läses in i WebSlate.

    En skärmbild av en datorbeskrivning

Detta fungerar eftersom vi redan har ett fullständigt skript konfigurerat för knappen Läs in 2 och det har exakt samma nodstruktur som skriptet för knappen Läs in 1. Den enda skillnaden är variabeln för varje skript. För knappen Läs in 1 är värdet för dess HTMLAsset-variabel HTML-filen "windenergyfacts".

En skärmbild av en datorbeskrivning

För knappen Läs in 2 är värdet för htmlAsset-variabeln HTML-filen "meshimage".

En skärmbild av en datorbeskrivning

Om du är nyfiken på filen meshimage.html öppnar du den och tar en titt. Den finns i projektets mapp Assets>MeshWebSlates>HTMLFiles.

En skärmbild av en datorbeskrivning

Det enda innehållet i filen är en länk till den bild som du såg när du klickade på knappen Läs in 2 .

En skärmbild av en datorbeskrivning

Nästa steg