Mode Selfie

*Ce contenu est traduit en utilisant l'IA (Beta) et peut contenir des erreurs. Pour consulter cette page en anglais, clique ici.

Les joueurs prennent déjà des captures d'écran pour commémorer des moments amusants dans les expériences. Le module SelfieMode développeur permet aux joueurs de capturer un souvenir plus propre de ce moment sans la fenêtre de chat ou la liste des joueurs, tout en prenant en charge des effets de filtre, la dissimulation d'autres personnages et des poses.

Utilisation du module

Installation

Pour utiliser le module SelfieMode dans une expérience :

  1. Depuis le menu Fenêtre de Studio ou la barre d'outils de l'onglet Accueil, ouvrez le Toolbox et sélectionnez l'onglet Boutique du Créateur.

  2. Assurez-vous que le tri par Modèles est sélectionné, puis cliquez sur le bouton Voir Tout pour Catégories.

  3. Localisez et cliquez sur le carrefour Packages.

  4. Trouvez le module Mode Selfie et cliquez dessus, ou faites-le glisser dans la vue 3D.

  5. Dans la fenêtre Explorateur, déplacez l'ensemble du package SelfieMode dans ReplicatedStorage. Lors de l'exécution de l'expérience, le module commencera à fonctionner.

Configuration

Le module est préconfiguré pour fonctionner dans la plupart des cas d'utilisation, mais vous pouvez facilement le personnaliser via la fonction configure.

  1. Dans StarterPlayerScripts, créez un nouveau LocalScript et renommez-le en ConfigureSelfieMode.

  2. Collez le code suivant dans le nouveau script.

    LocalScript - ConfigureSelfieMode

    local ReplicatedStorage = game:GetService("ReplicatedStorage")
    local SelfieMode = require(ReplicatedStorage.SelfieMode)
    SelfieMode.configure({
    disableCharacterMovement = true
    })

Mouvement du personnage

Il peut être avantageux d'empêcher le personnage du joueur de se déplacer pendant le mode selfie. Vous pouvez y parvenir en définissant disableCharacterMovement sur true dans un appel à configure.

LocalScript - ConfigureSelfieMode

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
SelfieMode.configure({
disableCharacterMovement = true
})

Actions du mode selfie

SelfieMode est livré avec les actions suivantes, que vous pouvez utiliser avec les fonctions activateAction, deactivateAction et toggleAction, ou détecter via les événements actionActivated et actionDeactivated.

Profondeur de champ

