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.
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.
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.
Crea una nuova scena.
Salvare la scena e denominarla. Per questo esempio si userà il nome MyFirstCloudScripting.
Nella barra dei menu selezionare GameObject>Mesh Toolkit>Set-up Cloud Scripting(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 ...
... Nella Esplora file di Windows verrà visualizzato anche un nuovo progetto ASP.NET Core denominato MyFirstCloudScripting.csproj in Assets > . MeshCloudScripting > cartella MyFirstCloudScripting.
Modificare la scena
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 .
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.
Sulla barra dei menu selezionare GameObject>3D Object>Cube.
Nella gerarchia trascinare Il cubo nell'oggetto Mesh Cloud Scripting per rendere l'oggetto Cube figlio di tale oggetto.
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.
In Inspector (Controllo) fare clic su Add Component (Aggiungi componente) e quindi selezionare Mesh Interactable Setup (Configurazione interagibile mesh).
Salva la scena.
Modificare il progetto C#
Nella gerarchia selezionare l'oggetto Mesh Cloud Scripting.
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.
Aprire lo script nell'editor
App.cs
di codice.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;
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; }
Salva il lavoro.
Esecuzione dell'applicazione in locale
- In Unity fare clic sul pulsante Riproduci editor unity.
- Nella finestra Gioco fare clic sul cubo. Ogni volta che si fa clic, il cubo ruota sull'asse "X".
- Al termine, uscire dalla modalità di riproduzione.
Eseguire il debug dell'applicazione con Visual Studio (facoltativo)
In Hierarchy (Gerarchia) assicurarsi di avere selezionato l'oggetto Mesh Cloud Scripting.
In Inspector (Controllo) passare al componente Mesh Cloud Scripting (Scripting cloud mesh) e quindi selezionare Enable Application Debugging (Abilita debug dell'applicazione).
Immettere la modalità di riproduzione e selezionare debugger.
Aprire il file App.cs , quindi aggiungere un punto di interruzione e quindi continuare l'esecuzione.
In Unity fare 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"
).
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.
- In Hierarchy (Gerarchia) verificare che l'oggetto Mesh Cloud Scripting sia selezionato.
- In Inspector (Controllo) passare al componente Mesh Cloud Scripting (Scripting cloud mesh) e quindi aprire l'elenco a discesa Developer Settings (Impostazioni sviluppatore).
- Deselezionare Esegui server di scripting cloud locale.
- Fare clic sul pulsante Di riproduzione dell'editor di Unity.
Creare un evento e aggiungerlo dall'app Mesh
- Creare un evento usando l'ambiente appena compilato e pubblicato. Se sono necessarie indicazioni, vedere come creare un evento nel portale mesh.
- Partecipare all'evento nell'app Mesh.
Mostra errori del servizio di scripting cloud mesh nell'applicazione Microsoft Mesh (facoltativo)
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:
Aprire l'app Mesh.
Fare clic sul pulsante Menu e quindi selezionare Impostazioni.
Nella barra dei menu a sinistra selezionare Per gli sviluppatori.
Attivare o disattivare il pulsante Mostra errore di scripting mesh su "on".