Freigeben über


Erstellen eines einfachen Cloud Scripting-Projekts

In diesem Artikel erstellen und veröffentlichen Sie ein einfaches Projekt mithilfe von Mesh Cloud Scripting. In diesem Artikel wird davon ausgegangen, dass Sie Cloud Scripting bereits auf Ihrem System eingerichtet haben. Es wird empfohlen, sich mit der aktuellen Liste der bekannten Probleme des Mesh-Toolkits vertraut zu machen, bevor Sie mit der Entwicklung mit Mesh Cloud Scripting beginnen.

Erfahren Sie mehr über mesh Cloud Scripting Infrastructure and Management.

Erstellen einer Szene mit Mesh Cloud Scripting

Die folgenden Anweisungen zeigen, wie Sie eine einfache Umgebung mit einem Cube erstellen, der sich dreht, wenn ein Benutzer darauf klickt.

  1. Wechseln Sie zum Artikel mit dem Namen "Neu erstellen" oder aktualisieren Sie ein vorhandenes Projekt. Wenn Sie ein neues Projekt erstellen, stellen Sie sicher, dass Sie alle Schritte im Abschnitt mit dem Namen "Neues Projekt erstellen" ausführen. Wenn Sie ein vorhandenes Projekt aktualisieren, führen Sie denselben Vorgang für den Abschnitt mit dem Namen "Aktualisieren eines vorhandenen Projekts" aus.

  2. Erstellen Sie eine neue Szene.

  3. Fügen Sie der Szene einen Reisepunkt hinzu.

  4. Speichern Sie die Szene, und nennen Sie sie. In diesem Beispiel verwenden wir den Namen MyFirstCloudScripting.

  5. Wählen Sie auf der Menüleiste "GameObject>Mesh Toolkit>Set-up Cloud Scripting" aus.

    Screenshot des Menüelements

    Beachten Sie, dass ein Spielobjekt namens Mesh Cloud Scripting in der Hierarchie angezeigt wird und ausgewählt ist. Wenn Sie im Inspektor auf die Schaltfläche "Anwendungsordner öffnen" klicken...

    Screenshot der Schaltfläche

    ... In windows Explorer sehen Sie, dass dadurch auch ein neues ASP.NET Core-Projekt namens MyFirstCloudScripting.csproj in den Assets > erstellt wird. Ordner "MeshCloudScripting > MyFirstCloudScripting".

    Screenshot einer Ordnerstruktur in Windows mit Skriptprojekt

Ändern der Szene

  1. Einrichten des Wiedergabemodus mit Gitteremulation. Stellen Sie sicher, dass Sie der Szene ein GameObject hinzufügen, das als Boden fungieren kann, und legen Sie es auf die GroundCollision-Ebene fest.

  2. Wenn Sie den Wiedergabemodus mit der Gitteremulation einrichten, wird der Szene, die die Kamera enthält, die Sie ab diesem Zeitpunkt verwenden, das prefab MeshEmulatorSetup[NoUpoload] hinzugefügt. Sie benötigen das Standardmäßige Hauptkamera GameObject nicht mehr; löschen Sie es.

    Screenshot des Cubes, der als untergeordnetes Element zu Mesh Cloud Scripting platziert wird.

  3. Wählen Sie auf der Menüleiste gameObject>3D-Objektwürfel> aus.

  4. Ziehen Sie in der Hierarchie den Cube auf das Mesh Cloud Scripting-Objekt , um den Cube zu einem untergeordneten Element dieses Objekts zu machen.

    Screenshot des Cubes, der als untergeordnetes Element zu Mesh Cloud Scripting platziert wird.

  5. Wenn der Cube ausgewählt ist, navigieren Sie im Inspektor zur Transformationskomponente, und ändern Sie dann die Werte für Position und Drehung des Cubes wie folgt:

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

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

    Tipp: Die Kamera im MeshEmulatorSetup[NoUpload] Prefab ist ein untergeordnetes Objekt von AvatarHead.

    Screenshot des Kameraspielobjekts in der Hierarchie und des Cubes, der in der Szenenansicht platziert wird.

  6. Klicken Sie im Inspektor auf "Komponente hinzufügen", und wählen Sie dann "Gitterinteraktionsfähiges Setup" aus.

    Screenshot der Suchleiste

  7. Speichern Sie die Szene.

