Alıştırma - Nesneye el etkileşimi betikleri ekleme

Tamamlandı

ObjectManipulator betiği, "eller ve hareket denetleyicileri" giriş modelinin "doğrudan işleme" modalitesini destekler. Betik bir nesneye eklendiğinde, kullanıcı nesneyi elleriyle taşıyabilir, ölçeklendirebilir veya döndürebilir. Bu alıştırmada iki küp oluşturacak, bunlara gerekli betikleri ekleyip küpleri hareket ettireceksiniz.

İlk küpü ekleme ve ayarlama

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

    Screenshot of menu commands for adding the cube.

    Küp varsayılan boyutu bir metrekaredir; bu bizim amaçlarımız için çok büyük. Boyutu 20x20x20 cm'ye düşüreceğiz.

  2. Küpü seçin ve denetçide küpün Dönüştür/Ölçek değerlerini aşağıdaki şekilde değiştirin:

    X = 0,2, Y = 0,2, Z = 0,2

    Küp, sahnenin varsayılan konumunda (0,0,0) yerleştirildi. Bu, küpü kullanıcının mikrofonlu kulaklığıyla aynı konumda olduğu ve kullanıcının geriye doğru hareket edene kadar küpü göremeyeceği anlamına gelir. Küpü görüntülemek için daha iyi bir konumda olacak şekilde konum değerlerini değiştireceğiz.

  3. Denetçide, küpün Dönüştürme/Konum değerlerini aşağıdaki şekilde değiştirin:

    X = -0,2, Y = 1,6, Z = 0,5

    Screenshot of the cube's transform component after updates.

    Küpün üç tarafını görebilmek istediğimiz için küpün dönüşünü de değiştireceğiz.

    Dekont

    Küp yüksekliği, MRTK XR Rig üzerindeki Kamera Uzaklığının yüksekliğiyle eşleşecek şekilde 1,6 olarak ayarlanır ve kabaca göz düzeyinde yerleştirilir.

  4. Denetçide, küpteki Tranform/Rotation değerlerini aşağıdaki şekilde değiştirin:

    X = 9, Y = 14, Z = 0

    Bahşiş

    Küpü yakınlaştırmak için küpü seçin, imlecin Sahne penceresinin üzerine gelip F tuşuna bastığından emin olun. Herhangi bir nesneyi bu şekilde yakınlaştırabilirsiniz.

Betikleri küpe ekleme

