I giocatori già prendono screenshot per commemorare momenti divertenti negli esperienze. Il Modalità selfie modulo sviluppatore consente ai giocatori di catturare una memoria più pulita di quel momento senza la finestra di chat o la lista dei giocatori, mentre supporta anche effetti di filtro, nascita di altri personaggi e posing.
Uso del modulo
Installazione
Per utilizzare il modulo Modalità Selfie in un'esperienza:
Dalla Visualizza scheda, apri la Toolbox e seleziona la scheda Creator Store .
Assicurati che la classificazione Modelli sia selezionata, quindi fai clic sul pulsante Vedi tutto per Categorie.
Individua e fai clic sul riquadro Moduli di Piastrella.
Individua il modulo Modalità Selfie e fai clic su di esso, oppure trascinalo nella vista 3D.
Nella finestra Explorer, sposta l'intero modello SelfieMode in ServerScriptService . Al termine dell'esperienza, il modulo si distribuirà su varie servizi e inizierà a funzionare.
Configurazione
Il modulo è prefigurato per funzionare per la maggior parte dei casi d'uso, ma puoi facilmente personalizzarlo attraverso la funzione configura.
In StarterPlayerScripts , crea un nuovo LocalScript e rinominalo in ConfiguraModalità Selfie .
Incolla il seguente codice nello script nuovo.
Script locale - Configura modalità selfielocal ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))SelfieMode.configure({disableCharacterMovement = true})
Movimento del personaggio
Potrebbe essere vantaggioso prevenire il personaggio del Giocatoredal muoversi mentre in modalità selfie. Puoi ottenerlo impostando disableCharacterMovement su vero in una chiamata Configura.
Script locale - Configura modalità selfie
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))SelfieMode.configure({disableCharacterMovement = true})
Azioni della modalità selfie
SelfieMode viene fornito con le seguenti azioni , ognuna delle quali puoi utilizzare con il attiva azione , 0> disattiva azione 0> e 3> attiva/disattiva azione3> funzioni, o rileva attraverso il 6> azioneAttivata6> e 9> azioneDisattivata 9> eventi.
Profondità di campo
Per impostazione predefinita, SelfieMode mostra un effetto generico depth-of-field ( sfocatura subtile del background) quando un giocatore attiva l'azione.
Per cambiare l'effetto di campo di profondità predefinito, imposta depthOfFieldEffect nella tua propria istanza DepthOfFieldEffect in una chiamata Configura.
Script locale - Configura modalità 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
Il Lock Gaze toggle fa in modo che il personaggio del Giocatoreguardi alla fotocamera mentre si imposta la posa selfie, in un'ampia gamma di quanto il loro 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 da solo perfetto facendo clic sul pulsante Nascere altri . Quando è attivato, gli altri personaggi vengono visualizzati e rimangono invisibili fino a quando l'azione non viene attivata.
Filtro
L'azione Filtro consente al giocatore di applicare un filtro preimpostato dalle opzioni Pop, Soft, 2> Antique 2>, 5> Cute 5>, 8> Dramatic 8> e 9> Monochrome9>.
Posa
L'azione Pose consente al giocatore di selezionare una posa preimpostata dalle opzioni Cheer, Clapping, 2> Dolphin2>, 5> Flossing5>, 8> Guitar8>,
Riferimento API
Tipi
Azione
Ogni azione è rappresentata da un dizionario con i seguenti paesi chiave-valore:
Chiave | Tipo | Descrizione |
---|---|---|
name | stringa | Nome dell'azione, mostrato prima negli strumenti di riferimento. |
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 di livello genitore, non su azioni di livello sottostante. |
actions | tabella | Lista opzionale di sottounità. Questo ti consente di creare sottouniti di varie altre azioni. |
parent | Azione | Il padre dell'azione; questo si applica solo a una sottazione e punta all'azione che contiene. |
onActivated | funzione | Funzione richiamata opzionale che viene eseguita quando un giocatore attiva un'azione o una sottazione. Di solito, se un'azione contiene sottazioni, solo le sottazioni avranno bisogno di un richiamato definito come mezzo per sapere che il giocatore ha attivato la sottazione e non semplicemente "espandere" la azione padre. |
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)
Enums
SelfieMode.Action
SelfieMode viene fornito con diversi azioni . Puoi utilizzare questo elenco con le funzioni attiva azione , 0> disattiva azione 0> e 3> attiva/disattiva azione 3>.
Nome | Panoramica |
---|---|
DepthOfField | Riferimento all'azione Depth of Field. |
LockGaze | Riferimento all'azione Lock Gaze. |
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)
Funzioni
configurare
Sovrascrivi le opzioni di configurazione predefinite attraverso le seguenti chiavi / valori nella tabella config. Questa funzione può essere chiamata solo da un LocalScript .
Chiave | Descrizione | Predefinito |
---|---|---|
disableCharacterMovement | Se vero, impedisce al personaggio di muoversi mentre la modalità selfie è aperta. | falso |
depthOfFieldEffect | Opzione di personalizzazione DepthOfFieldEffect che appare quando il giocatore attiva l'azione Profondità di campo . |
Script locale - Configura modalità selfie
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))SelfieMode.configure({disableCharacterMovement = true})
Apri Selfie Mode
Un giocatore di solito apre la modalità selfie con il pulsante "Telecamera" sulla parte destra dello schermo, ma questa funzione ti consente di aprirlo attraverso il codice. Quando si implementa un pulsante personalizzato come mostrato di seguito, si dovrebbe 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)
chiudi SelfieMode
Un giocatore chiuderà tipicamente la modalità selfie con il pulsante ⊗ in basso dello schermo, ma questa funzione ti consente di chiuderlo 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
Restituisce true se la modalità selfie è aperta come risultato dell'azione del giocatore o attraverso aprireModalità Selfie . 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())
setHudButtonAbilitato
Imposta se il pulsante predefinito per entrare in modalità selfie viene mostrato. 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)
ottenere azione
Ottiene un tipo di azione attraverso un SelfieMode.Action elenco.
Script locale
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))local lockGazeAction = SelfieMode.getAction(SelfieMode.Action.LockGaze)
attivare azione
Attiva in modo programmatico una delle azioni predefinite azioni . Questo è lo stesso quando un giocatore attiva l'azione dalla barra delle azioni. 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)
deactivate azione
Programmaticamente disattiva una delle azioni predefinite azioni . Questo è lo stesso quando un giocatore attiva l'azione off dalla barra delle azioni. 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)
Attiva/Disattiva Azione
Attiva/disattiva un'azione sull'azione se è Off, o attiva/disattiva se è on. Questo è lo stesso quando un giocatore fa clic sull'azione dalla barra delle azioni. Ritorna lo stato nuovo "isAttivato" come un booleto. Può essere chiamato solo da un Class.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
setTema
Configura il tema della modalità selfie, inclusa la dimensione del testo, il carattere, il colore del pulsante / tutorial e altro ancora. Questa funzione può essere chiamata solo da un LocalScript .
Chiave | Descrizione | Predefinito |
---|---|---|
textSize | Dimensione di tutto il testo. | 16 |
font | Font utilizzato in tutta l'interfaccia utente ( Enum.Font ). | GothamMedium |
padding | Impostazione principale utilizzata per la distribuzione degli elementi UI ( UDim ). | (0, 12) |
paddingSmall | Sottopagina più piccola utilizzata per applicare margherite sottili tra gli elementi ( UDim ). | (0, 6) |
paddingScreen | Polsino utilizzato intorno agli angoli dello schermo per dare al selfie modo qualche respiro ( UDim ). | (0, 24) |
backgroundColor | Colore di sfondo utilizzato per la barra che mostra le azioni ( Color3 ). | [0, 0, 0] |
scrollBarColor | Colore della barra di avvolgimento 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),})
setAbilitato
Imposta se lo stato di selfie è abilitato o no. Quando è disabilitato, tutte le UI per il modulo vengono rimosse 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
Modalità selfie aperta
Si attiva quando il giocatore apre la modalità selfie o quando viene chiamato apri selfie mode. 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)
Modalità selfie chiusa
Si attiva quando il giocatore chiude la modalità selfie o quando viene chiamato chiudi selfie mode. 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 | Il Azione attivato. |
Si attiva quando viene attivata un'azione; questo può essere una delle azioni principali come profondità di campo , blocco lo sguardo o nascondere gli altri ; in alternativa può essere una sottazione come un 1> filtro1> o 4> posa4> . L'evento
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 | La disattivata Azione . |
Si attiva quando un'azione principale o una sottazione è disattivata. La funzione connessa riceve la funzione 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 attiva quando viene applicato o rimosso un 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)
poseCambiato
Si attiva quando viene applicata o rimossa una posa. La funzione connessa riceve il nuovo nome della posa e il vecchio nome della 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)