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 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 :

  1. À partir de l'Affichage onglet, ouvrez la boîte à outils et sélectionnez l' boutique des créateurs onglet.

    Toolbox toggle button in Studio
  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 la case modules de pavé .

  4. Localisez le module Mode selfie et cliquez dessus, ou glissez-déposez-le dans la voir3D.

  5. 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.

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

  2. Collez le code suivant dans le nouveau script.

    LocalScript - Configurer le mode selfie

    local 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 = 0
customDepthOfField.FarIntensity = 1
customDepthOfField.FocusDistance = 5
customDepthOfField.InFocusRadius = 5
SelfieMode.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éTypeDescription
namechaîneNom de l'action, affiché d'abord dans les outils.
descriptionchaîneDescription de l'action, affichée après le nom dans les outils d'aide au nom dans les outils d'aide au nom.
iconchaîneID de ressource pour l'icône de l'action.
activeIconchaîneID 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.
actionstableListe optionnelle de sous-actions. Cela vous permet de créer des sous-menus de différentes autres actions.
parentActionnezLe parent de l'action ; ceci ne s'applique qu'à une sous-action et pointe vers l'action qui la contient.
onActivatedfonctionFonction 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>.

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 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

configurer(config: Library.table)

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éDescriptionPar défaut
disableCharacterMovementSi oui, empêche le personnage de se déplacer pendant que le mode selfie est ouvert.faux
depthOfFieldEffectInstance 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

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

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

estSelfieModeOpen() : boolean

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

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

getAction(action: SelfieMode.Action>: Action

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

activeAction(action: Mode selfie.Action )

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

deactivateAction(action: Mode selfie.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

ToggleAction(action : SelfieMode.Action ): boolean

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 then
print("Activated", lockGazeAction.name)
else
print("Deactivated", lockGazeAction.name)
end

setThème

setTheme(theme: Library.table)

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éDescriptionPar défaut
textSizeTaille de tout le texte.16
fontPolice utilisée dans l'ensemble de l'interface utilisateur ( Enum.Font ).GothamMedium
paddingPolissage principal utilisé pour définir les éléments de l'interface utilisateur ( UDim ).(0, 12)
paddingSmallMoins de pad utilisé pour appliquer des marges subtiles entre les éléments ( UDim ).(0, 6)
paddingScreenPolissage utilisé autour des bords de l'écran pour donner au mode selfie un peu d'espace de respiration ( UDim ).(0, 24)
backgroundColorCouleur de l'arrière-plan utilisée pour la barre qui affiche les actions ( Color3 ).[0, 0, 0]
scrollBarColorCouleur 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

setEnabled(isEnabled : boolean )

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.ActionLa 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.ActionLa 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

Paramètres
nouveauFilter: stringLe nouveau filtres.
ancien filtre : stringLe filtresprécédent.

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

Paramètres
nouvellePose : stringLa nouvelle posture.
anciennePose : stringLa posture précédente.

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)