Avatarınız, girdiğiniz her alandaki kimliğinizdir. SocialInteractions geliştirici modülü, her kullanıcının kendisini daha iyi ifade etmesini ve doğal hareketlerini artırmasını sağlar, deneyime gerçekçilik katmaktadır.
Bu modül aşağıdaki özellikleri içerir:
| Vücut Yönlendirmesi | Her kullanıcının avatarının başını, karşılık gelen kullanıcının kamerasının yöneldiği yere dönmesini sağlar; bu, boyun ve bel döndürme karışımı ile gerçekleştirilir. Bu, birinin neyle veya kiminle etkileşimde bulunduğuna dair ince bir ipucu sağlar. |
| Sohbet Animasyonları | Avatarların gönderdiği mesajların içeriğine bağlı olarak animasyon oynamasını sağlayarak deneyim içindeki sohbeti daha canlı hale getirir. Her animasyonu tetikleyen "tetik kelimeler" listesi yapılandırılabilir. |
Modül Kullanımı
Kurulum
SocialInteractions modülünü bir deneyimde kullanmak için:
Studio'nun Pencere menüsünden veya Ana Sayfa sekmesi araç çubuğundan Araç Kutusu'nu açın ve Yaratıcı Mağazası sekmesini seçin.

Modeller sıralamasının seçili olduğundan emin olun, ardından Tümünü Gör butonuna tıklayın.

Paketler başlığını bulun ve tıklayın.
Sosyal Etkileşimler modülünü bulun ve tıklayın veya 3D görünümüne sürükleyip bırakın.

Explorer penceresinde, tüm SocialInteractions modelini ReplicatedStorage içine taşıyın. Deneyimi çalıştırdığınızda modül çalışmaya başlayacaktır.
Yapılandırma
SocialInteractions modülünü eklemek, hem vücut yönlendirmesi hem de sohbet animasyonları özelliklerini yerinize etkinleştirecektir. Varsayılan davranışı ayarlamak için:
StarterPlayerScripts içinde yeni bir LocalScript oluşturun ve adını ConfigureSocialInteractions olarak değiştirin.

