Les joueurs prennent déjà des captures d'écran pour commémorer des moments amusants dans les expériences. Le mode selfie module développeur laisse les joueurs capturer une mémoire plus propre de ce moment sans la fenêtre de chat ou la liste des joueurs, tout en soutenant des effets de filtre, de masquage et de positionnement.
Utilisation des modules
Installation
Pour utiliser le module SelfieMode dans une expérience :
À partir de l'Affichage onglet, ouvrez la boîte à outils et sélectionnez l' boutique des créateurs onglet.
Assurez-vous que le tri par Modèles est sélectionné, puis cliquez sur le bouton Voir tout pour Catégories.
Localisez et cliquez sur la case modules de pavé .
Localisez le module Mode selfie et cliquez dessus, ou glissez-déposez-le dans la voir3D.
Dans la fenêtre Explorateur, déplacez le modèle entier Mode selfie dans ServerScriptService . Lors de l'exécution de l'expérience, le module se distribuera à différents services et commencera à fonctionner.
Configuration
Le module est configuré pour fonctionner pour la plupart des cas d'utilisation, mais vous pouvez le personnaliser facilement via la fonction configurer.
Dans StarterPlayerScripts , créez un nouveau LocalScript et renommez-le en ConfigureSelfieMode .
Collez le code suivant dans le nouveau script.
LocalScript - Configurer le mode selfielocal ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))SelfieMode.configure({disableCharacterMovement = true})
Mouvement du personnage
Il peut être avantageux de empêcher le personnage du joueur de se déplacer pendant le selfie mode. Vous pouvez atteindre cela en configurant disableCharacterMovement pour vrai dans un configure appel.
LocalScript - Configurer le mode selfie
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))SelfieMode.configure({disableCharacterMovement = true})
Actions de selfie
SelfieMode vient avec les actions suivantes actions , chacune d'entre elles que vous pouvez utiliser avec le activerAction , 0> désactiverAction 0> et 3> activerToggleAction 3> fonctions, ou détectez par le biais des événements 6> actionActivated6> et 9> actionDeactivated 9>.
Profondeur de champ
Par défaut, SelfieMode montre un effet de profondeur de champ générique (effet de flou subtil du fond) lorsqu'un joueur bascule l'action.
Pour modifier l'effet de champ de profondeur par défaut, définissez depthOfFieldEffect à votre propre instance DepthOfFieldEffect dans un appel configure.
LocalScript - Configurer le mode 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})
Verrouiller le regard
La verrouillage de la vue bascule cause le personnage du joueur à regarder la caméra pendant l'installation de la position de selfie, dans une portée réaliste de la façon dont leur cou peut tourner.
Masquer les autres
Par défaut, d'autres personnages sont visibles à côté du personnage du joueur. Les joueurs peuvent obtenir un tir en solo parfait en cliquant sur le bouton Masquer les autres . Lorsqu'il est activé, d'autres personnages s'estompent et restent invisibles jusqu'à ce que l'action soit off.
Filtrer
L'action Filtre permet au joueur d'appliquer un filtre préréglé à partir des options Pop, Soft, 2> Antique 2>, 5> Cute 5>, 8> Dramatic8>, et 1> Monochrome 1>.
Pose
L'action Pose permet au joueur de sélectionner une posture prédéfinie dans les options Cheer, Clapping, 2> Dolphin2>, 5> Flossing5>, 8> Guitar8>, 1> Jump
Référence de l'API
Types
Action
Chaque action est représentée par un dictionnaire avec les paires de clés suivantes :
Clé | Type | Description |
---|---|---|
name | chaîne | Nom de l'action, affiché d'abord dans les outils. |
description | chaîne | Description de l'action, affichée après le nom dans les outils d'aide au nom dans les outils d'aide au nom. |
icon | chaîne | ID de ressource pour l'icône de l'action. |
activeIcon | chaîne | ID de ressource pour l'icône de l'action dans l'état « active ». Ne peut être utilisé que sur les actions parentes, pas sur les actions enfants. |
actions | table | Liste optionnelle de sous-actions. Cela vous permet de créer des sous-menus de différentes autres actions. |
parent | Actionnez | Le parent de l'action ; ceci ne s'applique qu'à une sous-action et pointe vers l'action qui la contient. |
onActivated | fonction | Fonction d'appel facultative qui s'exécute lorsqu'un joueur active une action ou une sous-action. Habituellement, si une action contient des sous-actions, seuls les sous-actions auront besoin d'un rappel défini comme un moyen de savoir que le joueur a activé la sous-action et n'a pas simplement "expandi" l'action parent. |
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)
Enums
SelfieMode.Action
SelfieMode vient avec plusieurs actions. Vous pouvez utiliser cet ensemble avec les fonctions activer l'action, 0> désactiver l'action0> et 3> activer/désactiver la mise à l'échelle de l'action 3>.
Nom | Résumé |
---|---|
DepthOfField | Référence à l'action profondeur de champ. |
LockGaze | Référence à l'action Verrouiller le regard. |
HideOthers | Référence à l'action Masquer les autres. |
Filter | Référence à l'action Filtre. |
Pose | Référence à l'action Posez. |
Script local
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))-- Activer l'action « Filtre »SelfieMode.activateAction(SelfieMode.Action.Filter)
Fonctions
configurer
Les options de configuration par défaut sont remplacées par les valeurs suivantes dans la table config. Cette fonction ne peut être appelée que depuis un LocalScript.
Clé | Description | Par défaut |
---|---|---|
disableCharacterMovement | Si oui, empêche le personnage de se déplacer pendant que le mode selfie est ouvert. | faux |
depthOfFieldEffect | Instance DepthOfFieldEffect personnalisée facultative qui apparaît lorsque le joueur bascule l'action profondeur de champ. |
LocalScript - Configurer le mode selfie
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))SelfieMode.configure({disableCharacterMovement = true})
ouvrir le mode selfie
Un joueur ouvrira généralement le mode selfie avec le bouton «caméra» sur le côté droit de l'écran, mais cette fonction vous permet d'ouvrir le via le code. Lors de l'implémentation d'un bouton personnalisé comme indiqué ci-dessous, vous devez désactiver le bouton par défaut via setHudButtonEnabled. Cette fonction ne peut être appelée que depuis un LocalScript .
Script local
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))
local button = script.Parent
-- Supprimer le bouton par défaut
SelfieMode.setHudButtonEnabled(false)
-- Connectez le bouton personnalisé
button.Activated:Connect(function()
SelfieMode.openSelfieMode()
end)
fermerSelfieMode
Un joueur ferme généralement le mode selfie avec le bouton ⊗ en bas de l'écran, mais cette fonction vous permet de le fermer via le code. Ne peut être appelé que depuis un LocalScript .
Script local
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))SelfieMode.closeSelfieMode()
est-ce que SelfieModeOpen
Renvoie true si le mode selfie est ouvert en tant que résultat de l'action du joueur ou via ouvrir le mode selfie. Cette fonction ne peut être appelée que depuis un LocalScript.
Script local
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))SelfieMode.openSelfieMode()print(SelfieMode.isSelfieModeOpen())
setHudButtonEnabled
Définit si le bouton par défaut pour entrer en mode selfie est affiché. Utile lors de l'implémentation de ouvrirSelfieMode via un bouton d'interface personnalisée. Cette fonction ne peut être appelée que depuis un LocalScript.
Script local
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))
local button = script.Parent
-- Supprimer le bouton par défaut
SelfieMode.setHudButtonEnabled(false)
-- Connectez le bouton personnalisé
button.Activated:Connect(function()
SelfieMode.openSelfieMode()
end)
obtenirAction
Obtient un type d'action à travers un SelfieMode.Action ensemble.
Script local
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))local lockGazeAction = SelfieMode.getAction(SelfieMode.Action.LockGaze)
activerAction
Activer programmiquement l'une des actions par défaut Actions . Ce est la même chose que lorsqu'un joueur active l'action à partir de la barre d'action. Ne peut être appelé que depuis un LocalScript .
Script local
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))-- Activer l'action « Filtre »SelfieMode.activateAction(SelfieMode.Action.Filter)
Désactiver action
Programmez de manière générale la désactivation de l'une des actions par défaut. Ceci est le même que lorsqu'un joueur active l'action à partir de la barre d'action. Ne peut être appelé que depuis un Class.LocalScript .
Script local
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))-- Désactiver l'action « Filtre »SelfieMode.deactivateAction(SelfieMode.Action.Filter)
ToggleAction
Bascule une action sur si elle est off, ou la désactive si elle est activée. Ceci est le même que lorsqu'un joueur clique sur l'action à partir de la barre d'action. Retourne l'état de «isToggleOn» comme un boîtier. Ne peut être appelé que depuis un Class.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
setThème
Configure le thème du mode selfie, y compris la taille du texte, la police, les couleurs des boutons/de l'aide au clic et plus encore. Cette fonction ne peut être appelée que depuis un LocalScript.
Clé | Description | Par défaut |
---|---|---|
textSize | Taille de tout le texte. | 16 |
font | Police utilisée dans l'ensemble de l'interface utilisateur ( Enum.Font ). | GothamMedium |
padding | Polissage principal utilisé pour définir les éléments de l'interface utilisateur ( UDim ). | (0, 12) |
paddingSmall | Moins de pad utilisé pour appliquer des marges subtiles entre les éléments ( UDim ). | (0, 6) |
paddingScreen | Polissage utilisé autour des bords de l'écran pour donner au mode selfie un peu d'espace de respiration ( UDim ). | (0, 24) |
backgroundColor | Couleur de l'arrière-plan utilisée pour la barre qui affiche les actions ( Color3 ). | [0, 0, 0] |
scrollBarColor | Couleur de la barre de défilement utilisée dans ScrollingFrame éléments du module ( 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),})
setEnabled
Définit si le mode selfie est activé ou non. Lorsqu'il est désactivé, toute l'interface utilisateur pour le module est supprimée et tous les événements sont désconnectés. Cette fonction ne peut être appelée qu'à partir d'un LocalScript .
Script local
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))SelfieMode.setEnabled(false)
Événements
selfieModeOuvert
Se déclenche lorsque le joueur ouvre le mode selfie ou lorsque ouvrir le mode selfie est appelé. Cet événement ne peut être connecté qu'à un LocalScript .
Script local
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))
SelfieMode.selfieModeOpened:Connect(function()
print("Selfie mode open")
end)
selfieModeClosed
Se déclenche lorsque le joueur ferme le mode selfie ou lorsque ferme le mode selfie est appelé. Cet événement ne peut être connecté qu'à un LocalScript .
Script local
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))
SelfieMode.selfieModeClosed:Connect(function()
print("Selfie mode closed")
end)
actionActivée
Paramètres | |
---|---|
action : SelfieMode.Action | La action activée. |
Se déclenche lorsqu'une action est activée ; cela peut être l'une des actions principales comme profondeur de champ , verrouiller le regard ou masquer les autres ; alternativement, il peut s'agir d'une sous-action comme un 1> filtre1> ou 4> pose4> . La
Script local
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))
SelfieMode.actionActivated:Connect(function(action)
print(action.name, "activated")
end)
actionDésactivé
Paramètres | |
---|---|
action : SelfieMode.Action | La désactivé Action . |
Se déclenche lorsqu'une action principale ou secondaire est désactivée. La fonction connectée reçoit la action désactivée. Cet événement ne peut être connecté qu'à un LocalScript .
Script local
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))
SelfieMode.actionDeactivated:Connect(function(action)
print(action.name, "deactivated")
end)
filtreModifier
Se déclenche lorsqu'un filtre est appliqué ou supprimé. La fonction connectée reçoit le nouveau nom de filtre et le nom de filtre actuel. Cet événement ne peut être connecté qu'à 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)
poseModifier
Se déclenche lorsqu'une pose dePOSE est appliquée ou retirée. La fonction connectée reçoit le nouveau nom de la pose et le nom de la pose ancienne. Cet événement ne peut être connecté qu'à 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)