Dela via


Skapa ett enkelt molnskriptprojekt

I den här artikeln skapar och publicerar du ett enkelt projekt med hjälp av Mesh Cloud Scripting. Artikeln förutsätter att du redan har konfigurerat molnskript i systemet. Vi rekommenderar att du bekanta dig med den aktuella listan över kända problem med Mesh-verktyg innan du börjar utveckla med Mesh Cloud Scripting.

Läs mer om infrastruktur och hantering av mesh-molnskript.

Skapa en scen med Mesh Cloud Scripting

Följande instruktioner visar hur du skapar en enkel miljö med en kub som roterar när en användare klickar på den.

  1. Gå till artikeln Skapa ny eller uppdatera ett befintligt projekt. Om du skapar ett nytt projekt ska du följa alla steg i avsnittet Skapa ett nytt projekt. Om du uppdaterar ett befintligt projekt gör du samma sak för avsnittet Med namnet Uppdatera ett befintligt projekt.

  2. Skapa en ny scen.

  3. Lägg till en respunkt i scenen.

  4. Spara scenen och ge den namnet. I det här exemplet använder vi namnet MyFirstCloudScripting.

  5. Välj GameObject Mesh Toolkit>Set-up Cloud Scripting på menyraden.>

    Skärmbild av menyalternativet Konfigurera molnskript.

    Observera att ett spelobjekt med namnet Mesh Cloud Scripting visas i hierarkin och är valt. Om du klickar på knappen Öppna programmapp i Inspector ...

    Skärmbild av knappen Öppna programmapp i Unity.

    ... du ser i Windows-Istraživač datoteka att detta också skapar ett nytt ASP.NET Core-projekt med namnet MyFirstCloudScripting.csproj i tillgångarna > . MeshCloudScripting > MyFirstCloudScripting-mappen.

    Skärmbild av en mappstruktur i Windows som visar skriptprojekt.

Ändra scenen

  1. Konfigurera uppspelningsläge med Mesh-emulering. Se till att du lägger till en GameObject i scenen som kan fungera som en våning och ställa in den på GroundCollision-lagret .

  2. När du konfigurerar Uppspelningsläge med Mesh-emulering lägger den till prefab MeshEmulatorSetup[NoUpoload] i scenen som innehåller kameran som du ska använda från och med nu. Du behöver inte längre standardkameran GameObject för huvudkameran . Ta bort den.

    En skärmbild av kuben placerad som underordnad Mesh Cloud Scripting.

  3. På menyraden väljer du GameObject>3D-objektkub>.

  4. I hierarkin drar du kuben till Mesh Cloud Scripting-objektet för att göra kuben till underordnad objektet.

    En skärmbild av kuben placerad som underordnad Mesh Cloud Scripting.

  5. När kuben är markerad går du till komponenten Transformera i Inspector och ändrar sedan kubens position och rotationsvärden till följande:

    Position: X = 0,1, Y = 1,5, Z = 3,3.

    Rotation: X = -15, Y = 0,8, Z = 0,1

    Tips: Kameran i MeshEmulatorSetup[NoUpload] prefab är ett underordnat objekt i AvatarHead.

    En skärmbild av kameraspelobjektet i hierarkin och kuben som placeras i scenvyn.

  6. I Inspector klickar du på Lägg till komponent och väljer sedan Mesh Interactable Setup (Interaktionsbar installation).

    Skärmbild av sökfältet Lägg till komponent med mesh-konfigurationen för interaktionsbara objekt markerad.

  7. Spara scenen.

