Aracılığıyla paylaş


Microsoft Mesh araç seti Örneği: Toybox

Bir Mesh olayında Toybox sahnesinin uzak mesafe görünümü.

Toybox , oluşturucuların etkileşimli Mesh deneyimleri ve oyunları oluşturmasını sağlayan bir Mesh örneğidir. Örnek, Mesh deneyimlerinde sosyal etkileşimi sağlamak için varlıkların, gölgelendiricilerin, görsel betiklerin, animasyonların, VFX'in ve SoundFX'in karışımını kullanan bir dizi etkinlik sağlar.

Örneklerimizden birini ilk kez kullanıyorsanız, henüz kullanmadıysanız Örneklere genel bakış sayfamızı gözden geçirmenizi öneririz.

Oyuncak Kutusu Paketi

Toybox paketi com.microsoft.mesh.toolkit.toybox olarak adlandırılır ve Paketler klasöründeki Dosya Gezgini bulunabilir.

Dosya Gezgini'de Toybox paketinin ekran görüntüsü.

Unity projesinde şöyle görünür.

Unity projesindeki Toybox paketinin ekran görüntüsü.

Sahneyi anlama Etkileşime Dönüştürülebilirler

Sahnedeki nesneler arasındaki etkileşimleri anlamak için, Grab, hold and throw with Interactables makalesini gözden geçirmenizi ve ardından Toybox örneğinde Mesh Interactable Setup veya Mesh Interactable Body bileşenlerini içererek etkileşime dönüştürülebilir hale gelen nesnelere göz atmanızı öneririz. Belirli nesnelere eklenmiş görsel betikleri incelemek size daha fazla içgörü sağlar. Betikler, standart Unity düğümlerinin ve Mesh için özel olarak üretilen düğümlerin bir karışımını içerir. Mesh düğümleri hakkında daha fazla bilgi edinmek için bkz . Görsel Betik Düğümü Başvurusu. Toybox örneğinde çok sayıda GameObject vardır; aşağıdaki listeler ve tablolar, etkileşimli nesneleri ve betiklerdeki Mesh düğümlerini bulmanızı kolaylaştırmalıdır.

Oyuncak Kutusu Etkinlikleri

Aşağıdaki görüntü, sahnedeki farklı etkinlikleri bulmanıza yardımcı olabilir. Daha büyük bir sürümü görmek için resme tıklayın.

  1. Fasulye Çanta Toss
  2. Ateş Çukuru ve Kavurma Marşmelovları
  3. Buz Kırıcı
  4. Küre Heykel
  5. Güneş Sistemi
  6. Radyo
  7. Boombox

