paint-brush
Presence Platform Etkileşim SDK'sına Başlarken: El Takibiile@shiaart
24,199 okumalar
24,199 okumalar

Presence Platform Etkileşim SDK'sına Başlarken: El Takibi

ile Artem Shiabutdinov4m2023/07/31
Read on Terminal Reader
Read this story w/o Javascript

Çok uzun; Okumak

Presence Platformu, sanal gerçeklik ortamlarında ortak varlık ve etkileşim duygusu yaratmak için tasarlanmıştır. İnsanların VR kulaklıklarını kullanarak sürükleyici sanal alanlarda birbirleriyle bağlantı kurmasına, etkileşimde bulunmasına ve etkileşime girmesine olanak tanır. El takibi, VR oyun geliştirmenin temel gereksinimlerinden biridir; deneyime benzer bir el takip oyunu kuracağız, oluşturacağız ve başlatacağız.
featured image - Presence Platform Etkileşim SDK'sına Başlarken: El Takibi
Artem Shiabutdinov HackerNoon profile picture
0-item
1-item
2-item

Önceki gönderide Quest 2 cihazını hedef alan ilk Unity projemizi başarıyla oluşturduğumuz için, şimdi Meta'nın Presence Platformu aracılığıyla sağladığı en güçlü yeteneklerden biri hakkında bilgi sahibi olacağız.

Meta'nın Varlık Platformu Nedir?

Varlık Platformu, sanal gerçeklik ortamlarında ortak varlık ve etkileşim duygusu yaratmak için tasarlanmıştır . İnsanların VR kulaklıkları kullanarak sürükleyici sanal alanlarda birbirleriyle bağlantı kurmasına, etkileşimde bulunmasına ve etkileşime girmesine olanak tanır.


Meta'nın Varlık Platformunun özellikleri ve yetenekleri şunları içerir:


  1. Avatar Sistemi: Varlık Platformu, kullanıcıların kendilerini sanal dünyada temsil eden dijital avatarlarını oluşturmalarına ve özelleştirmelerine olanak tanır. Bu avatarlar, kullanıcıların gerçek hayattaki hareketlerini, ifadelerini ve jestlerini taklit ederek varlık hissini ve sosyal etkileşimi geliştirebilir.
  2. Sosyal Etkileşim: Kullanıcılar, paylaşılan sanal ortamlarda arkadaşlarıyla ve diğer insanlarla tanışabilir ve etkileşimde bulunabilir. Birlikte oyun oynamak, sanal etkinliklere katılmak, video izlemek gibi çeşitli aktivitelere katılabilirler.
  3. Uzamsal Ses: Platform, uzamsal ses içerir; bu, sanal ortamdaki sesin konuma dayalı olduğu anlamına gelir. Bu, kullanıcıların tıpkı gerçek dünyada olduğu gibi belirli yönlerden gelen sesleri duyabilmesi nedeniyle daha gerçekçi ve sürükleyici bir ses deneyimi yaratıyor.
  4. El Takibi: Presence Platformu, el takip teknolojisini destekleyerek kullanıcıların ellerini ve parmaklarını kontrol cihazına ihtiyaç duymadan doğrudan VR'de kullanmalarına olanak tanıyor. Bu, etkileşimleri daha doğal ve sezgisel hale getirir.
  5. Çapraz Platform Desteği: Platform, farklı Oculus VR başlıklarıyla çalışacak şekilde tasarlandı ve farklı cihazlara sahip kullanıcıların birbirlerine sorunsuz bir şekilde katılmasına ve etkileşime girmesine olanak tanıyor.
  6. İçerik Oluşturma Araçları: Geliştiriciler için Presence Platform, VR uygulamaları, oyunlar ve deneyimler oluşturup yayınlamaya yönelik araçlar ve API'ler sağlayarak gelişen bir sanal içerik ekosistemini mümkün kılar.


El takibiyle başlama

Gördüğünüz gibi Presence Platformu kapsamlı bir alt sistem/özellikler setidir ve bunların her birini ayrıntılı olarak ele alacağım, ancak başlamak için - VR oyun geliştirmenin temel gereksinimlerinden biri olan el takibinden başlayalım - kurulumunu yapacağız , deneyim benzeri bir el izleme oyunu oluşturun ve başlatın.


https://docs.unity3d.com/


Mükemmel bir başlangıç noktası, oculus-samples repo tarafından sağlanan Unity-FirstHand deneyimidir.

Tekrar, lütfen geliştirme ortamının kurulumuyla ilgili önceki gönderiye bakın ve çeşitli bağımlılıkların kurulu olduğundan emin olun.


Git LFS'nin kurulu olduğundan emin olun, şu komutu çalıştırın:

 git lfs install


Ardından "Kod"u kullanarak repo'yu kopyalayın, Github masaüstünde açın ve aşağıdaki komutu çalıştırın:

 git clone https://github.com/oculus-samples/Unity-FirstHand.git


Gerçek proje dosyalarının tümü Varlıklar → Proje'dedir. Bu klasör, Etkileşim SDK'sının kendisi hariç, örneği çalıştırmak için gereken tüm komut dosyalarını ve varlıkları içerir. Proje, Etkileşim SDK'sı da dahil olmak üzere Oculus SDK'nın v41'ini içeriyor. Etkileşim SDK'sını [Assets/Oculus/Interaction]{Assets/Oculus/Interaction) içinde bulabilirsiniz.


Unity Editöründe İlk El


Gerekli tüm bağımlılıkları yükledikten ve derlemeyi Quest cihazında çalışacak şekilde yapılandırdıktan sonra, düzenleyicinizde yukarıdakine benzer bir şey elde edeceksiniz.


Oluştur ve çalıştır

Mac kullanıyorsanız Dosya → Yapı Ayarları'na gidin.

Önceki gönderimdeki talimatları izlediyseniz ve cihazınızı bağladıysanız, Yapı Ayarlarında görmeniz gerekenler aşağıdadır.

Ayarları oluştur ve çalıştır

Oluştur ve Çalıştır'a tıklayın, Unity'nin oluşturması için birkaç dakika bekleyin ve uygulamanızın bağlı Quest cihazına dağıttığı mesajları bekleyin.


Koşu deneyimi

Özelleştirme ve değişiklik yapma

Bu örnekle oynamanızı ve dahili olarak nasıl çalıştığını öğrenmek için bileşenleri ve komut dosyalarını özelleştirmeye çalışmanızı, bunu Unity editörünüzün Proje bölümüne giderek proje dizinleri hiyerarşisini genişletmenizi şiddetle öneririm.


LazerProjectile'ı özelleştireceğiz:


Proje yapısı

 public class LazerProjectile : ActiveStateObserver { [SerializeField] Transform _target; [SerializeField] GameObject _effect; [SerializeField] float _rayCastDelay = 0.5f; [SerializeField] float _fadeOutTime = 0.1f; [SerializeField] float _delayBetweenShots = 0.5f; [SerializeField] AudioTrigger _chargeUp; [SerializeField, Optional] AudioTrigger _chargeUpComplete; protected override void Update() { base.Update(); Vector3 endPos = Vector3.Lerp(_target.position, transform.position + transform.forward * 20, 5 * Time.deltaTime); _target.position = endPos; } //...... }


Ray cast gecikmesini artıralım ve uygulamayı kulaklıkta değiştirerek test edelim


 float _rayCastDelay = 0.1f;

ile

 float _rayCastDelay = 0.5f;


İşte nasıl çalışıyor!

Demo


Kendiniz deneyin ve el takibini kullanarak ne oluşturmak istediğinizi bana bildirin.