Ändra C#-projektet

  1. I hierarkin väljer du Mesh Cloud Scripting-objektet.

  2. I Inspector navigerar du till Mesh Cloud Scripting-komponenten och klickar sedan på knappen Öppna programmapp. Detta öppnar Istraživač datoteka och visar en vy över projektets innehåll.

    Skärmbild av Mesh Cloud Scripting-komponenten med knappen Öppna programmapp markerad.

  3. Öppna skriptet App.cs i kodredigeraren.

  4. Observera att det finns två variabler i klassen App:

    private readonly ILogger<App> _logger;
    private readonly ICloudApplication _app;
    

    Lägg till följande som en tredje variabel:

    private float _angle = 0;
    
  5. Metoden StartAsync innehåller en enda kommentar: "Lägg till startkoden för appen här." Ersätt det med koden nedan så att Metoden StartAsync ser ut så här:

    public Task StartAsync(CancellationToken token)
    {
        // First we find the TransformNode that corresponds to our Cube gameobject
        var transform = _app.Scene.FindFirstChild<TransformNode>();
    
        // Then we find the InteractableNode child of that TransformNode
        var sensor = transform.FindFirstChild<InteractableNode>();
    
        // Handle a button click
        sensor.Selected += (_, _) =>
        {
            // Update the angle on each click
            _angle += MathF.PI / 8;
            transform.Rotation = new Rotation { X = 1, Y = 0, Z = 0, Angle = _angle };
        };
    
        return Task.CompletedTask;
    }
    
  6. Spara ditt arbete.

Köra ditt program lokalt

  1. I Unity klickar du på knappen Spela upp i Unity-redigeraren.
  2. I fönstret Spel klickar du på kuben. Varje gång du klickar roterar kuben på sin X-axel.
  3. När du är klar avslutar du Uppspelningsläge.

Felsöka ditt program med Visual Studio (valfritt)

  1. I hierarkin kontrollerar du att du har valt Mesh Cloud Scripting-objektet.

  2. I Inspector navigerar du till Mesh Cloud Scripting-komponenten och väljer sedan Aktivera programfelsökning.

    En skärmbild av Mesh Cloud Scripting-komponenten med egenskapen Aktivera programfelsökning markerad och markerad.

  3. Ange Uppspelningsläge och välj felsökare.

    En skärmbild av tillgängliga felsökningsprogram.

  4. Öppna filen App.cs , lägg sedan till en brytpunkt och fortsätt sedan körningen.

    En skärmbild av appens cs-fil med en brytpunkt tillagd.

  5. I Unity klickar du på kuben.

    En skärmbild av feedback i Unity när du har klickat på kuben.

Kommentar

Som standard överskrider programmet tidsgränsen efter två minuters inaktivitet. Om du vill öka det här fönstret anger du ett "debugTimeoutSecs" värde i manifestfilen (exempel: "debugTimeoutSecs": "240").

En skärmbild av Utforskaren med mesh cloudscripting-manifestets json-fil markerad.

Skapa och publicera miljön

Om du vill skapa och publicera miljön följer du anvisningarna i artikeln Skapa och publicera din miljö .

Ansluta till cloud scripting-tjänsten från Unity

Kommentar

Detta är endast tillgängligt när ServiceMode är inställt på Dev.

  1. I hierarkin kontrollerar du att Mesh Cloud Scripting-objektet är markerat.
  2. I Inspector navigerar du till Mesh Cloud Scripting-komponenten och öppnar sedan listrutan Developer Settings (Utvecklarinställningar).
  3. Avmarkera Kör lokal molnskriptserver.
  4. Klicka på uppspelningsknappen för Unity-redigeraren.

Skapa en händelse och anslut den från Mesh-appen

  1. Skapa en händelse med hjälp av den miljö som du precis har skapat och publicerat. Om du behöver vägledning kan du se hur du skapar en händelse i Mesh-portalen.
  2. Delta i händelsen i Mesh-appen.

Visa Mesh Cloud Scripting Service-fel i Microsoft Mesh-programmet (valfritt)

  1. Felmeddelandena från Cloud Scripting Service visas som standard inte i Mesh-appen för att minimera användarstörningar. Om du behöver visa dessa meddelanden i felsökningssyfte använder du följande steg:

  2. Öppna Mesh-appen.

  3. Klicka på knappen Meny och välj sedan Inställningar.

    En skärm i Mesh-appgränssnittet med menyknappen markerad.

  4. I menyraden till vänster väljer du För utvecklare.

    En skärmbild av Mesh-appgränssnittet med alternativet Inställningar markerat.

  5. Växla knappen Visa mesh-skriptfel till "på".

    En skärmbild av sidan Inställningar för Mesh-appen och inställningen för Visa mesh-skriptfel.

Nästa steg