Tu avatar es tu identidad en cualquier espacio en el que entres. El módulo de desarrolladores SocialInteractions permite a cada usuario expresarse mejor a sí mismo con movimientos naturales, añadiendo un toque de realismo a la experiencia.
Este módulo incluye las siguientes características:
Orientación del cuerpo | Hace que la cabeza del avatar de cada uno mire hacia donde apunta la cámara del usuario correspondiente, mediante una mezcla de rotación del cuello y la cintura. Esto proporciona una pista sutil de con quién o con qué está interactuando otra persona. |
Animaciones de chat | Añade algo de vivacidad al chat de la experiencia haciendo que los avatares reproduzcan animaciones ocasionalmente, en función del contenido de los mensajes que envíen. La lista de "palabras desencadenantes" que activan cada animación es configurable. |
Uso del módulo
Instalación
Sigue estos pasos para usar el módulo SocialInteractions en una experiencia:
En la pestaña Ver, abre la Caja de herramientas y selecciona la pestaña Mercado.
Asegúrate de que la clasificación de Modelos esté seleccionada y, a continuación, haz clic en el botón Ver todo para las Categorías.
Busca y haz clic en el mosaico MÓDULOS DE DESARROLLADORES.
Busca el módulo Interacciones sociales y haz clic en él o arrástralo y suéltalo en la vista 3D.
En la ventana del Explorador, mueve todo el modelo de SocialInteractions a ServerScriptService. Al ejecutar la experiencia, el módulo se distribuirá a varios servicios y comenzará a ejecutarse.
Configuración
Simplemente insertando el módulo SocialInteractions habilitará tanto la orientación del cuerpo como las funciones de animaciones de chat dentro de tu lugar. Sigue estos pasos para ajustar el comportamiento predeterminado:
En StarterPlayerScripts, crea un nuevo LocalScript y cámbiale el nombre a ConfigureSocialInteractions.
Pega el siguiente código en el script nuevo y usa la función de configuración para personalizar el comportamiento del módulo.
LocalScriptlocal ReplicatedStorage = game: GetService("ReplicatedStorage")local SocialInteractions = require(ReplicatedStorage:WaitForChild("SocialInteractions"))-- Make waist rotation more pronounced and disable the chat animations featureSocialInteractions.configure({waistOrientationWeight = 0.75,useChatAnimations = false,})
Animación del chat Palabras de activación
La lista de "palabras de activación" que activan cada animación del chat es configurable y los patrones de cadena de Lua se utilizan para aumentar las palabras reconocibles. Por ejemplo, una combinación utilizada por la animación Ola es he+y+o*, lo que significa que hey, heyyy, heyo, heyyyyo, heeeeyyyyo y otras variaciones cumplen los requisitos para activar la animación.
Tenga en cuenta también que las palabras de activación no distinguen entre mayúsculas y minúsculas, por lo que escribir hey es lo mismo que HEY, Hey y otras variaciones.
Animación | Identificación de animación | Patrones de palabra |
---|---|---|
Saludar | 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+ |
Aplaudir | 5911729486 | ya+y+ h[ou]+r+a+y+ woo+t* woo+h+oo+ bravo+ congratulations+ congrats+ gg pog+ poggers+ |
De acuerdo | 4841397952 | ye+s* ye+a+h* y[eu]+p+ o+k+ o+k+a+y+ |
En desacuerdo | 4841401869 | no+ no+pe+ yi+ke+s+ |
Encogerse de hombros | 3334392772 | not+%s+sure+ idk+ don't%s+know+ i%s+don't%s+know+ who+%s+knows+ |
Risa | 3337966527 | lo+l+ rof+l+ ha[ha]* he[he]+ |
Sueño | 4686925579 | zzz+ yawn+ |
La lista de palabras de activación que activan cada animación es configurable, y se pueden añadir animaciones adicionales mediante la función setTriggerWordsForChatAnimation. Por ejemplo, el siguiente LocalScript vincula la animación Inclinar con el patrón de cadena de cra+zy para admitir palabras de activación como crazy y craaaaaazy. También registra un patrón de cadena adicional de coo+l para que la animación Aplaudir admita palabras como cool y coooool.
LocalScript
local ReplicatedStorage = game: GetService("ReplicatedStorage")local SocialInteractions = require(ReplicatedStorage:WaitForChild("SocialInteractions"))-- Register string pattern for the "Tilt" animationSocialInteractions.setTriggerWordsForChatAnimation("rbxassetid://3334538554", {"cra+zy"})-- Register additional string pattern for the "Applaud" animationSocialInteractions.setTriggerWordsForChatAnimation("rbxassetid://5911729486", {"coo+l"})
Referencia API
Funciones
configure
configure(config:table):nil
Reemplaza las opciones de configuración predeterminadas a través de las siguientes claves o valores en la tabla config. A esta función solo se puede acceder desde un LocalScript.
Clave | Descripción | Predeterminado |
---|---|---|
useBodyOrientation | Activa la función orientación del cuerpo. | true |
waistOrientationWeight | La orientación del cuerpo usa una mezcla de rotación de la cintura y el cuello; este parámetro determina cuál de las dos prevalece. Un valor de 1 pone énfasis completo en la cintura, mientras que 0 pone énfasis completo en el cuello. | 0.5 |
useChatAnimations | Activa la función animaciones de chat. | true |
useDefaultTriggerWordsForChatEmotes | Las animaciones de chat vienen con una lista predeterminada de palabras de activación. Establece este parámetro en false si deseas desactivarlas y proporcionar las tuyas. | true |
LocalScript
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SocialInteractions = require(ReplicatedStorage:WaitForChild("SocialInteractions"))-- Hacer más pronunciada la rotación de la cintura y desactivar la función de animaciones del chatSocialInteractions.configure({waistOrientationWeight = 0.75,useChatAnimations = false,})
setTriggerWordsForChatAnimation
setTriggerWordsForChatAnimation(animationId:string, triggerWords:table):nil
Registra una animación nueva en la función de animación de chat. Al escribir cualquier palabra que coincida con un patrón de cadena incluido en la tabla triggerWords se activará la animación cuya identificación se pasa como primer parámetro.
Ten en cuenta que las palabras de activación no distinguen mayúsculas de minúsculas para los jugadores, por lo que un patrón de woah aceptará frases de chat de woah, WOAH, Woah y otras variaciones.
LocalScript
local ReplicatedStorage = game: GetService("ReplicatedStorage")local SocialInteractions = require(ReplicatedStorage:WaitForChild("SocialInteractions"))-- Register new string pattern for a custom animationSocialInteractions.setTriggerWordsForChatAnimation("rbxassetid://3334538554",{"cra+zy", "woah+"})
Eventos
onChatAnimationPlayed
onChatAnimationPlayed(animationId:string, triggerWord:string): RBXScriptSignal
Se activa cuando se reproduce una animación. La función conectada recibe como argumentos la identificación de la animación y la palabra que activó la animación. Este evento solo se puede conectar en un LocalScript.
Parámetros | |
---|---|
animationId: string | Identificación de animación que reprodujo. |
triggerWord: string | Palabra de chat que activó la animación. |
LocalScript
local ReplicatedStorage = game: GetService("ReplicatedStorage")
local SocialInteractions = require(ReplicatedStorage:WaitForChild("SocialInteractions"))
SocialInteractions.onChatAnimationPlayed:Connect(function(animationId, triggerWord)
print(animationId, triggerWord)
end)