Basit bir Bulut Betiği projesi oluşturma
Bu makalede Mesh Cloud Scripting kullanarak basit bir proje oluşturacak ve yayımlayacaksınız. Makalede, sisteminizde Bulut Betiği Oluşturma'yı önceden ayarladığınız varsayılır. Mesh Bulut Betiği ile geliştirmeye başlamadan önce mesh araç seti bilinen sorunların güncel listesini tanımanızı öneririz.
Mesh Bulut Betik Altyapısı ve yönetimi hakkında daha fazla bilgi edinin.
Mesh Bulut Betiği ile Sahne Oluşturma
Aşağıdaki yönergelerde, kullanıcı buna tıkladığında dönen bir Küp ile basit bir ortamın nasıl oluşturulacağı gösterilmektedir.
Yeni oluştur veya var olan bir projeyi güncelleştir adlı makaleye gidin. Yeni bir proje oluşturuyorsanız Yeni proje oluşturma bölümündeki tüm adımları izlediğinize emin olun. Mevcut bir projeyi güncelleştiriyorsanız, Varolan projeyi güncelleştirme adlı bölüm için de aynı işlemi yapın.
Yeni bir sahne oluşturun.
Olay yerine bir seyahat noktası ekleyin.
Sahneyi kaydedin ve adlandırın. Bu örnekte MyFirstCloudScripting adını kullanacağız.
Menü çubuğunda GameObject>Mesh Araç Seti>Kurulum Bulut Betiği'ni seçin.
Mesh Bulut Betiği Oluşturma adlı bir oyun nesnesinin Hiyerarşide göründüğünü ve seçildiğini unutmayın. Denetçide Uygulama klasörünü aç düğmesine tıklarsanız...
... Bunun, Windows Dosya Gezgini'da Varlıklar'da > MyFirstCloudScripting.csproj adlı yeni bir ASP.NET Core projesi oluşturduğunu göreceksiniz. MeshCloudScripting > MyFirstCloudScripting klasörü.
Sahneyi değiştirme
Mesh Öykünmesi ile Yürütme Modu'nu ayarlayın. Sahneye zemin görevi görebilen bir GameObject eklediğinizden ve bunu GroundCollision katmanına ayarladığınızdan emin olun.
Mesh Öykünmesi ile Yürütme Modu'nu ayarladığınızda, bu noktadan sonra kullanacağınız kamerayı içeren görünüme meshEmulatorSetup[NoUpoload] ön adını ekler. Artık varsayılan Ana kamera GameObject'e ihtiyacınız yok; silin.
Menü çubuğunda GameObject>3B nesne Küpü'ne> tıklayın.
Hiyerarşide Küpü Mesh Bulut Betiği nesnesine sürükleyerek Küpü bu nesnenin alt öğesi yapın.
Küp seçili durumdayken, Denetçi'de Dönüştür bileşenine gidin ve küpün Konum ve Döndürme değerlerini aşağıdaki şekilde değiştirin:
Konum: X = 0,1, Y = 1,5, Z = 3,3.
Döndürme: X = -15, Y = 0,8, Z = 0,1
İpucu: MeshEmulatorSetup[NoUpload] prefab içindeki Kamera, AvatarHead'in alt nesnesidir.
Denetçi'de Bileşen Ekle'ye tıklayın ve ardından Mesh Etkileşimli Kurulum'u seçin.
Sahneyi kaydedin.
C# projesini değiştirme
Hiyerarşi'de Mesh Bulut Betiği oluşturma nesnesini seçin.
Denetçi'de Mesh Bulut Betiği bileşenine gidin ve uygulama klasörünü aç düğmesine tıklayın. Bu, Dosya Gezgini açılır ve proje içeriğinizin bir görünümünü gösterir.
App.cs
Betiği kod düzenleyicinizde açın.App sınıfında iki değişken olduğunu unutmayın:
private readonly ILogger<App> _logger; private readonly ICloudApplication _app;
Aşağıdakileri üçüncü değişken olarak ekleyin:
private float _angle = 0;
StartAsync yöntemi tek bir açıklama içerir: "Uygulama başlangıç kodunuzu buraya ekleyin." StartAsync yönteminin aşağıdaki gibi görünmesi için bunu aşağıdaki kodla değiştirin:
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; }
Çalışmanızı kaydedin.
Uygulamanızı yerel olarak çalıştırma
- Unity'de Unity Düzenleyicisi Yürüt düğmesine tıklayın.
- Oyun penceresinde Küp'e tıklayın. Her tıkladığınızda, Küp "X" ekseninde döner.
- İşiniz bittiğinde Yürütme Modu'dan çıkın.
Visual Studio ile uygulamanızda hata ayıklama (isteğe bağlı)
Hiyerarşi'de Mesh Bulut Betiği oluşturma nesnesinin seçili olduğundan emin olun.
Denetçide Mesh Bulut Betik bileşenine gidin ve Ardından Uygulama Hata Ayıklamayı Etkinleştir'i seçin.
Yürütme modu'nu girin ve hata ayıklayıcıyı seçin.
App.cs dosyasını açın, bir kesme noktası ekleyin ve yürütmeye devam edin.
Unity'de Küp'e tıklayın.
Not
Varsayılan olarak, uygulama iki dakika etkinlik dışı kalma süresinden sonra zaman aşımına uğradı. Bu pencereyi artırmak için bildirim dosyanızda bir "debugTimeoutSecs"
değer ayarlayın (örnek: "debugTimeoutSecs": "240"
).
Ortamı oluşturma ve yayımlama
Ortamı derlemek ve yayımlamak için Ortamınızı derleme ve yayımlama makalesindeki yönergeleri izleyin.
Unity'den Bulut Betik Hizmeti'ne bağlanma
Not
Bu yalnızca ServiceMode Dev olarak ayarlandığında kullanılabilir.
- Hiyerarşi'de Mesh Bulut Betiği oluşturma nesnesinin seçili olduğundan emin olun.
- Denetçide Mesh Bulut Betiği bileşenine gidin ve Geliştirici Ayarları açılan listesini açın.
- Yerel Bulut Betik Sunucusu Çalıştır'ın seçimini kaldırın.
- Unity Düzenleyicisi Yürüt düğmesine tıklayın.
Bir olay oluşturma ve Mesh uygulamasından olaya katılma
- Yeni oluşturup yayımladığınız Ortamı kullanarak bir olay oluşturun. Rehberliğe ihtiyacınız varsa Mesh portalında olay oluşturma bölümüne bakın.
- Mesh uygulamasında etkinliğe katılın.
Microsoft Mesh uygulamasında Mesh Bulut Betik Hizmeti hatalarını gösterme (isteğe bağlı)
Bulut Betik Hizmeti'nden gelen hata iletileri, kullanıcı kesintisini en aza indirmek için Mesh uygulamasında varsayılan olarak gösterilmez. Hata ayıklama amacıyla bu iletileri göstermeniz gerekiyorsa aşağıdaki adımları kullanın:
Mesh uygulamasını açın.
Menü düğmesine tıklayın ve ardından Ayarlar'ı seçin.
Sol taraftaki menü çubuğunda Geliştiriciler için'i seçin.
Mesh betiğini göster hata düğmesini "açık" olarak değiştirin.