Selbstmodus

*Dieser Inhalt wurde mit KI (Beta) übersetzt und kann Fehler enthalten. Um diese Seite auf Englisch zu sehen, klicke hier.

Spieler machen bereits Screenshots, um lustige Momente in Erlebnissen zu feiern.Der Selfie-Modus Entwickler-Modul lässt Spieler eine sauberere Erinnerung an jenen Moment aufnehmen, ohne das Chat-Fenster oder die Spielerliste, während er auch Filtereffekte, das Verbergen anderer Charaktere und Posing unterstützt.

Modul-Verwendung

Installationen

Um das Selfie-Modul in einem Erlebnis zu verwenden:

  1. Von der Ansicht-Registerkarte öffne die Toolbox und wähle die Creator-Store -Registerkarte aus.

    Toolbox toggle button in Studio
  2. Stellen Sie sicher, dass die Sortierung der Modelle ausgewählt ist, dann klicken Sie auf die Schaltfläche Alle sehen für Kategorien .

  3. Suchen und klicken Sie auf die Entwickler-Module -Kachel.

  4. Suchen Sie das Selfie-Modul und klicken Sie darauf oder ziehen Sie es in die 3D-Ansicht.

  5. In dem Explorer Fenster verschiebe das gesamte SelfieMode Modell in ServerScriptService .Wenn das Erlebnis ausgeführt wird, verteilt sich das Modul auf verschiedene Dienste und beginnt zu laufen.

Konfigurieren

Das Modul ist vordefiniert, um für die meisten Anwendungsfälle zu arbeiten, aber du kannst es leicht durch die Konfigurieren Funktion anpassen.

  1. In StarterPlayerScripts erstellen Sie ein neues LocalScript und benennen es in Konfigurieren des Selfie-Modus um.

  2. Füge den folgenden Code in das neue Skript, das. PL: die Skriptsein.

    LocalScript - Konfigurieren Sie den Selfie-Modus

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

Zeichenbewegung

Es kann vorteilhaft sein, den Charakter des Spieler:inzu verhindern, sich während des Selfie-Modus zu bewegen.Du kannst dies erreichen, indem du disableCharacterMovement auf wahr in einem Konfigurieren Anruf festlegst.

LocalScript - Konfigurieren Sie den Selfie-Modus

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

Selfie-Modus-Aktionen

Selfie-Modus kommt mit den folgenden Aktionen , von denen jede Sie mit der activateAction , deactivateAction und toggleAction -Funktionen verwenden können oder durch die actionActivated und actionDeactivated -Ereignisse erkennen können.

Tiefenschärfe

Standardmäßig zeigt Selfie-Modus einen generischen Tiefenschärfeneffekt (subtile Verschwommheit des Hintergrunds), wenn ein Spieler die Actionumschaltet.

Um den Standard-Feldeffekt zu ändern, legen Sie depthOfFieldEffect auf Ihre eigene DepthOfFieldEffect Instanz in einem konfigurieren Aufruf fest.

LocalScript - Konfigurieren Sie den Selfie-Modus

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

Blick sperren

Die Augenkontakt-Sperre schaltet den Charakter des Spieler:inein, die Kamera zu betrachten, während er die Selfie-Pose einrichtet, innerhalb einer realistischen Reichweite, wie weit ihr Nacken sich drehen kann.

Andere ausblenden

Standardmäßig sind andere Zeichen neben dem Charakter des Spieler:insichtbar.Spieler können einen perfekten Solo-Schuss erhalten, indem sie auf die Schaltfläche Andere ausblenden klicken.Wenn es eingeschaltet ist, verschwinden andere Zeichen aus der Sicht und bleiben unsichtbar, bis die Aktion deaktiviert wird.

Filtern

Die Filter -Aktion lässt den Spieler einen Voreinstellungsfilter aus den Optionen Pop , Soft , Antik , Niedlich , Dramatisch und Monochrom anwenden.

Haltung

Die Pose -Aktion lässt den Spieler eine voreingestellte Pose aus den Optionen Beifall , Klatschen , Delfin , Flossing , Gitarre , Sprungwelle , Lauter , Top-Rock , Wirbel und Welle auswählen.

APIReferenz

Arten

Aktion

Jede Aktion wird durch ein Wörterbuch repräsentiert, mit den folgenden Schlüssel-Wert-Paaren:

SchlaveTypBeschreibung
namestringName der Action, der zuerst in Tooltips angezeigt wird.
descriptionstringBeschreibung der Action, die nach Name in Tooltips angezeigt wird.
iconstringAsset-ID für das Symbol der Action.
activeIconstringAsset-ID für das Symbol der Actionim "aktiven" Zustand. Kann nur auf übergeordneten Aktionen verwendet werden, nicht auf Unteraktionen.
actionstabelleOptionale Liste von Unteraktionen. Dies ermöglicht es Ihnen, Untermenüs von verschiedenen anderen Aktionen zu erstellen.
parentAktionEltern der Action; dies gilt nur für eine Unteraktion und zeigt auf die Aktion, die sie enthält.
onActivatedfunktionOptionale Rückruffunktion, die ausgeführt wird, wenn ein Spieler eine Aktion oder Unteraktion aktiviert.Typischerweise benötigen Aktionen, wenn sie Unteraktionen enthalten, nur die Unteraktionen einen Rückruf, der als Mittel definiert ist, um zu wissen, dass der Spieler die Unteraktion aktiviert hat und nicht einfach die übergeordnete Action"erweitert" hat.
Lokales Skript

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)

Nummern

SelfieMode.Aktion

Selfie-Modus kommt mit mehreren Aktionen .Sie können diese Enum mit der activateAction, deactivateAction und toggleAction Funktionen verwenden.

NamenÜbersicht
DepthOfFieldVerweis auf die Action.
LockGazeVerweis auf die Sperrung des Action.
HideOthersReferenz auf die Andere ausblenden Action.
FilterVerweis auf die Action.
PoseReferenz auf die Action.
Lokales Skript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))
-- Aktiviere Action"Filter"
SelfieMode.activateAction(SelfieMode.Action.Filter)

Funktionen

konfigurieren

konfigurieren(config: table )

Übernimmt Standard-Konfigurationsoptionen durch die folgenden Schlüssel-/Werte in der config Tabelle.Diese Funktion kann nur von einem LocalScript aufgerufen werden.

SchlaveBeschreibungStandardmäßig
disableCharacterMovementWenn wahr, verhindert, dass sich der Charakter bewegt, während der Selfie-Modus geöffnet ist.falsch
depthOfFieldEffectOptionale benutzerdefinierte DepthOfFieldEffect Instanz, die erscheint, wenn der Spieler die Aktion Tiefenschärfe Action.
LocalScript - Konfigurieren Sie den Selfie-Modus

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

öffnenSelfieMode

öffnenSelfieMode()

Ein Spieler öffnet in der Regel den Selfie-Modus mit der "Kamera"-Taste auf der rechten Seite des Bildschirms, aber diese Funktion lässt dich ihn über Codesöffnen.Wenn du einen benutzerdefinierten Button wie unten implementierst, solltest du den Standard-Button durch setHudButtonEnabled deaktivieren.Diese Funktion kann nur von einem LocalScript aufgerufen werden.

Lokales Skript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))
local button = script.Parent
-- Standard-Button entfernen
SelfieMode.setHudButtonEnabled(false)
-- Verbinde den benutzerdefinierten Button
button.Activated:Connect(function()
SelfieMode.openSelfieMode()
end)

Schließe den Selfie-Modus

schließeSelfieMode()

Ein Spieler schließt in der Regel den Selfie-Modus mit der -Taste unten auf dem Bildschirm, aber diese Funktion lässt dich ihn durch Codesschließen.Kann nur von einem LocalScript ausgerufen werden.

Lokales Skript

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

istSelfieModeOpen

istSelfieModeOpen(): boolean

Gibt true zurück, wenn der Selfie-Modus als Ergebnis der Aktion des Spielers oder durch openSelfieMode geöffnet ist.Diese Funktion kann nur von einem LocalScript aufgerufen werden.

Lokales Skript

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

setHudButtonEnabled

setHudButtonEnabled()

Legt fest, ob die Standardtaste zum Betreten des Selfie-Modus angezeigt wird.Nützlich beim Umsetzen von openSelfieMode durch einen benutzerdefinierten UI-Button.Diese Funktion kann nur von einem LocalScript aufgerufen werden.

Lokales Skript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))
local button = script.Parent
-- Standard-Button entfernen
SelfieMode.setHudButtonEnabled(false)
-- Verbinde den benutzerdefinierten Button
button.Activated:Connect(function()
SelfieMode.openSelfieMode()
end)

erhaltenAction

getAction(Aktion: SelfieMode.Action ): Aktion

Holen Sie sich einen Aktion Typ durch einen SelfieMode.Action Enum.

Lokales Skript

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

aktivierenAktion

activateAction(Aktion: SelfieMode.Action )

Aktiviert programmatisch eine der Standard-Aktionen.Das ist das gleiche wie, wenn ein Spieler die Aktion aus der Aktionsleiste umschaltet.Kann nur von einem LocalScript ausgerufen werden.

Lokales Skript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))
-- Aktiviere Action"Filter"
SelfieMode.activateAction(SelfieMode.Action.Filter)

Aktion deaktivieren

deactivateAction(Aktion: SelfieMode.Action )