Yeni scriptin içine aşağıdaki kodu yapıştırın ve modülün davranışını özelleştirmek için configure fonksiyonunu kullanın.
LocalScriptlocal ReplicatedStorage = game:GetService("ReplicatedStorage")local SocialInteractions = require(ReplicatedStorage.SocialInteractions)-- Bel döndürmeyi daha belirgin hale getirin ve sohbet animasyonları özelliğini devre dışı bırakınSocialInteractions.configure({waistOrientationWeight = 0.75,useChatAnimations = false,})
Sohbet Animasyonu Tetikleyici Kelimeler
Her sohbet animasyonunu tetikleyen "tetikleyici kelimelerin" listesi yapılandırılabilir ve tanınabilir kelimeleri artırmak için Luau string kalıpları kullanılır. Örneğin, Dalga animasyonu için kullanılan bir kombinasyon he+y+o*'dur; yani hey, heyyy, heyo, heyyyyo, heeeeyyyyo ve diğer varyasyonlar animasyonu tetiklemek için yeterlidir.
Ayrıca, tetikleyici kelimelerin büyük/küçük harf duyarsız olduğunu unutmayın; bu nedenle hey yazmak, HEY, Hey ve diğer varyasyonlarla aynı anlama gelir.
| Animasyon | Animasyon ID | Kelimeler Kalıpları |
|---|---|---|
| Dalga | 3344650532 | hell+o+ h+i+o* wa+[sz]+u+p+ y+o+ greetings* salutations* goo+d+%smorning+ he+y+o* howdy+ what's*%s*up+ |
| Alkışla | 5911729486 | ya+y+ h[ou]+r+a+y+ woo+t* woo+h+oo+ bravo+ tebrikler+ kutlarım+ gg pog+ poggers+ |
| Katıl | 4841397952 | ye+s* ye+a+h* y[eu]+p+ o+k+ o+k+a+y+ |
| Katılma | 4841401869 | no+ no+pe+ yi+ke+s+ |
| Omuz Silkme | 3334392772 | not+%s+sure+ idk+ don't%s+know+ i%s+don't%s+know+ who+%s+knows+ |
| Kahkaha | 3337966527 | lo+l+ rof+l+ ha[ha]* he[he]+ |
| Uyumak | 4686925579 | zzz+ yawn+ |
Her animasyonu tetikleyen kelimeler listesi yapılandırılabilir ve ek animasyonlar setTriggerWordsForChatAnimation fonksiyonu aracılığıyla eklenebilir. Örneğin, aşağıdaki LocalScript, Eğilme Tilt animasyonunu cra+zy string kalıbı ile bağlar; bu, crazy ve craaaaaazy gibi tetik kelimelerini destekler. Ayrıca, Alkışla Applaud animasyonu için coo+l string kalıbını ekleyerek cool ve coooool gibi kelimeleri destekler.
LocalScriptlocal ReplicatedStorage = game:GetService("ReplicatedStorage")local SocialInteractions = require(ReplicatedStorage.SocialInteractions)-- "Eğilme" animasyonu için string kalıbını kaydetSocialInteractions.setTriggerWordsForChatAnimation("rbxassetid://3334538554", {"cra+zy"})-- "Alkışla" animasyonu için ek string kalıbını kaydetSocialInteractions.setTriggerWordsForChatAnimation("rbxassetid://5911729486", {"coo+l"})
API Referansı
Fonksiyonlar
configure
configure(config: table)
Varsayılan yapılandırma seçeneklerini config tablosundaki aşağıdaki anahtar/değerler aracılığıyla geçersiz kılar. Bu fonksiyon yalnızca bir LocalScript içinden çağrılabilir.
| Anahtar | Açıklama | Varsayılan |
|---|---|---|
| useBodyOrientation | vücut yönlendirmesi özelliğini açıp kapatır. | true |
| waistOrientationWeight | Vücut yönlendirmesi bel ve boyun döndürmesinin bir karışımını kullanır; bu parametre hangisinin baskın olduğunu belirler. 1 değeri belin tamamen avantajlı olmasını sağlarken, 0 boynun tamamen avantajlı olmasını sağlar. | 0.5 |
| useChatAnimations | sohbet animasyonları özelliğini açıp kapatır. | true |
| useDefaultTriggerWordsForChatEmotes | Sohbet animasyonları, tetikleyici kelimeler için varsayılan bir liste ile gelir. Bunları kapatmak ve kendi kelimelerinizi sağlamak isterseniz bu parametreyi false olarak ayarlayın. | true |
LocalScriptlocal ReplicatedStorage = game:GetService("ReplicatedStorage")local SocialInteractions = require(ReplicatedStorage.SocialInteractions)-- Bel döndürmeyi daha belirgin hale getirin ve sohbet animasyonları özelliğini devre dışı bırakınSocialInteractions.configure({waistOrientationWeight = 0.75,useChatAnimations = false,})
setTriggerWordsForChatAnimation
setTriggerWordsForChatAnimation(animationId: string, triggerWords: table)
Sohbet animasyon özelliğinde yeni bir animasyon kaydeder. triggerWords tablosunda bulunan herhangi bir string kalıbına uyan kelime yazmak, ilk parametre olarak geçirilen animasyon ID'sinin aktivasyonunu sağlar.
Tetikleyici kelimelerin, oyuncular için büyük/küçük harfle duyarsız olduğunu unutmayın; bu nedenle woah kalıbı, woah, WOAH, Woah ve diğer varyasyonları kabul edecektir.
LocalScriptlocal ReplicatedStorage = game:GetService("ReplicatedStorage")local SocialInteractions = require(ReplicatedStorage.SocialInteractions)-- Özel bir animasyon için yeni string kalıbını kaydetSocialInteractions.setTriggerWordsForChatAnimation("rbxassetid://3334538554",{"cra+zy", "woah+"})
Olaylar
onChatAnimationPlayed
Bir sohbet animasyonu oynandığında tetiklenir. Bağlı fonksiyon, animasyon ID'sini ve animasyonu tetikleyen kelimeyi argüman olarak alır. Bu olay yalnızca bir LocalScript içinde bağlanabilir.
| Parametreler | |
|---|---|
| animationId: string | Oynanan animasyon ID'si. |
| triggerWord: string | Animasyonu tetikleyen sohbet kelimesi. |
LocalScript
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SocialInteractions = require(ReplicatedStorage.SocialInteractions)
SocialInteractions.onChatAnimationPlayed:Connect(function(animationId, triggerWord)
print(animationId, triggerWord)
end)