İzlenen ellerle bir nesnenin "yakalanabilir" olması için, üç bileşenin takılı olması gerekir:

  • Bir Collider bileşeni (Burada hiçbir şey yapmanız gerekmez; Unity'nin küpü varsayılan olarak bir Box Collider ekli)
  • Nesne Manipülatör (Betik) bileşeni
  1. Küp seçili durumdayken, Denetçi penceresinde Bileşen Ekle düğmesini seçin ve ardından Nesne Manipülatör betiğini arayıp seçin.

    Screenshot of adding the Object Manipulator script.

    ObjectManipulator betiği bir veya iki el kullanarak nesneyi taşınabilir, ölçeklenebilir ve döndürülebilir hale getirir. Nesne Manipülatör betiğini eklediğinizde, Nesne Manipülatör betiği buna bağlı olduğundan Kısıtlama Yöneticisi betiği de otomatik olarak eklenir.

    Screenshot of the Constraint Manager script added to the cube.

Küp malzemesini güncelleştirme

Performans açısından, varsayılan Unity malzemeleri yerine MRTK malzemelerinin kullanılması önerilir.

  1. Küp seçili durumdayken, Mesh oluşturucu bileşeninde "Malzemeler" bölümünü bulun.
  2. Varsayılan malzemeyi MRTK Standart Varlık>Malzemeleri altında bulunan MRTK_Standard_White malzeme ile değiştirin.

İkinci küp ekleme

  1. Hiyerarşi'de küpü sağ tıklatın ve çoğalt'ı seçin. Yinelenen küp "Küp (1) adıyla görüntülenir."

  2. Özgün küpü sağ tıklatın, Yeniden Adlandır'ı seçin ve küpü "Küpe Yakın" olarak adlandırın.

  3. Yinelenen küpü sağ tıklatın, Yeniden Adlandır'ı seçin ve küpü "Uzak Küp" olarak adlandırın.

    Şu anda Sahne görünümünde yalnızca bir küp var gibi görünüyor. Bunun nedeni, Yakın Küp ve Uzak Küp'ün aynı yerde olmasıdır. Uzak Küp'ün konumunu ve dönüşünü değiştirelim.

  4. Uzak Küp seçili durumdayken Transform bileşenindeki değerlerini aşağıdaki şekilde değiştirin:

    Konum: X = 0,6, Y = 1,6, Z = 1,1

    Döndürme: X = 27, Y = 0, Z = 0

    Şimdi kamera solda Yakın küpü ve sağda biraz daha uzakta Uzak Küp'i görmelidir. Bunu onaylamak için Hiyerarşi'de Ana Kamera (MRTK XR Rig> Kamera Uzaklık altında) seçin ve ardından Sahne penceresindeki Ana Kamera penceresine bakın.

    Screenshot of the Main Camera view in the Scene window.

    Bahşiş

    Sahne penceresindeki görünümün, kameranın gördüklerine daha çok benzemesini istiyorsanız, Sahne penceresinde kaydırın. Varsayılan olarak değilse, kameranın Bayraklarını Temizle'yi Skybox olarak ayarlamanız gerekebilir.

Yürütme modunda küpleri alma ve taşıma

  1. Yürüt düğmesini seçin. Proje yürütülmeye başladığında görünüm Oyun penceresine geçer.

    Screenshot of the Game window after entering Play mode.

    Dekont

    Yürütülmeden önce Project Ayarlar> MRTK3 altında geçerli bir Profil kümesi olduğunu onaylayın.

  2. Oyun penceresinin sağ üst köşesindeki üç noktalı düğmeyi seçin ve ardından Ekranı Kapla'ya tıklayın.

    Screenshot of Maximize command for the Game window.

  3. Simülasyon sağ elinin görünümde görünmesini sağlamak için boşluk çubuğuna basın.

  4. Sanal eli, yan veya alttaki küpe dokunana kadar Küp yakınına yaklaştırın.

    Screenshot of the simulated right hand touching the Near Cube.

  5. Sol fare düğmesini seçin (bu, elin küpü "yakalamasını" sağlar) ve ardından küpü sahnenin çevresinde sürükleyin.

    Screenshot of Move the cube.

    Uzak Küpü alıp taşımak için simülasyon eline bağlı uzak işaretçiyi kullanacağız.

  6. Gerekirse, simülasyon sağ elinin görünmesini sağlamak için boşluk çubuğuna yeniden basın. Elin işaret parmağının ucundan genişleyen uzak işaretçiyi not edin.

    Screenshot of simulated hand's far pointer.

  7. İşaretçinin ucunu küpte görene kadar eli Uzak Küp'e yaklaştırın. İşaretçinin ucunun küpte görünmesini sağlamak için eli dairesel bir hareketle birkaç kez hareket ettirmeniz gerekebilir.

    Screenshot of the far pointer touching the cube.

  8. Sol fare düğmesini seçin (bu, "sıkıştırma hareketi" olarak adlandırdığımız şeyi alarak eli kapatır) ve ardından küpü sahnenin çevresinde sürükleyin.

Unity düzenleyici içi giriş simülasyonu

Unity düzenleyici içi giriş benzetimi özellikleriyle holografik nesne davranışını test edebilirsiniz.

Sahnedeki görünümü değiştirme

  • Kamerayı ileri/sol/geri/sağ hareket ettirmek için W/A/S/D tuşlarına basın.
  • Kamerayı dikey olarak taşımak için Q ve E tuşlarına basın.
  • Kamerayı döndürmek için sağ fare düğmesine basın ve ardından sürükleyin.

El girişinin benzetimini

  • Simülasyon sağ elini etkinleştirmek için boşluk çubuğuna basılı tutun. Eli kaldırmak için boşluk çubuğunu serbest bırakın.
  • Sol simüle edilmiş eli etkinleştirmek için sol shift tuşuna basılı tutun. Eli kaldırmak için anahtarı bırakın.
  • İki eli de sahnede hareket ettirmek için fareyi hareket ettirin.
  • Eli ileri veya geri hareket ettirmek için fare kaydırma tekerleğini döndürün.
  • Sıkıştırma hareketinin benzetimini yapmak için sol fare düğmesini seçin.
  • Eli döndürmek için boşluk çubuğu + CTRL tuşu (sağ el) veya sol shift tuşu + CTRL tuşu (sol el) tuşunu basılı tutun ve ardından fareyi hareket ettirin.

Kalıcı eller

  • Bir eli etkinleştirmek ve tuşunu basılı tutmaya devam etmeden ekranda tutmak için T (sol el) veya Y (sağ el) tuşlarına basın. Elleri kaldırmak için bu tuşlara yeniden basın.

Uygulamanızı Unity'de derleme

  1. Menü çubuğunda Dosya>Derleme Ayarlar... öğesini seçin.

  2. Derleme Ayarlar penceresinde Açık Sahne Ekle düğmesini seçerek geçerli sahnenizi Derlemedeki Sahneler listesine ekleyin.

  3. Oluştur düğmesini seçin.

  4. Derleme Evrensel Windows Platformu penceresinde, derlemenizi depolamak istediğiniz klasöre gidin veya yeni bir klasör oluşturup klasöre gidin ve ardından derleme işlemini başlatmak için Klasör Seç düğmesini seçin.

    Screenshot of the location to save your build.

    Derlemenin nasıl ilerlediğini size bildirmek için bir ilerleme çubuğu görüntülenir.

(İsteğe bağlı) Uygulamayı derleme ve dağıtma

Dekont

HoloLens 2'de derleme ve test etme zorunlu değildir. Alternatif olarak, cihazınız yoksa HoloLens 2 Öykünücüsü'nde test edebilirsiniz. Cihazlar HoloLens.com satın alınabilir.

  1. Derleme işlemi tamamlandığında Windows Dosya Gezgini açılır ve derleme klasörü görüntülenir. Klasörün içinde gezinin ve çözüm dosyasına çift tıklayarak Visual Studio'da açın:

    Screenshot of File Explorer with the builds folder displayed.

  2. Ana veya Yayın yapılandırmasını ve ARM64 mimarisini seçerek HoloLens için Visual Studio'yuyapılandırın:

    Screenshot of Visual Studio window with the build options for the project.

    Bahşiş

    HoloLens'e (1. nesil) dağıtıyorsanız x86 mimarisini seçin.

    Dekont

    Visual Studio'da hedef seçenek olarak "Cihaz" seçeneğini görmüyorsanız, çözümün başlangıç projesini IL2CPP projesinden UWP projesine değiştirmeniz gerekebilir. Bunu yapmak için, Çözüm Gezgini [proje adınız](Evrensel Windows) öğesine sağ tıklayın ve ardından Başlangıç Projesi Olarak Ayarla'yı seçin.

    Önemli

    Cihazınıza derlemeden önce, cihazın Geliştirici Modu'nda olması ve geliştirme bilgisayarınızla eşleştirilmiş olması gerekir. Bu sayfadaki "Geliştirici Modunu Etkinleştirme" adlı bölüme bakın.

  3. Dağıtım hedefi açılan listesini seçin ve aşağıdakilerden birini yapın:

    • Wi-Fi üzerinden oluşturup dağıtıyorsanız Uzak Makine'yi seçin.

    Screenshot of Visual Studio window with Remote Machine as the target.

    • USB aracılığıyla oluşturup dağıtıyorsanız Cihaz'ı seçin.

    Screenshot of Visual Studio window with Device as the target.

  4. Uzak bağlantınızı ayarlayın: Menü çubuğunda Proje > Özellikleri'ni seçin.

  5. Projenin Özellik Sayfaları penceresinde Yapılandırma Özellikleri > Hata Ayıklama'yı seçin.

  6. Başlatmak için Hata Ayıklayıcı açılan listesini seçin ve ardından henüz seçili değilse Uzak Makine'yi seçin.

    Önemli

    "Otomatik Algılandı" özelliğine bağlı değil, IP adresinizi el ile girmenizi öneririz. IP adresinizi bulmak için HoloLens'inizde Ayarlar Güncelleştirmeler > & Geliştiriciler için Güvenlik'e > gidin. IP adresi, Ethernet altındaki pencerenin alt kısmında listelenir.

  7. Makine Adı alanına cihazınızın IP adresini girin.

    Remote connection dialog in Visual Studio

  8. Kimlik Doğrulama Modu'nu Evrensel (Şifrelenmemiş protokol) olarak ayarlayın.

  9. HoloLens'inizi bilgisayarınıza Bağlan ve ardından Visual Studio'da aşağıdakilerden birini yapın:

    • HoloLens'inize dağıtmak ve Visual Studio hata ayıklayıcısını eklemeden uygulamayı otomatik olarak başlatmak için Hata Ayıklama Hata Ayıklama> Olmadan Başlat'ı seçin.
    • Uygulama otomatik olarak başlatılmadan HoloLens'inize dağıtmak için Çözümü Derle'yi>seçin.

    Screenshot of Visual Studio with the Start Without Debugging menu item displayed.

Cihazınızı eşleştirme

HoloLens'inize bilgisayarınızdan ilk kez bir uygulama dağıttığınızda bir PIN girmeniz istenir. PIN oluşturmak için:

  1. HoloLens'inizde geliştiriciler için Ayarlar > Güncelleştirmeler ve Güvenlik'e > gidin.
  2. Eşleştir'i seçin . Bu, HoloLens'te PIN'i görüntüler.
  3. Visual Studio'da iletişim kutusuna PIN'i girin.
  4. Eşleştirme tamamlandıktan sonra HoloLens'te Bitti'yi seçin.

Bilgisayarınız artık HoloLens'inizle eşleştirilir ve uygulamaları otomatik olarak dağıtabilirsiniz. HoloLens'inize uygulama dağıtmak için kullanılan her bilgisayar için bu adımları yineleyin.

Uygulamanızı HoloLens'inizde çalıştırma

  1. Uygulamanızın oluşturulması tamamlandıktan sonra HoloLens Başlat menüsünde uygulamanızın uygulama kutucuğunu bulun ve seçin.

  2. Uygulama başladıktan sonra, Yakın Küp'e ulaşın ve ardından yakalayıp çevresinde sürükleyin.

  3. Uzak küpü almak için uzak işaretçiyi kullanın ve ardından sürükleyin.

    Bahşiş

    HoloLens, uygulamanızı Unity'de test ettiğinizden daha fazla esneklik sağlar. Fiziksel olarak hareket edebilir ve Yakın Küp üzerindeki uzak işaretçiyi kullanabilir veya el ile Uzak Küp'e uzanıp tutabilirsiniz!

İpuçları

  • Ayrıca HoloLens Öykünücüsü'ne dağıtabilir veya dışarıdan yükleme için bir Uygulama Paketi oluşturabilirsiniz.

  • Uygulamada Tanılama profil oluşturucusunun olduğunu fark edebilirsiniz. "Tanılamayı Değiştir" konuşma komutunu kullanarak bunu açıp kapatabilirsiniz. Uygulamadaki değişikliklerin performansı nasıl etkileyebileceğini anlayabilmek için geliştirme sırasında çoğu zaman profil oluşturucuyu görünür tutmanızı öneririz. Örneğin, kare hızının en az 60 FPS olduğundan emin olmak için uygulamanızı izleyebilirsiniz.