I giocatori già scattano screenshot per commemorare momenti divertenti nelle esperienze.Il modulo sviluppatore di SelfieMode letta i giocatori catturare una memoria più pulita di quel momento senza la finestra di chat o la lista dei giocatori, mentre supporta anche gli effetti filtro, nascondimento di altri personaggi e posing.
Uso del modulo
Installazione
Per utilizzare il modulo Modalità Selfie in un'esperienza:
Assicurati che la classificazione Modelli sia selezionata, quindi fai clic sul pulsante Vedi tutti per Categorie .
Individua e fai clic sul riquadro Moduli di sviluppo .
Individua il modulo Modalità selfie e cliccalo, oppure trascinalo nella vista 3D.
Nella finestra Explorer, sposta l'intero modello SelfieMode nel ServerScriptService .Dopo l'esecuzione dell'esperienza, il modulo si distribuirà a vari servizi e inizierà a funzionare.
Configurazione
Il modulo è preconfigurato per funzionare per la maggior parte dei casi d'uso, ma puoi facilmente personalizzarlo attraverso la funzione configura.
In StarterPlayerScripts , crea una nuova LocalScript e rinominala in ConfiguraSelfieMode .
Incolla il seguente codice nel nuovo script.
Script locale - Configura il modo Selfielocal ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))SelfieMode.configure({disableCharacterMovement = true})
Movimento del personaggio
Potrebbe essere vantaggioso impedire al personaggio del Giocatoredi muoversi mentre è in modalità selfie.Puoi ottenerlo impostando disableCharacterMovement a vero in una chiamata configurare.
Script locale - Configura il modo Selfie
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))SelfieMode.configure({disableCharacterMovement = true})
Azioni della modalità selfie
Modalità selfie viene fornita con le seguenti azioni, ognuna delle quali puoi utilizzare con la funzione activateAction, deactivateAction e toggleAction , o rilevare attraverso gli eventi actionActivated e actionDeactivated.
Profondità di campo
Per impostazione predefinita, SelfieMode mostra un effetto generico di profondità di campo (sfocatura sottile del background) quando un giocatore attiva l'azione.

Per cambiare l'effetto di profondità di campo predefinito, imposta depthOfFieldEffect a tua propria istanza DepthOfFieldEffect in una chiamata configurare.
Script locale - Configura il modo 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})
Blocca lo sguardo
L'interruttore Blocca lo sguardo fa in modo che il personaggio del Giocatoreguardi la fotocamera mentre imposta la posa selfie, all'interno di un intervallo realistico di quanto lontano il collo può ruotare.
Nascondi gli altri
Per impostazione predefinita, gli altri personaggi sono visibili accanto al personaggio del Giocatore.I giocatori possono ottenere un colpo solista perfetto facendo clic sul pulsante Nascondi gli altri .Quando è attivato, gli altri personaggi scompaiono dalla vista e rimangono invisibili fino a quando l'azione Offviene disattivata.
Filtro
L'azione Filtro consente al giocatore di applicare un filtro preimpostato dalle opzioni Pop , Soft , Antico , Carino , Drammatico e Monocromatico .

Posa
L'azione Posa fa in modo che il giocatore selezioni una posa preimpostata dalle opzioni Cheer, Clapping, Dolphin, Flossing, Guitar, Jump Wave, Louder, Top Rock, Twirl, e Wave.