Ändern des C#-Projekts

  1. Wählen Sie in der Hierarchie das Mesh Cloud Scripting-Objekt aus .

  2. Navigieren Sie im Inspektor zur Mesh Cloud Scripting-Komponente , und klicken Sie dann auf die Schaltfläche "Anwendungsordner öffnen ". Dadurch wird Explorer geöffnet, und Es wird eine Ansicht des Projektinhalts angezeigt.

    Screenshot der Komponente

  3. Öffnen Sie das App.cs Skript in Ihrem Code-Editor.

  4. Beachten Sie, dass in der App-Klasse zwei Variablen vorhanden sind:

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

    Fügen Sie Folgendes als dritte Variable hinzu:

    private float _angle = 0;
    
  5. Die StartAsync-Methode enthält einen einzelnen Kommentar: "Fügen Sie hier Ihren App-Startcode hinzu." Ersetzen Sie dies durch den folgenden Code, damit die StartAsync-Methode wie folgt aussieht:

    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. Speichern Sie Ihre Arbeit.

Lokales Ausführen der Anwendung

  1. Klicken Sie in Unity auf die Schaltfläche "Unity-Editor wiedergeben".
  2. Klicken Sie im Spielfenster auf den Cube. Jedes Mal, wenn Sie darauf klicken, wird der Würfel auf der "X"-Achse gedreht.
  3. Wenn Sie fertig sind, beenden Sie den Wiedergabemodus.

Debuggen Der Anwendung mit Visual Studio (optional)

  1. Stellen Sie in der Hierarchie sicher, dass das Mesh Cloud Scripting-Objekt ausgewählt ist.

  2. Navigieren Sie im Inspektor zur Mesh Cloud Scripting-Komponente , und wählen Sie dann "Anwendungsdebugging aktivieren" aus.

    Screenshot der Mesh Cloud Scripting-Komponente mit ausgewählter und hervorgehobener Eigenschaft

  3. Geben Sie den Wiedergabemodus ein, und wählen Sie den Debugger aus.

    Screenshot der verfügbaren Debugger.

  4. Öffnen Sie die App.cs Datei, fügen Sie dann einen Haltepunkt hinzu, und fahren Sie dann mit der Ausführung fort.

    Screenshot der App-CS-Datei mit einem hinzugefügten Haltepunkt.

  5. Klicken Sie in Unity auf den Cube.

    Screenshot des Feedbacks in Unity nach dem Klicken auf den Cube.

Hinweis

Standardmäßig wird die Anwendung nach zwei Minuten Inaktivität timeout. Um dieses Fenster zu erhöhen, legen Sie einen "debugTimeoutSecs" Wert in der Manifestdatei fest (Beispiel: "debugTimeoutSecs": "240").

Screenshot von Windows Explorer mit hervorgehobener JSON-Datei des Gittermanifestmanifests.

Erstellen und Veröffentlichen der Umgebung

Um die Umgebung zu erstellen und zu veröffentlichen, befolgen Sie die Anweisungen im Artikel "Build", und veröffentlichen Sie Ihren Umgebungsartikel .

Herstellen einer Verbindung mit dem Cloud Scripting Service über Unity

Hinweis

Dies ist nur verfügbar, wenn ServiceMode auf Dev festgelegt ist.

  1. Stellen Sie in der Hierarchie sicher, dass das Mesh Cloud Scripting-Objekt ausgewählt ist.
  2. Navigieren Sie im Inspektor zur Mesh Cloud Scripting-Komponente , und öffnen Sie dann die Dropdownliste "Entwicklereinstellungen ".
  3. Deaktivieren Sie die Option "Lokalen Cloud Scripting Server ausführen".
  4. Klicken Sie auf die Schaltfläche "Unity-Editor wiedergeben".

Erstellen eines Ereignisses und Beitreten aus der Mesh-App

  1. Erstellen Sie ein Ereignis mit der soeben erstellten und veröffentlichten Umgebung. Wenn Sie Anleitungen benötigen, erfahren Sie, wie Sie ein Ereignis im Mesh-Portal erstellen.
  2. Treten Sie dem Ereignis in der Mesh-App bei.

Fehler des Mesh Cloud Scripting Service in der Microsoft Mesh-Anwendung anzeigen (optional)

  1. Die Fehlermeldungen von Cloud Scripting Service werden in der Mesh-App standardmäßig nicht angezeigt, um Benutzerunterbrechungen zu minimieren. Wenn Sie diese Meldungen zu Debugzwecken anzeigen müssen, führen Sie die folgenden Schritte aus:

  2. Öffnen Sie die Mesh-App.

  3. Klicken Sie auf die Menüschaltfläche, und wählen Sie dann "Einstellungen" aus.

    Ein Bildschirm der Mesh-App-Schnittstelle mit hervorgehobener Menüschaltfläche.

  4. Wählen Sie in der linken Menüleiste "Für Entwickler" aus.

    Screenshot der Mesh-App-Schnittstelle mit hervorgehobener Option

  5. Umschalten der Fehlerschaltfläche "Gitterskripting anzeigen" auf "Ein".

    Screenshot der Seite

Nächste Schritte