Aracılığıyla paylaş


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.

  1. 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.

  2. Yeni bir sahne oluşturun.

  3. Olay yerine bir seyahat noktası ekleyin.

  4. Sahneyi kaydedin ve adlandırın. Bu örnekte MyFirstCloudScripting adını kullanacağız.

  5. Menü çubuğunda GameObject>Mesh Araç Seti>Kurulum Bulut Betiği'ni seçin.

    Bulut Betiği Ayarlama menü öğesinin ekran görüntüsü.

    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...

    Unity'de Uygulama klasörünü aç düğmesinin ekran görüntüsü.

    ... 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ü.

    Windows'ta betik projesini gösteren klasör yapısının ekran görüntüsü.

Sahneyi değiştirme

  1. 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.

  2. 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.

    Mesh Cloud Scripting'e çocuk olarak yerleştirilen Küp'ün ekran görüntüsü.

  3. Menü çubuğunda GameObject>3B nesne Küpü'ne> tıklayın.

  4. Hiyerarşide Küpü Mesh Bulut Betiği nesnesine sürükleyerek Küpü bu nesnenin alt öğesi yapın.

    Mesh Cloud Scripting'e çocuk olarak yerleştirilen Küp'ün ekran görüntüsü.

  5. 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.

    Hiyerarşideki Kamera oyun nesnesinin ve Sahne görünümüne yerleştirilen Küp'ün ekran görüntüsü.

  6. Denetçi'de Bileşen Ekle'ye tıklayın ve ardından Mesh Etkileşimli Kurulum'u seçin.

    Mesh Interactables Kurulumu'nun seçili olduğu Bileşen Ekle arama çubuğunun ekran görüntüsü.

  7. Sahneyi kaydedin.

C# projesini değiştirme

  1. Hiyerarşi'de Mesh Bulut Betiği oluşturma nesnesini seçin.

  2. 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.

    Uygulama Klasörünü Aç düğmesinin vurgulandığı Mesh Bulut Betiği bileşeninin ekran görüntüsü.

  3. App.cs Betiği kod düzenleyicinizde açın.

  4. 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;
    
  5. 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;
    }
    
  6. Çalışmanızı kaydedin.

Uygulamanızı yerel olarak çalıştırma

  1. Unity'de Unity Düzenleyicisi Yürüt düğmesine tıklayın.
  2. Oyun penceresinde Küp'e tıklayın. Her tıkladığınızda, Küp "X" ekseninde döner.
  3. İşiniz bittiğinde Yürütme Modu'dan çıkın.

Visual Studio ile uygulamanızda hata ayıklama (isteğe bağlı)

  1. Hiyerarşi'de Mesh Bulut Betiği oluşturma nesnesinin seçili olduğundan emin olun.

  2. Denetçide Mesh Bulut Betik bileşenine gidin ve Ardından Uygulama Hata Ayıklamayı Etkinleştir'i seçin.

    Uygulama Hata Ayıklamayı Etkinleştir özelliğinin seçili ve vurgulandığı Mesh Bulut Betiği bileşeninin ekran görüntüsü.

  3. Yürütme modu'nu girin ve hata ayıklayıcıyı seçin.

    Kullanılabilir hata ayıklayıcılarının ekran görüntüsü.

  4. App.cs dosyasını açın, bir kesme noktası ekleyin ve yürütmeye devam edin.

    Kesme noktası eklenmiş app cs dosyasının ekran görüntüsü.

  5. Unity'de Küp'e tıklayın.

    Unity'de Küp'e tıkladıktan sonra geri bildirimin ekran görüntüsü.

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").

Windows Gezgini'nin mesh cloudscripting manifest json dosyasının vurgulandığı ekran görüntüsü.

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.

  1. Hiyerarşi'de Mesh Bulut Betiği oluşturma nesnesinin seçili olduğundan emin olun.
  2. Denetçide Mesh Bulut Betiği bileşenine gidin ve Geliştirici Ayarları açılan listesini açın.
  3. Yerel Bulut Betik Sunucusu Çalıştır'ın seçimini kaldırın.
  4. Unity Düzenleyicisi Yürüt düğmesine tıklayın.

Bir olay oluşturma ve Mesh uygulamasından olaya katılma

  1. 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.
  2. Mesh uygulamasında etkinliğe katılın.

Microsoft Mesh uygulamasında Mesh Bulut Betik Hizmeti hatalarını gösterme (isteğe bağlı)

  1. 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:

  2. Mesh uygulamasını açın.

  3. Menü düğmesine tıklayın ve ardından Ayarlar'ı seçin.

    Menü düğmesinin vurgulandığı Mesh uygulama arabiriminin ekranı.

  4. Sol taraftaki menü çubuğunda Geliştiriciler için'i seçin.

    Ayarlar seçeneğinin vurgulandığı Mesh uygulama arabiriminin ekran görüntüsü.

  5. Mesh betiğini göster hata düğmesini "açık" olarak değiştirin.

    Mesh uygulaması Ayarları sayfasının ekran görüntüsü ve Mesh betik oluşturma hatasını göster ayarı.

Sonraki adımlar