Par défaut, SelfieMode montre un effet générique de profondeur de champ (flou subtil de l'arrière-plan) lorsqu'un joueur active l'action.

Pour changer l'effet de profondeur de champ par défaut, définissez depthOfFieldEffect sur votre propre instance DepthOfFieldEffect dans un appel à configure.

LocalScript - ConfigureSelfieMode

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
local customDepthOfField = Instance.new("DepthOfFieldEffect")
customDepthOfField.NearIntensity = 0
customDepthOfField.FarIntensity = 1
customDepthOfField.FocusDistance = 5
customDepthOfField.InFocusRadius = 5
SelfieMode.configure({
depthOfFieldEffect = customDepthOfField
})

Verrouiller le regard

Le basculement Verrouiller le regard fait que le personnage du joueur regarde la caméra tout en se préparant à la pose selfie, dans une plage réaliste de la façon dont leur cou peut tourner.

Masquer les autres

Par défaut, d'autres personnages sont visibles aux côtés du personnage du joueur. Les joueurs peuvent obtenir une prise de vue parfaite en solo 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 désactivée.

Filtre

L'action Filtre permet au joueur d'appliquer un filtre prédéfini parmi les options Pop, Douce, Antique, Mignon, Dramatique, et Monochrome.

Pose

L'action Pose permet au joueur de sélectionner une pose prédéfinie parmi les options Applaudir, Clapping, Dauphin, Flossing, Guitare, Vague de saut, Plus fort, Top Rock, Twirl, et Vague.

Référence API

Types

Action

Chaque action est représentée par un dictionnaire avec les paires clé-valeur suivantes :

CléTypeDescription
namestringNom de l'action, montré en premier dans les infobulles.
descriptionstringDescription de l'action, montrée après name dans les infobulles.
iconstringID de l'actif pour l'icône de l'action.
activeIconstringID de l'actif pour l'icône de l'action en état "actif". Ne peut être utilisé que sur des actions parentes, pas sur des sous-actions.
actionstableListe optionnelle de sous-actions. Cela vous permet de créer des sous-menus d'autres actions variées.
parentActionLe parent de l'action ; cela ne s'applique qu'à une sous-action et pointe vers l'action qui la contient.
onActivatedfunctionFonction de rappel optionnelle qui s'exécute lorsqu'un joueur active une action ou une sous-action. En général, si une action contient des sous-actions, seules les sous-actions devront avoir une fonction de rappel définie en tant que moyen de savoir que le joueur a activé la sous-action et n'a pas simplement "étendu" l'action parente.
LocalScript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
SelfieMode.actionActivated:Connect(function(action)
print(action.name, "activé")
end)
SelfieMode.actionDeactivated:Connect(function(action)
print(action.name, "désactivé")
end)

Enums

SelfieMode.Action

SelfieMode est livré avec plusieurs actions. Vous pouvez utiliser cet enum avec les fonctions activateAction, deactivateAction, et toggleAction.

NomRésumé
DepthOfFieldRéférence à l'action Profondeur de champ.
LockGazeRéférence à l'action Verrouiller le regard.
HideOthersRéférence à l'action Masquer les autres.
FilterRéférence à l'action Filtre.
PoseRéférence à l'action Pose.
LocalScript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
-- Activer l'action "Filtre"
SelfieMode.activateAction(SelfieMode.Action.Filter)

Fonctions

configure

configure(config: table)

Écrase les options de configuration par défaut via les clés/valeurs suivantes dans la table config. Cette fonction ne peut être appelée que depuis un LocalScript.

CléDescriptionPar défaut
disableCharacterMovementSi vrai, empêche le personnage de se déplacer pendant que le mode selfie est ouvert.false
depthOfFieldEffectInstance optionnelle personnalisée DepthOfFieldEffect qui apparait lorsque le joueur active l'action Profondeur de Champ.
LocalScript - ConfigureSelfieMode

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
SelfieMode.configure({
disableCharacterMovement = true
})

openSelfieMode

openSelfieMode()

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 de l'ouvrir par code. Lors de la mise en place d'un bouton personnalisé comme montré ci-dessous, vous devriez désactiver le bouton par défaut via setHudButtonEnabled. Cette fonction ne peut être appelée que depuis un LocalScript.

LocalScript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
local button = script.Parent
-- Supprimer le bouton par défaut
SelfieMode.setHudButtonEnabled(false)
-- Connecter le bouton personnalisé
button.Activated:Connect(function()
SelfieMode.openSelfieMode()
end)

closeSelfieMode

closeSelfieMode()

Un joueur fermera généralement le mode selfie avec le bouton au bas de l'écran, mais cette fonction vous permet de le fermer par code. Ne peut être appelé que depuis un LocalScript.

LocalScript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
SelfieMode.closeSelfieMode()

isSelfieModeOpen

isSelfieModeOpen(): boolean

Retourne true si le mode selfie est ouvert en raison de l'action du joueur ou via openSelfieMode. Cette fonction ne peut être appelée que depuis un LocalScript.

LocalScript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
SelfieMode.openSelfieMode()
print(SelfieMode.isSelfieModeOpen())

setHudButtonEnabled

setHudButtonEnabled()

Définit si le bouton par défaut pour entrer en mode selfie est affiché. Utile lors de la mise en œuvre de openSelfieMode via un bouton UI personnalisé. Cette fonction peut seulement être appelée depuis un LocalScript.

LocalScript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
local button = script.Parent
-- Supprimer le bouton par défaut
SelfieMode.setHudButtonEnabled(false)
-- Connecter le bouton personnalisé
button.Activated:Connect(function()
SelfieMode.openSelfieMode()
end)

getAction

getAction(action: SelfieMode.Action): Action

Obtient un type Action via un enum SelfieMode.Action.

LocalScript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
local lockGazeAction = SelfieMode.getAction(SelfieMode.Action.LockGaze)

activateAction

activateAction(action: SelfieMode.Action)

Active programmatique l'une des actions par défaut. C'est la même chose que lorsque le joueur active l'action sur la barre d'action. Ne peut être appelé que depuis un LocalScript.

LocalScript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
-- Activer l'action "Filtre"
SelfieMode.activateAction(SelfieMode.Action.Filter)

deactivateAction

deactivateAction(action: SelfieMode.Action)

Désactive programmatique l'une des actions par défaut. C'est la même chose que lorsque le joueur désactive l'action sur la barre d'action. Ne peut être appelé que depuis un LocalScript.

LocalScript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
-- Désactiver l'action "Filtre"
SelfieMode.deactivateAction(SelfieMode.Action.Filter)

toggleAction

toggleAction(action: SelfieMode.Action): boolean

Bascule une action sur si elle est désactivée, ou la désactive si elle est active. C'est la même chose que lorsque le joueur clique sur l'action de la barre d'action. Retourne le nouvel état "est activé" comme un booléen. Ne peut être appelé que depuis un LocalScript.

LocalScript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
local lockGazeAction = SelfieMode.getAction(SelfieMode.Action.LockGaze)
local isEnabled = SelfieMode.toggleAction(lockGazeAction)
if isEnabled then
print("Activé", lockGazeAction.name)
else
print("Désactivé", lockGazeAction.name)
end

setTheme

setTheme(theme: table)

Configure le thème du mode selfie, y compris la taille du texte, la police, les couleurs des boutons/des infobulles, et plus encore. Cette fonction ne peut être appelée que depuis un LocalScript.

CléDescriptionPar défaut
textSizeTaille de tout le texte.16
fontPolice utilisée dans toute l'UI (Enum.Font).GothamMedium
paddingRembourrage principal utilisé pour disposer les éléments de l'UI (UDim).(0, 12)
paddingSmallRembourrage plus petit utilisé pour appliquer des marges subtiles entre les éléments (UDim).(0, 6)
paddingScreenRembourrage utilisé autour des bords de l'écran pour donner un peu d'espace au mode selfie (UDim).(0, 24)
backgroundColorCouleur de fond utilisée pour la barre qui affiche les actions (Color3).[0, 0, 0]
scrollBarColorCouleur de la barre de défilement utilisée dans les éléments ScrollingFrame du module (Color3).[255, 255, 255]
LocalScript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
SelfieMode.setTheme({
textSize = 20,
font = Enum.Font.Michroma,
backgroundColor = Color3.fromRGB(0, 40, 75),
})

setEnabled

setEnabled(isEnabled: boolean)

Définit si le mode selfie est activé ou non. Lorsqu'il est désactivé, toute l'UI du module est supprimée et tous les événements sont déconnectés. Cette fonction ne peut être appelée que depuis un LocalScript.

LocalScript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
SelfieMode.setEnabled(false)

Événements

selfieModeOpened

Se déclenche lorsque le joueur ouvre le mode selfie ou lorsque openSelfieMode est appelé. Cet événement ne peut être connecté que dans un LocalScript.

LocalScript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
SelfieMode.selfieModeOpened:Connect(function()
print("Mode selfie ouvert")
end)

selfieModeClosed

Se déclenche lorsque le joueur ferme le mode selfie ou lorsque closeSelfieMode est appelé. Cet événement ne peut être connecté que dans un LocalScript.

LocalScript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
SelfieMode.selfieModeClosed:Connect(function()
print("Mode selfie fermé")
end)

actionActivated

Paramètres
action: SelfieMode.ActionL'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, cela peut être une sous-action comme un filtre ou une pose. La fonction connectée reçoit l'Action activée. Cet événement ne peut être connecté que dans un LocalScript.

LocalScript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
SelfieMode.actionActivated:Connect(function(action)
print(action.name, "activé")
end)

actionDeactivated

Paramètres
action: SelfieMode.ActionL'Action désactivée.

Se déclenche lorsqu'une action principale ou sous-action est désactivée. La fonction connectée reçoit l'Action désactivée. Cet événement ne peut être connecté que dans un LocalScript.

LocalScript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
SelfieMode.actionDeactivated:Connect(function(action)
print(action.name, "désactivé")
end)

filterChanged

Paramètres
newFilter: stringLe nouveau filtre.
oldFilter: stringLe filtre précédent.

Se déclenche lorsqu'un filtre est appliqué ou retiré. La fonction connectée reçoit le nom du nouveau filtre et le nom de l'ancien filtre. Cet événement ne peut être connecté que dans un LocalScript.

LocalScript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
SelfieMode.filterChanged:Connect(function(newFilter, oldFilter)
print("Filtre changé de", oldFilter, "à", newFilter)
end)

poseChanged

Paramètres
newPose: stringLa nouvelle pose.
oldPose: stringLa pose précédente.

Se déclenche lorsqu'une pose est appliquée ou retirée. La fonction connectée reçoit le nom de la nouvelle pose et le nom de l'ancienne pose. Cet événement ne peut être connecté que dans un LocalScript.

LocalScript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
SelfieMode.poseChanged:Connect(function(newPose, oldPose)
print("Pose changée de", oldPose, "à", newPose)
end)
©2026 Société Roblox. Roblox, le logo Roblox et Powering Imagination font partie de nos marques déposées aux États-Unis et dans d'autres pays.