Modalità Selfie

*Questo contenuto è tradotto usando AI (Beta) e potrebbe contenere errori. Per visualizzare questa pagina in inglese, clicca qui.

I giocatori già scattano screenshot per commemorare momenti divertenti nei giochi. Il modulo SelfieMode per sviluppatori consente ai giocatori di catturare un ricordo più pulito di quel momento senza la finestra della chat o l'elenco dei giocatori, supportando anche effetti di filtro, nascondendo altri personaggi e posando.

Utilizzo del Modulo

Installazione

Per utilizzare il modulo SelfieMode in un gioco:

  1. Dal menu Finestra di Studio o dalla barra degli strumenti della scheda Home, apri il Toolbox e seleziona la scheda Creator Store.

  2. Assicurati che sia selezionato l'ordinamento Modelli, quindi fai clic sul pulsante Vedi Tutti per Categorie.

  3. Individua e fai clic sulla tessera Pacchetti.

  4. Individua il modulo Modalità Selfie e fai clic su di esso, oppure trascinalo nella vista 3D.

  5. Nella finestra Esplora, sposta l'intero pacchetto SelfieMode in ReplicatedStorage. Una volta avviato il gioco, il modulo inizierà a funzionare.

Configurazione

Il modulo è preconfigurato per funzionare nella maggior parte dei casi d'uso, ma puoi facilmente personalizzarlo tramite la funzione configure.

  1. In StarterPlayerScripts, crea un nuovo LocalScript e rinominalo in ConfigureSelfieMode.

  2. Incolla il seguente codice nel nuovo script.

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

Movimento del Personaggio

Potrebbe essere vantaggioso impedire al personaggio del giocatore di muoversi mentre è in modalità selfie. Puoi ottenere questo impostando disableCharacterMovement su true in una chiamata configure.

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

Azioni della Modalità Selfie

SelfieMode include le seguenti azioni, ognuna delle quali puoi utilizzare con le funzioni activateAction, deactivateAction e toggleAction, o rilevare tramite gli eventi actionActivated e actionDeactivated.

Profondità di Campo

Per impostazione predefinita, SelfieMode mostra un effetto generico di profondità di campo (sfocatura sottile dello sfondo) quando un giocatore attiva l'azione.

Per cambiare l'effetto di profondità di campo predefinito, imposta depthOfFieldEffect sulla tua istanza DepthOfFieldEffect in una chiamata 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
})

Blocca Sguardo

L'attivazione del toggle Blocca Sguardo fa sì che il personaggio del giocatore guardi la fotocamera mentre si prepara la posa selfie, all'interno di un intervallo realistico di quanto può ruotare il collo.

Nascondi Altri

Per impostazione predefinita, altri personaggi sono visibili insieme al personaggio del giocatore. I giocatori possono ottenere uno scatto perfetto da soli facendo clic sul pulsante Nascondi Altri. Quando attivato, gli altri personaggi svaniscono dalla vista e rimangono invisibili fino a quando l'azione non viene disattivata.

Filtro

L'azione Filtro consente al giocatore di applicare un filtro preimpostato tra le opzioni Pop, Soft, Antique, Cute, Dramatic e Monochrome.

Posa

L'azione Posa consente al giocatore di selezionare una posa preimpostata tra le 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 le seguenti coppie chiave-valore:

ChiaveTipoDescrizione
namestringNome dell'azione, mostrato per primo nei tooltip.
descriptionstringDescrizione dell'azione, mostrata dopo name nei tooltip.
iconstringID dell'asset per l'icona dell'azione.
activeIconstringID dell'asset per l'icona dell'azione nello stato "attivo". Può essere utilizzato solo su azioni principali, non su sotto-azioni.
actionstableElenco facoltativo di sotto-azioni. Questo consente di creare sottomenu di varie altre azioni.
parentAzioneIl genitore dell'azione; questo si applica solo a una sotto-azione e punta all'azione che la contiene.
onActivatedfunctionFunzione di callback facoltativa che viene eseguita quando un giocatore attiva un'azione o una sotto-azione. Tipicamente, se un'azione contiene sotto-azioni, solo le sotto-azioni necessiteranno di una callback definita come mezzo per sapere che il giocatore ha attivato la sotto-azione e non ha semplicemente "espanso" l'azione principale.
LocalScript
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
SelfieMode.actionActivated:Connect(function(action)
print(action.name, "attivata")
end)
SelfieMode.actionDeactivated:Connect(function(action)
print(action.name, "disattivata")
end)