Riferimento API
Tipi
Azione
Ogni azione è rappresentata da un dizionario con i seguenti paari chiave-valore:
Chiave | Tipo | Descrizione |
---|---|---|
name | stringa | Nome dell'azione, mostrato per primo nei tooltip. |
description | stringa | Descrizione dell'azione, mostrata dopo nome in tooltips. |
icon | stringa | ID risorsa per l'Iconadell'azione. |
activeIcon | stringa | ID risorsa per l'icona dell'azione in stato "attivo". Può essere utilizzato solo su azioni genitrici, non su azioni secondarie. |
actions | tavola | Lista opzionale di azioni secondarie. Ciò ti consente di creare sottomenù di varie altre azioni. |
parent | Azione | Il genitore dell'azione; questo si applica solo a una sottazione e punta all'azione che la contiene. |
onActivated | funzione | Funzione di richiamo opzionale che viene eseguita quando un giocatore attiva un'azione o una sottazione.Tipicamente, se un'azione contiene azioni secondarie, solo le azioni secondarie avranno bisogno di un callback definito come un modo per sapere che il giocatore ha attivato la sub-azione e non ha semplicemente "espanso" l'azione principale. |
Script locale
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)
Enumi
SelfieMode.Azione
Modalità selfie viene fornita con diverse azioni.Puoi utilizzare questo elenco con le funzioni activateAction, deactivateAction e toggleAction.
Nome | Sommariamente |
---|---|
DepthOfField | Riferimento all'azione Profondità di campo. |
LockGaze | Riferimento all'azione Blocca lo sguardo. |
HideOthers | Riferimento all'azione Nascondi altri. |
Filter | Riferimento all'azione Filtro. |
Pose | Riferimento all'azione Pose . |
Script locale
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))-- Attiva l'azione "Filtro"SelfieMode.activateAction(SelfieMode.Action.Filter)
Functioni
configurare
configurare(config: table )
Sovrascrive le opzioni di configurazione predefinite attraverso le seguenti chiavi/valori nella tabella config.Questa funzione può essere chiamata solo da un LocalScript .
Chiave | Descrizione | Basilare |
---|---|---|
disableCharacterMovement | Se vero, impedisce al personaggio di muoversi mentre è aperto il modo selfie. | fallito |
depthOfFieldEffect | Opzionale personalizzato DepthOfFieldEffect istanza che appare quando il giocatore attiva l'azione Profondità di campo. |
Script locale - Configura il modo Selfie
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))SelfieMode.configure({disableCharacterMovement = true})
apriModalità Selfie
openSelfieMode()
Un giocatore aprirà tipicamente la modalità selfie con il pulsante "Telecamera" sul lato destro dello schermo, ma questa funzione ti consente di aprirlo attraverso il codice.Quando implementi un pulsante personalizzato come mostrato qui sotto, devi disabilitare il pulsante predefinito attraverso setHudButtonEnabled.Questa funzione può essere chiamata solo da un LocalScript .
Script locale
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))
local button = script.Parent
-- Rimuovi il pulsante predefinito
SelfieMode.setHudButtonEnabled(false)
-- Connetti il pulsante personalizzato
button.Activated:Connect(function()
SelfieMode.openSelfieMode()
end)
chiudiModalità Selfie
chiudiSelfieMode()
Un giocatore chiuderà tipicamente la modalità selfie con il pulsante ⊗ in basso sullo schermo, ma questa funzione ti consente di chiuderla attraverso il codice.Può essere chiamato solo da un LocalScript .
Script locale
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))SelfieMode.closeSelfieMode()
èSelfieModeOpen
isSelfieModeOpen(): boolean
Restituisce true se la modalità selfie è aperta come risultato dell'azione del giocatore o attraverso openSelfieMode.Questa funzione può essere chiamata solo da un LocalScript .
Script locale
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))SelfieMode.openSelfieMode()print(SelfieMode.isSelfieModeOpen())
setHudButtonEnabled
setHudButtonEnabled()
Imposta se il pulsante predefinito per entrare in modalità selfie viene visualizzato.Utile quando si implementa openSelfieMode attraverso un pulsante UI personalizzato.Questa funzione può essere chiamata solo da un LocalScript .
Script locale
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))
local button = script.Parent
-- Rimuovi il pulsante predefinito
SelfieMode.setHudButtonEnabled(false)
-- Connetti il pulsante personalizzato
button.Activated:Connect(function()
SelfieMode.openSelfieMode()
end)
ottenereAction
getAction(azione: SelfieMode.Action ): Azione
Ottiene un tipo Azione attraverso un SelfieMode.Action enum.
Script locale
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))local lockGazeAction = SelfieMode.getAction(SelfieMode.Action.LockGaze)
attivaAction
activateAction(azione: SelfieMode.Action )
Attiva programmaticamente una delle azioni predefinite azioni.Questo è lo stesso quando un giocatore attiva l'azione dalla barra di azione.Può essere chiamato solo da un LocalScript .
Script locale
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))-- Attiva l'azione "Filtro"SelfieMode.activateAction(SelfieMode.Action.Filter)
disattiva azione
deactivateAction(azione: SelfieMode.Action )
Disattiva programmaticamente una delle azioni predefinite .Questo è lo stesso quando un giocatore attiva l'azione dalla barra di azione.Può essere chiamato solo da un LocalScript .
Script locale
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))-- Disattiva l'azione "Filtro"SelfieMode.deactivateAction(SelfieMode.Action.Filter)
attivaAzione
toggleAction(azione: SelfieMode.Action ): boolean
Attiva/disattiva un'azione su se è Off, o la disattiva se è attiva.Questo è lo stesso quando un giocatore clicca l'azione dalla barra delle azioni.Restituisce lo stato "è attivato" nuovo come booleano.Può essere chiamato solo da un LocalScript .
Script locale
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
setTheme
setTheme(tempo: table )
Configura il tema della modalità selfie, inclusa la dimensione del testo, il carattere, il colore dei pulsanti/ suggerimenti e altro ancora. Questa funzione può essere chiamata solo da un LocalScript .
Chiave | Descrizione | Basilare |
---|---|---|
textSize | Dimensione di tutto il testo. | 16 |
font | Font utilizzato in tutta l'interfaccia utente ( Enum.Font ). | GothamMedium |
padding | Spazio principale utilizzato per disporre gli elementi dell'interfaccia utente ( UDim ). | (0, 12) |
paddingSmall | Spaziatura più piccola utilizzata per applicare margini sottili tra gli elementi ( UDim ). | (0, 6) |
paddingScreen | Spazio di imbottitura utilizzato attorno ai bordi dello schermo per dare al modo selfie un po' di spazio di respirazione ( UDim ). | (0, 24) |
backgroundColor | Colore di sfondo utilizzato per la barra che visualizza le azioni ( Color3 ). | [0, 0, 0] |
scrollBarColor | Colore della barra di scorrimento utilizzata negli elementi ScrollingFrame del modulo ( Color3 ). | [255, 255, 255] |
Script locale
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),})
abilitato setEnabled
setEnabled(isEnabled: boolean )
Imposta se la modalità selfie è abilitata o meno.Quando è disabilitato, tutta l'interfaccia utente per il modulo viene rimossa e tutti gli eventi vengono disconnessi.Questa funzione può essere chiamata solo da un LocalScript .
Script locale
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))SelfieMode.setEnabled(false)
Eventi
selfieModeAperto
Si attiva quando il giocatore apre la modalità selfie o quando viene chiamata openSelfieMode. Questo evento può essere connesso solo in un LocalScript .
Script locale
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))
SelfieMode.selfieModeOpened:Connect(function()
print("Selfie mode open")
end)
selfieModeChiuso
Si accende quando il giocatore chiude la modalità selfie o quando viene chiamata closeSelfieMode. Questo evento può essere connesso solo in un LocalScript.
Script locale
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))
SelfieMode.selfieModeClosed:Connect(function()
print("Selfie mode closed")
end)
azioneAttivata
Parametri | |
---|---|
azione: SelfieMode.Action | L'azione attivata Azione. |
Si attiva quando un'azione viene attivata; può essere una delle azioni principali come Profondità di campo , Blocca lo sguardo o Nascondi gli altri ; in alternativa può essere una sottazione come un filtro o posa .La funzione connessa riceve l'azione attivata Action.Questo evento può essere connesso solo in un LocalScript .
Script locale
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))
SelfieMode.actionActivated:Connect(function(action)
print(action.name, "activated")
end)
azioneDisattivata
Parametri | |
---|---|
azione: SelfieMode.Action | L'azione disattivata Azione. |
Si attiva quando un'azione primaria o secondaria viene disattivata.La funzione connessa riceve l'azione disattivata Azione.Questo evento può essere connesso solo in un LocalScript .
Script locale
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))
SelfieMode.actionDeactivated:Connect(function(action)
print(action.name, "deactivated")
end)
filtro cambiato
Si accende quando viene applicato o rimosso un filtro filtro.La funzione connessa riceve il nuovo nome del filtro e il vecchio nome del filtro.Questo evento può essere connesso solo in un LocalScript .
Script locale
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)
postura cambiata
Si accende quando una posa viene applicata o rimossa.La funzione connessa riceve il nuovo nome di posa e il vecchio nome di posa.Questo evento può essere connesso solo in un LocalScript .
Script locale
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)