Condividi tramite


Creare un semplice progetto di scripting cloud

In questo articolo si creerà e si pubblicherà un progetto semplice usando Mesh Cloud Scripting. L'articolo presuppone che nel sistema sia già stato configurato Lo scripting cloud. È consigliabile acquisire familiarità con l'elenco corrente dei problemi noti del toolkit mesh prima di iniziare lo sviluppo con mesh cloud scripting.

Altre informazioni su Mesh Cloud Scripting Infrastructure and management .Learn more about Mesh Cloud Scripting Infrastructure and management.

Creare una scena con scripting cloud mesh

Le istruzioni seguenti illustrano come creare un ambiente semplice con un cubo che ruota quando un utente fa clic su di esso.

  1. Passare all'articolo denominato Crea nuovo o aggiornare un progetto esistente. Se si sta creando un nuovo progetto, assicurarsi di seguire tutti i passaggi della sezione denominata Crea un nuovo progetto. Se si aggiorna un progetto esistente, eseguire la stessa operazione per la sezione denominata Aggiorna un progetto esistente.

  2. Crea una nuova scena.

  3. Aggiungere un punto di viaggio alla scena.

  4. Salvare la scena e denominarla. Per questo esempio si userà il nome MyFirstCloudScripting.

  5. Nella barra dei menu selezionare GameObject>Mesh Toolkit>Set-up Cloud Scripting(Configura script cloud).

    Screenshot della voce di menu Configura script cloud.

    Si noti che un oggetto gioco denominato Mesh Cloud Scripting viene visualizzato nella gerarchia ed è selezionato. Se si fa clic sul pulsante Apri cartella dell'applicazione in Controllo ...

    Screenshot del pulsante Apri cartella dell'applicazione in Unity.

    ... Nella Esplora file di Windows verrà visualizzato anche un nuovo progetto ASP.NET Core denominato MyFirstCloudScripting.csproj in Assets > . MeshCloudScripting > cartella MyFirstCloudScripting.

    Screenshot di una struttura di cartelle in Windows che mostra il progetto di scripting.

Modificare la scena

  1. Configurare la modalità di riproduzione con l'emulazione mesh. Assicurarsi di aggiungere un GameObject alla scena che può fungere da piano e impostarlo sul livello GroundCollision .

  2. Quando si configura la modalità di riproduzione con l'emulazione mesh, aggiunge il prefab MeshEmulatorSetup[NoUpoload] alla scena che contiene la fotocamera che verrà usata da questo punto in poi. Non è più necessario il GameObject della fotocamera principale predefinito. Eliminarlo.

    Screenshot del cubo posizionato come elemento figlio di Mesh Cloud Scripting.

  3. Sulla barra dei menu selezionare GameObject>3D Object>Cube.

  4. Nella gerarchia trascinare Il cubo nell'oggetto Mesh Cloud Scripting per rendere l'oggetto Cube figlio di tale oggetto.

    Screenshot del cubo posizionato come elemento figlio di Mesh Cloud Scripting.

  5. Con il cubo selezionato, in Inspector (Controllo) passare al componente Transform (Trasforma) e quindi modificare i valori Posizione e Rotazione del cubo nel modo seguente:

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

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

    Suggerimento: il prefab Camera in MeshEmulatorSetup[NoUpload] è un oggetto figlio di AvatarHead.

    Screenshot dell'oggetto gioco Fotocamera nella gerarchia e nel cubo posizionato nella visualizzazione Scena.

  6. In Inspector (Controllo) fare clic su Add Component (Aggiungi componente) e quindi selezionare Mesh Interactable Setup (Configurazione interagibile mesh).

    Screenshot della barra di ricerca Add Component (Aggiungi componente) con l'opzione Mesh Interactables Setup selezionata.

  7. Salva la scena.

