Los jugadores ya toman capturas de pantalla para celebrar momentos divertidos en las experiencias. El Modo de selfie módulo de desarrollador deja que los jugadores capturen una memoria más limpia de ese momento sin la ventana de chat o la lista de jugadores, mientras que también se pueden ocultar los efectos de filtro, el ocultar de otros personajes y la posición.
Uso de módulos
Instalación
Para usar el módulo Modo selfie en una experiencia:
De la pestaña Ver, abra la Caja de herramientas y seleccione la pestaña Tienda del Creador .
Asegúrese de que se seleccione el Modelos clasificación y luego haga clic en el botón Ver Todo para Categorías .
Ubique y haga clic en el mosaico de Modulos de Dev .
Ubique el módulo Modo selfie y haga clic en él, o arrástralo y suéltalo en la vista 3D.
En la ventana Explorer, mueva el modelo entero de Modo Aparece-y-desaparece a ServerScriptService . Al ejecutar la experiencia, el módulo se distribuirá a varios servicios y comenzará a funcionar.
Configuración
El módulo está predefinido para trabajar en la mayoría de los casos de uso, pero puede personalizarlos fácilmente a través de la función CONFIGURAR.
En StarterPlayerScripts , crea un nuevo LocalScript y renombralo a ConfigurarModo Selfie .
Pega el siguiente código en el nuevo script.
LocalScript - Configurar el modo de selfielocal ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))SelfieMode.configure({disableCharacterMovement = true})
Carácter de movimiento
Puede ser ventajoso prevenir que el personaje del jugador se mueva mientras está en modo selfie. Puede lograr esto estableciendo disableCharacterMovement para que sea verdadero en una llamada Configurar.
LocalScript - Configurar el modo de selfie
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))SelfieMode.configure({disableCharacterMovement = true})
Acciones de Selfie
SelfieMode viene con las siguientes acciones , cada una de las cuales puedes usar con la activarAcción , 0> desactivarAcción 0> y 3> alternarAcción 3> funciones, o detectar a través de los eventos 6> acciónActivado 6> y 9> acciónDesactivado 9>, o detectar a través de los eventos 0> acciónActivada
Campo de profundidad
Por defecto, Modo selfie muestra un efecto de campo de profundidad genérico (efusión de fondo) cuando un jugador alterna la acción.
Para cambiar el efecto de campo de profundidad predeterminado, establece depthOfFieldEffect en tu propia instancia de DepthOfFieldEffect en una llamada de Configurar.
LocalScript - Configurar el modo de selfie
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))local customDepthOfField = Instance.new("DepthOfFieldEffect")customDepthOfField.NearIntensity = 0customDepthOfField.FarIntensity = 1customDepthOfField.FocusDistance = 5customDepthOfField.InFocusRadius = 5SelfieMode.configure({depthOfFieldEffect = customDepthOfField})
Bloquear mirada
La Bloquear mirada alternancia hace que el personaje del jugador mire hacia la cámara mientras configura la postura de selfie, dentro de un rango realista de lo lejos que su cuello puede girar.
Ocultar a los demás
Por defecto, otros personajes están visibles junto al personaje del jugador. Los jugadores pueden obtener un tiro perfecto en solitario haciendo clic en el botón Esconder otros . Cuando se activa, otros personajes se desvanecen de la vista y se mantienen invisibles hasta que se active la acción.
Filtrar
La acción Filtro le permite al jugador aplicar un filtro predeterminado desde las opciones Pop , Suave , 1> Antiguo 1> , 4> Cute 4> , 7> Dramatic7> y 0> Monochrome 0> .
Postura
La acción Pose le permite al jugador seleccionar una postura predeterminada de las opciones Cheer, Clapping, 2> Dolphin2>, 5> Flossing5>, 8> Guitarra8>, <
Referencia de API
Tipos
Acción
Cada acción se representa por un diccionario con los siguientes pares de clave-valor:
Clave | Tipo | Descripción |
---|---|---|
name | cadena | Nombre de la acción, mostrado primero en las herramientas. |
description | cadena | Descripción de la acción, mostrada después de nombre en las herramientas. |
icon | cadena | ID de activo para el íconode la acción. |
activeIcon | cadena | ID de activo para el icono del estado de la acción. Solo se puede usar en acciones de padre, no en acciones de subida. |
actions | mesa | Lista opcional de subacciones. Esto te permite crear submenús de varias otras acciones. |
parent | Acción | El padre de la acción; esto solo se aplica a una sub-acción y apunta a la acción que contiene. |
onActivated | función | Función de llamada opcional que se ejecuta cuando un jugador activa una acción o subacción. Por lo general, si una acción contiene subacción, solo las subacción necesitará un llamado definido como un medio de saber que el jugador activó la subacción y no simplemente "expuso" la acción padre. |
Script local
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))
SelfieMode.actionActivated:Connect(function(action)
print(action.name, "activated")
end)
SelfieMode.actionDeactivated:Connect(function(action)
print(action.name, "deactivated")
end)
Incrementos
Modo de selfie.Acción
SelfieMode viene con varias acciones. Puedes usar este conjunto con las funciones activar acción, desactivar acción y 0>activar/desactivar acción0>.
Nombre | Resumen |
---|---|
DepthOfField | Referencia a la acción 深度-of-field. |
LockGaze | Referencia a la acción Desviar el vistazo. |
HideOthers | Referencia a la acción Ocultar a otros. |
Filter | Referencia a la acción Filtro. |
Pose | Referencia a la acción Poseer. |
Script local
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))-- Activar acción "Filtrar"SelfieMode.activateAction(SelfieMode.Action.Filter)
Funciones
configurar
Anula las opciones de configuración predeterminadas a través de las siguientes llaves/valores en la tabla config. Esta función solo se puede llamar desde un LocalScript .
Clave | Descripción | Por defecto |
---|---|---|
disableCharacterMovement | Si es verdad, evita que el personaje se mueva mientras el modo selfie está abierto. | falso |
depthOfFieldEffect | Instancia personalizada opcional que aparece cuando el jugador alterna la acción de DepthOfFieldEffect. |
LocalScript - Configurar el modo de selfie
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))SelfieMode.configure({disableCharacterMovement = true})
Modo de selfie abierto
Un jugador generalmente abrirá el modo de selfie con el botón "cámara" en el lado derecho de la pantalla, pero esta función te permite abrirla a través del código. Cuando implementas un botón personalizado como se muestra a continuación, debes desactivar el botón por defecto a través de Class.LocalScript . Esta función solo se puede llamar desde un LocalScript .
Script local
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))
local button = script.Parent
-- Eliminar el botón predeterminado
SelfieMode.setHudButtonEnabled(false)
-- Conectar el botón personalizado
button.Activated:Connect(function()
SelfieMode.openSelfieMode()
end)
cerrarModo Selfie
Un jugador cerrará normalmente el modo de selfie con el botón ⊗ en la parte inferior de la pantalla, pero esta función te permite cerrarla a través del código. Solo se puede llamar desde un LocalScript .
Script local
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))SelfieMode.closeSelfieMode()
isSelfieModeOpen
Devuelve true si el modo de selfie está abierto como resultado de la acción del jugador o a través de abrirModoSelfie . Esta función solo se puede llamar desde un LocalScript .
Script local
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))SelfieMode.openSelfieMode()print(SelfieMode.isSelfieModeOpen())
Activar botón de HUD
Establece si el botón predeterminado para entrar en el modo de selfie se muestra. Útil cuando se implementa abrirModo de selfie a través de un botón de UI personalizado. Esta función solo se puede llamar desde un LocalScript .
Script local
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))
local button = script.Parent
-- Eliminar el botón predeterminado
SelfieMode.setHudButtonEnabled(false)
-- Conectar el botón personalizado
button.Activated:Connect(function()
SelfieMode.openSelfieMode()
end)
obtenerAcción
Obtiene un tipo de acción a través de un SelfieMode.Action枚.
Script local
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))local lockGazeAction = SelfieMode.getAction(SelfieMode.Action.LockGaze)
activoAcción
Activa programáticamente una de las acciones predeterminadas. Esto es lo mismo que cuando un jugador alterna la acción en la barra de acciones. Solo se puede llamar desde un Class.LocalScript .
Script local
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))-- Activar acción "Filtrar"SelfieMode.activateAction(SelfieMode.Action.Filter)
Desactivar acción
Programáticamente desactiva una de las acciones predeterminadas Acción . Esto es lo mismo que cuando un jugador alterna la acción desde la barra de acciones. Solo se puede llamar desde un LocalScript .
Script local
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))-- Desactivar acción "Filtro"SelfieMode.deactivateAction(SelfieMode.Action.Filter)
Alternar acción
Alterna un acción en si está desactivado, o alterna apagado si está encendido. Esto es lo mismo que cuando un jugador hace clic en el acción desde la barra de acciones. Returna el nuevo estado "isToggledOn" como un valor deBooleano. Solo se puede llamar desde un LocalScript .
Script local
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))local lockGazeAction = SelfieMode.getAction(SelfieMode.Action.LockGaze)local isEnabled = SelfieMode.toggleAction(lockGazeAction)if isEnabled thenprint("Activated", lockGazeAction.name)elseprint("Deactivated", lockGazeAction.name)end
Establecer tema
Configura el tema del modo de selfie, incluyendo el tamaño del texto, fuente, color del botón/guía y más. Esta función solo se puede llamar desde un LocalScript .
Clave | Descripción | Por defecto |
---|---|---|
textSize | Tamaño de todo el texto. | 16 |
font | Fuente usada en todo el UI ( Enum.Font ). | GothamMedium |
padding | Espacio de relleno principal usado para colocar elementos de UI ( UDim ). | (0, 12) |
paddingSmall | Espacio de aplicación más pequeño utilizado para aplicar márgenes sutiles entre elementos ( UDim ). | (0, 6) |
paddingScreen | Amortiguación utilizada alrededor de los bordes de la pantalla para darle al modo de selfie un poco de espacio para respirar ( UDim ). | (0, 24) |
backgroundColor | Color de fondo usado para la barra que muestra las acciones ( Color3 ). | [0, 0, 0] |
scrollBarColor | Color del elemento de desplazamiento de página usado en ScrollingFrame elementos del módulo ( Color3 ). | [255, 255, 255] |
Script local
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))SelfieMode.setTheme({textSize = 20,font = Enum.Font.Michroma,backgroundColor = Color3.fromRGB(0, 40, 75),})
setHabilitado
Establece si el modo de selfie está habilitado o no. Cuando está deshabilitado, toda la interfaz de usuario para el módulo se elimina y todos los eventos se desconectan. Esta función solo se puede llamar desde un LocalScript .
Script local
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))SelfieMode.setEnabled(false)
Eventos
modo de selfie abierto
Se activa cuando el jugador abre el modo de selfie o cuando se llama abrir el modo de selfie. Este evento solo se puede conectar en un LocalScript .
Script local
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))
SelfieMode.selfieModeOpened:Connect(function()
print("Selfie mode open")
end)
modo de selfie cerrado
Se activa cuando el jugador cierra el modo de selfie o cuando se llama cerrar el modo de selfie. Este evento solo se puede conectar en un LocalScript .
Script local
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))
SelfieMode.selfieModeClosed:Connect(function()
print("Selfie mode closed")
end)
acciónActivado
Parámetros | |
---|---|
acción: SelfieMode.Action | La acción activada Acción . |
Se activa cuando se activa una acción; esto puede ser una de las acciones principales como profundidad de campo, bloquear el enfoque o ocultar otros; alternativamente, puede ser una subacción como un 1> filtro1> o 4>poner4> . La función conect
Script local
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))
SelfieMode.actionActivated:Connect(function(action)
print(action.name, "activated")
end)
acciónDesactivada
Parámetros | |
---|---|
acción: SelfieMode.Action | La desactivada Acción . |
Se activa cuando se desactiva una acción o subacción primaria. La función conectada recibe la acción desactivada. Este evento solo se puede conectar en un Class.LocalScript .
Script local
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))
SelfieMode.actionDeactivated:Connect(function(action)
print(action.name, "deactivated")
end)
filtro cambiado
Se activa cuando se aplica o se elimina un filtro. La función conectada recibe el nuevo nombre de filtro y el viejo nombre de filtro. Este evento solo se puede conectar en un LocalScript .
Script local
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))
SelfieMode.filterChanged:Connect(function(newFilter, oldFilter)
print("Filter changed from", oldFilter, "to", newFilter)
end)
oseCambiado
Se activa cuando se aplica o se elimina una pose. La función conectada recibe el nuevo nombre de la posa y el nombre de la posa antigua. Este evento solo se puede conectar en un LocalScript .
Script local
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))
SelfieMode.poseChanged:Connect(function(newPose, oldPose)
print("Pose changed from", oldPose, "to", newPose)
end)