Enum

SelfieMode.Action

SelfieMode include diverse azioni. Puoi utilizzare questo enum con le funzioni activateAction, deactivateAction e toggleAction.

NomeRiepilogo
DepthOfFieldRiferimento all'azione Profondità di Campo.
LockGazeRiferimento all'azione Blocca Sguardo.
HideOthersRiferimento all'azione Nascondi Altri.
FilterRiferimento all'azione Filtro.
PoseRiferimento all'azione Posa.
LocalScript
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
-- Attiva l'azione "Filtro"
SelfieMode.activateAction(SelfieMode.Action.Filter)

Funzioni

configure

configure(config: table)

Sovrascrive le opzioni di configurazione predefinite tramite le seguenti chiavi/valori nella tabella config. Questa funzione può essere chiamata solo da un LocalScript.

ChiaveDescrizionePredefinito
disableCharacterMovementSe true, impedisce al personaggio di muoversi mentre la modalità selfie è aperta.false
depthOfFieldEffectOpzionale istanza personalizzata DepthOfFieldEffect che appare quando il giocatore attiva l'azione Profondità di Campo.
LocalScript - ConfigureSelfieMode
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
SelfieMode.configure({
disableCharacterMovement = true
})

openSelfieMode

openSelfieMode()

Un giocatore aprirà tipicamente la modalità selfie con il pulsante "camera" sul lato destro dello schermo, ma questa funzione ti consente di aprirla tramite codice. Quando implementi un pulsante personalizzato come mostrato di seguito, dovresti disabilitare il pulsante predefinito tramite setHudButtonEnabled. Questa funzione può essere chiamata solo da un LocalScript.

LocalScript
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
local button = script.Parent
-- Rimuovi il pulsante predefinito
SelfieMode.setHudButtonEnabled(false)
-- Collega il pulsante personalizzato
button.Activated:Connect(function()
SelfieMode.openSelfieMode()
end)

closeSelfieMode

closeSelfieMode()

Un giocatore chiuderà tipicamente la modalità selfie con il pulsante in fondo allo schermo, ma questa funzione ti consente di chiuderla tramite codice. Può essere chiamata solo da un LocalScript.

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

isSelfieModeOpen

isSelfieModeOpen(): boolean

Restituisce true se la modalità selfie è aperta a seguito di un'azione del giocatore o tramite openSelfieMode. Questa funzione può essere chiamata solo da un LocalScript.

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

setHudButtonEnabled

setHudButtonEnabled()

Imposta se il pulsante predefinito per entrare in modalità selfie è mostrato. Utile quando si implementa openSelfieMode tramite un pulsante UI personalizzato. Questa funzione può essere chiamata solo da un LocalScript.

LocalScript
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
local button = script.Parent
-- Rimuovi il pulsante predefinito
SelfieMode.setHudButtonEnabled(false)
-- Collega il pulsante personalizzato
button.Activated:Connect(function()
SelfieMode.openSelfieMode()
end)

getAction

getAction(action: SelfieMode.Action): Action

Ottiene un tipo Action tramite 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)

Attiva programmaticamente una delle azioni predefinite. Questo è lo stesso di quando un giocatore attiva l'azione dalla barra delle azioni. Può essere chiamata solo da un LocalScript.

LocalScript
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
-- Attiva l'azione "Filtro"
SelfieMode.activateAction(SelfieMode.Action.Filter)

deactivateAction

deactivateAction(action: SelfieMode.Action)

Disattiva programmaticamente una delle azioni predefinite. Questo è lo stesso di quando un giocatore disattiva l'azione dalla barra delle azioni. Può essere chiamata solo da un LocalScript.

LocalScript
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
-- Disattiva l'azione "Filtro"
SelfieMode.deactivateAction(SelfieMode.Action.Filter)