Deaktiviert programmatisch eine der Standard-Aktionen.Das ist das gleiche wie, wenn ein Spieler die Aktion von der Aktionsleiste deaktiviert.Kann nur von einem LocalScript ausgerufen werden.

Lokales Skript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))
-- Action"Filter" deaktivieren
SelfieMode.deactivateAction(SelfieMode.Action.Filter)

Aktion umstellen

toggleAction(Aktion: Selfie-Modus.Aktion ): boolean

Schaltet eine Aktion ein, wenn sie ausgeschaltet ist, oder schaltet sie aus, wenn sie aktiviert ist.Das ist das gleiche wie, wenn ein Spieler die Aktion aus der Aktionsleiste anklickt.Gibt den neuen "ist umschaltbar"-Status als boolesches Attribut zurück.Kann nur von einem LocalScript ausgerufen werden.

Lokales Skript

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

themaSetzen

setTheme(Theme: table )

Konfiguriert das Thema des Selfie-Modus, einschließlich Textgröße, Schriftart, Knopf-/Tippelfarben und mehr. Diese Funktion kann nur von einem LocalScript aufgerufen werden.

SchlaveBeschreibungStandardmäßig
textSizeGröße aller Text.16
fontSchriftart, die auf der gesamten UI verwendet wird ( Enum.Font ).GothamMedium
paddingHauptpolsterung für die Ausrichtung von UI-Elementen ( UDim ).(0, 12)
paddingSmallKleinere Puffer werden für die Anwendung subtiler Abstände zwischen Elementen verwendet ( UDim ).(0, 6)
paddingScreenAbstand verwendet rund um die Bildschirmränder, um dem Selfie-Modus etwas Atemraum zu geben ( UDim ).(0, 24)
backgroundColorHintergrundfarbe für die Leiste, die die Aktionen anzeigt (Color3).[0, 0, 0]
scrollBarColorFarbe der Scrollleiste, die in ScrollingFrame Elementen des Moduls verwendet wird (Color3).[255, 255, 255]
Lokales Skript

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),
})

setAllowed aktiviert

setEnabled(ist aktiviert: boolean )

Legt fest, ob der Selfie-Modus aktiviert ist oder nicht.Wenn deaktiviert, wird die gesamte Benutzeroberfläche für das Modul entfernt und alle Ereignisse werden getrennt.Diese Funktion kann nur von einem LocalScript aufgerufen werden.

Lokales Skript

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

Ereignisse

Selfie-Modus geöffnet

Feuert, wenn der Spieler den Selfie-Modus öffnet oder wenn openSelfieMode aufgerufen wird. Dieses Ereignis kann nur in einem LocalScript.

Lokales Skript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))
SelfieMode.selfieModeOpened:Connect(function()
print("Selfie mode open")
end)

selfieModeGeschlossen

Feuert, wenn der Spieler den Selfie-Modus schließt oder wenn closeSelfieMode aufgerufen wird. Dieses Ereignis kann nur in einem LocalScript verbunden werden.

Lokales Skript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))
SelfieMode.selfieModeClosed:Connect(function()
print("Selfie mode closed")
end)

AktionAktiviert

Parameter
Aktion: SelfieMode.ActionDie aktivierte Aktion.

Feuert, wenn eine Aktion aktiviert wird; dies kann eine der primären Aktionen wie Tiefenschärfe , Blick sperren oder Andere ausblenden sein; alternativ kann es sich um eine Unteraktion wie ein Filter oder Pose handeln.Die verbundene Funktion erhält die aktivierte Aktion.Dieses Ereignis kann nur in einem LocalScript verbunden werden.

Lokales Skript

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

AktionDeaktiviert

Parameter
Aktion: SelfieMode.ActionDie deaktivierte Aktion.

Feuert, wenn eine primäre Aktion oder Unteraktion deaktiviert wird.Die verbundene Funktion erhält die deaktivierte Aktion.Dieses Ereignis kann nur in einem LocalScript verbunden werden.

Lokales Skript

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

filterGeändert

Parameter
neuerFilter: stringDer neue Filter.
alteFilter: stringDer vorherige Filter.

Feuert, wenn ein Filter angewendet oder entfernt wird.Die verbundene Funktion erhält den neuen Filternamen und den alten Filternamen.Dieses Ereignis kann nur in einem LocalScript verbunden werden.

Lokales Skript

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)

poseVerändert

Parameter
neuePose: stringDie neue Pose.
oldPose: stringDie vorherige Pose.

Feuert, wenn eine Pose angewendet oder entfernt wird.Die verbundene Funktion erhält den neuen Posennamen und den alten Posennamen.Dieses Ereignis kann nur in einem LocalScript verbunden werden.

Lokales Skript

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)