Modificare il progetto C#

  1. Nella gerarchia selezionare l'oggetto Mesh Cloud Scripting.

  2. In Inspector (Controllo) passare al componente Mesh Cloud Scripting (Scripting cloud mesh) e quindi fare clic sul pulsante Apri cartella dell'applicazione. Verrà aperto Esplora file e verrà visualizzata una visualizzazione del contenuto del progetto.

    Screenshot del componente Mesh Cloud Scripting con il pulsante Apri cartella applicazione evidenziato.

  3. Aprire lo script nell'editor App.cs di codice.

  4. Si noti che nella classe App sono presenti due variabili:

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

    Aggiungere quanto segue come terza variabile:

    private float _angle = 0;
    
  5. Il metodo StartAsync contiene un singolo commento: "Aggiungi il codice di avvio dell'app qui". Sostituire con il codice seguente in modo che il metodo StartAsync sia simile al seguente:

    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. Salva il lavoro.

Esecuzione dell'applicazione in locale

  1. In Unity fare clic sul pulsante Riproduci editor unity.
  2. Nella finestra Gioco fare clic sul cubo. Ogni volta che si fa clic, il cubo ruota sull'asse "X".
  3. Al termine, uscire dalla modalità di riproduzione.

Eseguire il debug dell'applicazione con Visual Studio (facoltativo)

  1. In Hierarchy (Gerarchia) assicurarsi di avere selezionato l'oggetto Mesh Cloud Scripting.

  2. In Inspector (Controllo) passare al componente Mesh Cloud Scripting (Scripting cloud mesh) e quindi selezionare Enable Application Debugging (Abilita debug dell'applicazione).

    Screenshot del componente Mesh Cloud Scripting con la proprietà Enable Application Debugging selezionata ed evidenziata.

  3. Immettere la modalità di riproduzione e selezionare debugger.

    Screenshot dei debugger disponibili.

  4. Aprire il file App.cs , quindi aggiungere un punto di interruzione e quindi continuare l'esecuzione.

    Screenshot del file cs dell'app con un punto di interruzione aggiunto.

  5. In Unity fare clic sul cubo.

    Screenshot del feedback in Unity dopo aver fatto clic sul cubo.

Nota

Per impostazione predefinita, l'applicazione si verifica il timeout dopo due minuti di inattività. Per aumentare questa finestra, impostare un "debugTimeoutSecs" valore nel file manifesto (ad esempio: "debugTimeoutSecs": "240").

Screenshot di Esplora risorse con il file JSON del manifesto di cloudscripting mesh evidenziato.

Compilare e pubblicare l'ambiente

Per compilare e pubblicare l'ambiente, seguire le istruzioni riportate nell'articolo Compilare e pubblicare l'ambiente.

Connettersi al servizio di scripting cloud da Unity

Nota

Questa opzione è disponibile solo quando ServiceMode è impostato su Dev.

  1. In Hierarchy (Gerarchia) verificare che l'oggetto Mesh Cloud Scripting sia selezionato.
  2. In Inspector (Controllo) passare al componente Mesh Cloud Scripting (Scripting cloud mesh) e quindi aprire l'elenco a discesa Developer Settings (Impostazioni sviluppatore).
  3. Deselezionare Esegui server di scripting cloud locale.
  4. Fare clic sul pulsante Di riproduzione dell'editor di Unity.

Creare un evento e aggiungerlo dall'app Mesh

  1. Creare un evento usando l'ambiente appena compilato e pubblicato. Se sono necessarie indicazioni, vedere come creare un evento nel portale mesh.
  2. Partecipare all'evento nell'app Mesh.

Mostra errori del servizio di scripting cloud mesh nell'applicazione Microsoft Mesh (facoltativo)

  1. I messaggi di errore del servizio di scripting cloud non vengono visualizzati per impostazione predefinita nell'app Mesh per ridurre al minimo l'interruzione dell'utente. Se è necessario visualizzare questi messaggi a scopo di debug, seguire questa procedura:

  2. Aprire l'app Mesh.

  3. Fare clic sul pulsante Menu e quindi selezionare Impostazioni.

    Schermata dell'interfaccia dell'app Mesh con il pulsante Menu evidenziato.

  4. Nella barra dei menu a sinistra selezionare Per gli sviluppatori.

    Screenshot dell'interfaccia dell'app Mesh con l'opzione Impostazioni evidenziata.

  5. Attivare o disattivare il pulsante Mostra errore di scripting mesh su "on".

    Screenshot della pagina Impostazioni dell'app Mesh e dell'impostazione per l'errore Show Mesh scripting (Mostra scripting mesh).

Passaggi successivi