toggleAction

toggleAction(action: SelfieMode.Action): boolean

Attiva un'azione action se è spenta, o la disattiva se è accesa. Questo è lo stesso di quando un giocatore fa clic sull'azione dalla barra delle azioni. Restituisce il nuovo stato "è attivato su" come booleano. Può essere chiamata solo da 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("Attivata", lockGazeAction.name)
else
print("Disattivata", lockGazeAction.name)
end

setTheme

setTheme(theme: table)

Configura il tema della modalità selfie, inclusi dimensione del testo, font, colori dei pulsanti/tooltips e altro. Questa funzione può essere chiamata solo da un LocalScript.

ChiaveDescrizionePredefinito
textSizeDimensione di tutto il testo.16
fontFont utilizzato in tutta l'interfaccia utente (Enum.Font).GothamMedium
paddingPadding principale utilizzato per disporre gli elementi dell'interfaccia utente (UDim).(0, 12)
paddingSmallPadding più piccolo utilizzato per applicare margini sottili tra gli elementi (UDim).(0, 6)
paddingScreenPadding utilizzato attorno ai bordi dello schermo per dare alla modalità selfie un po' di respiro (UDim).(0, 24)
backgroundColorColore di sfondo utilizzato per la barra che visualizza le azioni (Color3).[0, 0, 0]
scrollBarColorColore della barra di scorrimento utilizzata negli elementi ScrollingFrame del modulo (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)

Imposta se la modalità selfie è abilitata o meno. Quando disabilitata, tutta l'interfaccia utente per il modulo viene rimossa e tutti gli eventi vengono disconnessi. Questa funzione può essere chiamata solo da un LocalScript.

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

Eventi

selfieModeOpened

Si attiva quando il giocatore apre la modalità selfie o quando viene chiamato openSelfieMode. Questo evento può essere connesso solo in un LocalScript.

LocalScript
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
SelfieMode.selfieModeOpened:Connect(function()
print("Modalità selfie aperta")
end)

selfieModeClosed

Si attiva quando il giocatore chiude la modalità selfie o quando viene chiamato closeSelfieMode. Questo evento può essere connesso solo in un LocalScript.

LocalScript
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
SelfieMode.selfieModeClosed:Connect(function()
print("Modalità selfie chiusa")
end)

actionActivated

Parametri
action: SelfieMode.ActionL'azione Action attivata.

Si attiva quando un'azione viene attivata; questa può essere una delle azioni principali come Profondità di Campo, Blocca Sguardo o Nascondi Altri; alternativamente può essere una sotto-azione come un filtro o una posa. La funzione connessa riceve l'Action attivata. Questo evento può essere connesso solo in un LocalScript.

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

actionDeactivated

Parametri
action: SelfieMode.ActionL'azione Action disattivata.

Si attiva quando un'azione principale o una sotto-azione viene disattivata. La funzione connessa riceve l'Action disattivata. Questo evento può essere connesso solo in un LocalScript.

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

filterChanged

Parametri
newFilter: stringIl nuovo filtro.
oldFilter: stringIl filtro precedente.

Si attiva quando un filtro viene applicato o rimosso. La funzione connessa riceve il nome del nuovo filtro e il nome del filtro precedente. Questo evento può essere connesso solo in un LocalScript.

LocalScript
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
SelfieMode.filterChanged:Connect(function(newFilter, oldFilter)
print("Filtro cambiato da", oldFilter, "a", newFilter)
end)

poseChanged

Parametri
newPose: stringLa nuova posa.
oldPose: stringLa posa precedente.

Si attiva quando una posa viene applicata o rimossa. La funzione connessa riceve il nome della nuova posa e il nome della posa precedente. Questo evento può essere connesso solo in un LocalScript.

LocalScript
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
SelfieMode.poseChanged:Connect(function(newPose, oldPose)
print("Posa cambiata da", oldPose, "a", newPose)
end)
© 2026 Roblox Corporation. Roblox, il logo Roblox e Powering Imagination sono tra i nostri marchi registrati e non registrati negli Stati Uniti. e altri paesi.