Numaralandırılmış özelliklere sahip Toybox sahnesinin uzak mesafe görünümü.

  • Fasulye Çanta Toss

    Fasulye torbası toss oyununu oynayan bir etkinlik katılımcısını gösteren GIF.

    Bu, projenize bir oyun öğesi ekleyebilen ve bazı samimi rekabetler aracılığıyla sosyal etkileşimi ve ekip oluşturmayı teşvik eden eğlenceli bir etkinliktir. Fasulye torbaları, çeşitli nesne değişkenleri eklenmiş görsel betikleri olan etkileşime açılabilir ve rijitbodlardır. Bir hedef kümesinde deliklerin dönmesine neden olan animasyonlar vardır (nesne adı: Döndürme). Bir torba bir deliğe düşerek "puanladığında", parçacık sistemi bileşeni bir "kazanan" görsel ipucu (nesne adı: vfx_beanbag_score_001) oluşturur.

  • Fire Pit & Roasting Marshmallows

    Bir etkinlik katılımcısını marşmelov kavurma işlemini gösteren GIF.

    Katılımcılar bir çubukta bir marşmelov alabilir ve marşmelov rosto için arkadaşlarına katılabilirler. Bir çubuk (nesne adı: MarshmallowStick) yakalanabilir ve tutulabilir çünkü Nesne Türü Donatılabilir olarak ayarlanmış bir Mesh Etkileşimli Kurulum bileşeninesahiptir. Ayrıca Roast adlı bir animasyon klibini tetikleyen bir betik grafiği de eklenmiştir. Marshmallow yazma efekti hakkında daha fazla içgörü istiyorsanız, Marshmallow_03_burnt nesnesine eklenmiş S_VFX_BurntShader gölgelendirici grafiğine göz atın. Yangın, Main_Flame nesnesine ve alt nesnelerine bağlı parçacık sistemleri tarafından sağlanır. Çubuklar, Reset_Button_Marshmallow_Varient nesnesine iliştirilmiş ResetButton betiği sayesinde yapışkandaki özgün yerlerine döndürülebilir.

  • Buz Kırıcı

    Bir buz kırıcı küresine dokunan ve soru oluşturan Mesh katılımcısının ekran görüntüsü.

    Katılımcılar kavrulmuş marşmelov dolduğunda, yakın mesafedeki Buz Kırıcı'yı ziyaret edebilirler. Bu etkinlik, insanların birbirleriyle ilgili daha fazla bilgi edinmeleri için harika bir yoldur. Katılımcılar tıklandığında favori bir TV programı, unutulmaz konser performansı, aldıkları tavsiyeler veya görüşleri, ilgi alanları veya deneyimleri ile ilgili başka bir dizi şeyi soran bir küre etrafında toplanabilir. Küre, IceBreaker adlı bir betikle etkileşime geçilebilir bir betiktir. Ayrıca, olası soruları içeren Dize Listesi türünde bir nesne değişkeni de vardır.

  • Küre Heykel

    Bir ses oluşturan küre heykeline dokunan mesh katılımcısının ekran görüntüsü.

    Bu "heykel" uzayda yüzen çeşitli boyutlarda bir düzineden fazla küreden oluşur. Küreler Interactables 'tır (nesne adı: InteractableSphere). Bir katılımcı bir küreye dokunduğunda, çan benzeri bir ton oluşturulur. Bunun nasıl çalıştığını görmek için InteracatableSphere'a eklenmiş SpheresSculptureSphere_Simple betiğine göz atın.

  • Güneş Sistemi

    Astronotu yakalayan Güneş Sistemi etkinliğinde Mesh katılımcısının ekran görüntüsü.

    Bu, güneş sistemimizin, Dünya, Mars ve Jüpiter modellerinin Güneş etrafında yörüngede yüzer olduğu mini bir sürümüdür (nesne adları: Planet_Earth, Planet_Mars, Planet_Jupiter). Ayrıca bir astronot modeli de vardır (nesne adı: Astronot Makinesi). Her birinde Manipulable türüne ayarlanmış Mesh Etkileşime Dönüştürülebilir Kurulum bileşenleri olduğundan bir katılımcı modellere uzaktan ulaşabilir ve modelleri alabilir. Astronot modelinin eklemleri ve donanımı vardır; Tutulup hareket ettirildiğinde kolları ve bacakları yanar. Bir Kapsama Alanı nesnesinin varlığı nedeniyle modeller odadan taşınamıyor.

  • Radyo

    Sesi denetlemek için Radyo'da düğmeye basan Mesh katılımcısının ekran görüntüsü.

    Ortam için biraz canlı arka plan müziği sağlamak için basit bir radyo. Radyoda (nesne adı: Radio_Pressable_Prefab) sesi oluşturan bir betik eklenmiştir (PressableRadio). Radyodan yukarı kayan müzik notaları Parçacık Sistemi nesnesi (Radio_V2 alt nesnesi) tarafından oluşturulur.

  • Boombox

    Sesi denetlemek için Boombox üzerindeki düğmeye basan Mesh katılımcısının ekran görüntüsü.

    Bu, Radyo'ya benzer ve biraz farklı bir müzik stiline sahiptir. Ses çalma betiği (PlayButton_Script) toybox_play_button_3_varient nesnesine eklenir. Betiğin, ses düğümlerini içeren bir alt yazısı (BoomboxState) vardır.

Toybox paketini var olan bir projeye ekleme

Toybox paketini projenize eklemenin birkaç yolu vardır.

  1. Packages klasöründe bulunan com.microsoft.mesh.toolkit.toybox klasörünü kopyalayıp projenizin Packages klasörüne yapıştırın.
  2. GitHub'dan Toybox paketine başvurun.

Önemli

GitHub'dan Gelen Kutusu paketine başvurmak için bilgisayarınızda Git yüklü olmalıdır.

GitHub kullanarak Toybox'ı Unity projenize aktarmak için:

  1. Projenizde, menü çubuğunda Pencere> Paket Yöneticisi'yi seçin.

  2. Paket Yöneticisi '+' açılan menüsüne tıklayın ve ardından "Git URL'sinden paket ekle..." seçeneğini belirleyin

    Github'dan paket ekle menü seçeneğinin ekran görüntüsü.

  3. Metin alanına yapıştırın https://github.com/microsoft/Mesh-Toolkit-Unity.git?path=/Packages/com.microsoft.mesh.toolkit.toybox ve ekle'ye tıklayın.

    Github metin kutusuna yapıştırılan oyuncak kutusu URL'sinin ekran görüntüsü.

Toybox artık Unity projenize projenin Packages klasöründe Microsoft Mesh Toolkit Toybox adlı bir paket olarak yüklenecek.

İpucu

Projenizin bir sürüme kilitli olduğundan emin olmak için Toybox paketinin belirli bir sürümünü kullanmanızı öneririz.

Aşağıda gösterildiği gibi 3. adımda URL'yi değiştirerek belirli bir yayın sürümüne, dala veya Git işleme karmasına başvurabilirsiniz:

Sözdizimi URL örneği
Belirli sürüm https://github.com/microsoft/Mesh-Toolkit-Unity.git?path=/Packages/com.microsoft.mesh.toolkit.toybox#vX.Y.Z
Belirli dal https://github.com/microsoft/Mesh-Toolkit-Unity.git?path=/Packages/com.microsoft.mesh.toolkit.toybox#my_branch
Git işleme karması https://github.com/microsoft/Mesh-Toolkit-Unity.git?path=/Packages/com.microsoft.mesh.toolkit.toybox#badc0ffee0ddf00ddead10cc8badf00d1badb002

Mesh Etkileşime Dönüştürülebilir Kurulum bileşenine sahip nesneler

  • beanbag_red
  • beanbag_blue
  • toybox_beanbag_reset_button_variant
  • InteractableSphere
  • Planet_Mars
  • Planet_Earth
  • Planet_Jupiter
  • Reset_Button_Marshmallow_Varient
  • MarshmallowStick
  • Düğme
  • toybox_play_button_01_varient
  • Planet_Mars
  • Planet_Earth
  • Planet_Jupiter
  • Planet_astronaut_hip
  • Düğme (ButtonHolder'ın alt nesnesi)
  • toybox_play_button_01_varient

Mesh Etkileşime Dönüştürülebilir Gövde bileşenine sahip nesneler

  • beanbag_red
  • beanbag_blue
  • toybox_beanbag_reset_button_variant
  • Reset_Button_Marshmallow_Varient
  • Düğme (ButtonHolder'ın alt nesnesi)
  • toybox_play_button_01_varient

Mesh Fizik Bileşenlerine Sahip Nesneler

GameObject Bileşen
Yerçekimi Orbital Gravity Field
Kapsama Alanı Kapsama Alanı
Astronaut_containment Kapsama Alanı
Yüzdürme Buoyancy Alanı
BeanBags, Marshmallow Holder, Marshmallow_Pos Gövde Dönüşümünü Sıfırla
Marshmallow_Pos Gövde Dönüşümlerini Sıfırla

Betik grafiklerinde kullanılan ağ düğümleri

Microsoft Mesh: Durum Değişti


Etkinlik GameObjects Betik Makinesi Adı Grafik Adı
Campfire Reset_Button_Marshmallow_Varient ResetButton ResetButton
Fasulye Çanta Toss beanbag_red, beanbag_blue BeanBagPower BeanBagGraph
Küre Heykel InteractableSphere SpheresSculptureSphere SpheresSculptureSphere_Simple
Buzkıran Buzkıran Buzkıran Buzkıran
Müzik Kutusu Radio_Pressable_Prefab Basılabilir Radyo PressableRadio
Müzik Kutusu toybox_play_button_01_varient PlayButton Betiği PlayButton_Script

Mesh Etkileşime Dönüştürülebilir Gövde: Donatılmıştır


Etkinlik GameObjects Betik Makinesi Adı Grafik Adı
Fasulye Çanta Toss beanbag_red, beanbag_blue BeanBagPower BeanBagGraph


Mesh Etkileşime Dönüştürülebilir Gövde: Hedefleniyor


Etkinlik GameObjects Betik Makinesi Adı Grafik Adı
Fasulye Çanta Toss beanbag_red, beanbag_blue BeanBagPower BeanBagGraph


Mesh Etkileşime Dönüştürülebilir Gövde: Seçili


Etkinlik GameObjects Betik Makinesi Adı Grafik Adı
Campfire Reset_Button_Marshmallow_Varient ResetButton ResetButton
Fasulye Çanta Toss beanbag_red, beanbag_blue BeanBagPower BeanBagGraph
Küre Heykel InteractableSphere SpheresSculptureSphere SpheresSculptureSphere_Simple

Mesh Etkileşime Dönüştürülebilir Gövde: Yerel Olarak Seçilir


Etkinlik GameObjects Betik Makinesi Adı Grafik Adı
Buzkıran Buzkıran Buzkıran Buzkıran
Müzik Kutusu Radio_Pressable_Prefab Basılabilir Radyo PressableRadio
Müzik Kutusu toybox_play_button_01_varient PlayButton Betiği PlayButton_Script

Mesh Etkileşime Dönüştürülebilir Gövde: IsHovered


Etkinlik GameObjects Betik Makinesi Adı Grafik Adı
Küre Heykel InteractableSphere SpheresSculptureSphere SpheresSculptureSphere_Simple
Buzkıran Buzkıran Buzkıran Buzkıran

Gövde Dönüşümlerini Sıfırla: Gövde Dönüşümlerini Şimdi Sıfırla


Etkinlik GameObjects Betik Makinesi Adı Grafik Adı
Campfire Reset_Button_Marshmallow_Varient ResetButton ResetButton

Uzamsal Ses Özellikleri: Oluşturma


Etkinlik GameObjects Betik Makinesi Adı Grafik Adı
Fasulye Çanta Toss beanbag_red, beanbag_blue BeanBagPower BeanBagGraph
Küre Heykel InteractableSphere SpheresSculptureSphere SpheresSculptureSphere_Simple

Microsoft Mesh: Mesh Ses Çalma


Etkinlik GameObjects Betik Makinesi Adı Grafik Adı
Fasulye Çanta Toss beanbag_red, beanbag_blue BeanBagPower BeanBagGraph
Küre Heykel InteractableSphere SpheresSculptureSphere SpheresSculptureSphere_Simple

Microsoft Mesh: Rastgele Ses


Etkinlik GameObjects Betik Makinesi Adı Grafik Adı
Fasulye Çanta Toss beanbag_red, beanbag_blue BeanBagPower BeanBagGraph

Örnek yükleme süresi hakkında uyarı

Büyük varlık boyutları nedeniyle örneğin Unity'ye yüklenmesi 15 dakika veya biraz daha uzun sürebilir. Gerekirse, bilgisayar proje yüklenirken uyku moduna geçmeyecek şekilde Uyku modu ayarınızı değiştirin. Böyle bir durumda, projenin düzgün yüklenmemesi neden olabilir.

Katkılar

Şu anda örneklerimize kod katkılarını kabul ediyoruz. Geri bildiriminiz varsa veya örneklerle veya Mesh araç setiyle ilgili herhangi bir sorunla karşılaşırsanız aşağıdakileri yapın: Mesh araç seti paketinin yüklü olduğu bir Unity projesinde Mesh Toolkit ->Microsoft'a geri bildirimde bulunma'yı seçin ve bize bildirmek için Mesh araç setindeki geri bildirim bağlantısını kullanın.

Bu projede Microsoft Açık Kaynak Kullanım Şartları kabul edilmiştir. Daha fazla bilgi için Kullanım Şartları SSS’ye göz atın veya diğer soru ve yorumlarınız için opencode@microsoft.com ile iletişime geçin.

Lisans

Bu projedeki Mesh örneği, LİSANS'ta gösterildiği gibi MIT lisansına tabidir. Mesh-Toolkit-Unity deposundaki MD dosyası. Ancak örnek işlevselliği, ayrı bir lisans tarafından yönetilen ve 3. taraf yazılımları içeren Mesh araç setlerine bağlıdır.