Spieler machen bereits Screenshots, um lustige Momente in Erlebnissen zu dokumentieren. Die Selfie-Modus-Entwickler-Modul lässt Spieler einen sauberen Speicher dieses Moments ohne das Chat-Fenster oder die Spielerliste aufzeichnen, während auch Filtereffekte, das Verbergen anderer Charaktere und das Posieren unterstützt werden.
Modul-Einsatz
Installation
Um das SelfieMode -Modul in einem Erlebnis zu verwenden:
Von der Ansicht-Registerkarte öffnen Sie die Werkzeugkiste und wählen Sie die Creator-Store -Registerkarte.
Stellen Sie sicher, dass die Models Sortierung ausgewählt ist, dann klicken Sie auf die Alle anzeigen Schaltfläche für Kategorien .
Suchen Sie die Dev-Module -Kachel und klicken Sie darauf.
Suchen Sie das Selfie-Modus -Modul und klicken Sie darauf, oder ziehen Sie es in die 3D-Ansicht.
In dem Explorer-Fenster bewegen Sie das gesamte SelfieMode-Modell in ServerScriptService . Nach dem Laufen der Erlebniswird das Modul auf verschiedene Dienste verteilt und beginnt zu laufen.
Konfiguration
Das Modul ist für die meisten Anwendungsfälle vordefiniert, aber Sie können es leicht über die Konfigurieren-Funktion anpassen.
In StarterPlayerScripts , erstellen Sie ein neues LocalScript und benennen Sie es zu Konfigurieren des Selfie-Modus um.
Fügen Sie den folgenden Code in das neue Skript, das. PL: die Skriptsein.
LocalScript - Konfigurieren Sie SelfieModelocal ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))SelfieMode.configure({disableCharacterMovement = true})
Charakter-Bewegung
Es kann vorteilhaft sein, den Charakter des Spieler:inim Selfie-Modus zu verhindern, während Sie in einem disableCharacterMovement -Anruf einrichten. Sie können dies erreichen, indem Sie disableCharacterMovement auf true in einem konfigurieren-Anruf einstellen.
LocalScript - Konfigurieren Sie SelfieMode
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))SelfieMode.configure({disableCharacterMovement = true})
Selfie-Modus-Aktionen
SelfieMode kommt mit den folgenden Aktionen , von denen Sie mit dem aktivierenAktion , 0> deaktivierenAktion0> und 3> toggleAction3> -Funktionen oder durch das Erkennen durch die Aktionen 6>aktiviert6> und 9>deaktiviert 9> .
Tiefen-der-Felder
Standardmäßig zeigt SelfieMode einen generischen Tiefen-of-Field-Effekt (Subtiler Blur des Hintergrunds), wenn ein Spieler die Actionumschaltet.
Um den Standard-Depth-of-Field-Effekt zu ändern, setze depthOfFieldEffect an deine eigene DepthOfFieldEffect Instanz in einem konfigurieren-Anruf.
LocalScript - Konfigurieren Sie SelfieMode
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})
Blick sperren
Die Augen fixieren-Schaltfläche schaltet den Charakter des Spieler:indazu ein, die Kamera anzusehen, während die Selfie-Pose eingerichtet wird, innerhalb eines realistischen Reichweites, wie weit ihr Nacken drehen kann.
Andere ausblenden
Standardmäßig sind andere Charaktere neben dem Charakter des Spieler:insichtbar. Spieler können einen perfekten Solo-Schuss erhalten, indem sie auf die Schaltfläche Andere ausblenden klicken. Wenn sie aufgeschaltet ist, verschwinden andere Charaktere aus der Sicht und bleiben bis die Aktion deaktiviert, unsichtbar.
Filtern
Die Filter-Aktion erlaubt dem Spieler, einen Voreinstellungsfilter aus den Optionen Pop, Weich, 2> Antique 2>, 5> Cute 5>, 8> Dramatic8> und 1> Monochrome 1> .
Posten
Die Pose-Aktion lässt den Spieler eine Voreinstellungspose aus den Optionen Jubeln, Clapping, 2> Dolphin2>, 5> Flossing5>, 8> Guitar8>, 1> Spr
API-Referenz
Typen
Aktion
Jede Aktion wird durch ein Wörterbuch mit den folgenden Schlüsselwerten dargestellt:
Schlüssel | Typ | Beschreibung |
---|---|---|
name | string | Name der Action, der zuerst in Tooltips angezeigt wird. |
description | string | Beschreibung der Action, die nach dem Namen in der Tooltips angezeigt wird. |
icon | string | Asset-ID für das Symbol der Action. |
activeIcon | string | Asset-ID für das Symbol des Actionin "aktiv"-Zustand. Kann nur auf übergeordneten Aktionen verwendet werden, nicht auf Unter-Aktionen. |
actions | tabelle | Optionale Liste von Unter-Aktionen. Dies ermöglicht es Ihnen, Untermenüs von verschiedenen anderen Aktionen zu erstellen. |
parent | Aktion | Der Elternteil der Action; Dies gilt nur für eine Unteraktion und verweist auf die Aktion, die sie enthält. |
onActivated | funktion | Optionale Rückruffunktion, die ausgeführt wird, wenn ein Spieler eine Aktion oder Unteraktion aktiviert. Normalerweise, wenn eine Aktion Unteraktionen enthält, nur die Unteraktionen werden einen Rückruf definiert als Mittelf, um zu wissen, dass der Spieler die Unteraktion aktiviert hat und nicht einfach "erweitert" die Action. |
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)
Enums
SelfieModus.Action
SelfieMode kommt mit mehreren Aktionen . Sie können dieses Ensemble mit den aktivierenAktion, 0> deaktivierenAktion0> und 3> toggleAction 3>-Funktionen verwenden.
Name | Zusammenfassung |
---|---|
DepthOfField | Verweis auf die Action. |
LockGaze | Verweis auf die Lock Action. |
HideOthers | Verweis auf die Andere Action. |
Filter | Verweis auf die Action. |
Pose | Verweis auf die Action. |
Lokales Skript
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))-- Aktiviere die "Filtern"ActionSelfieMode.activateAction(SelfieMode.Action.Filter)
Funktionen
konfigurieren
Überschreibt Standard-Konfigurationsoptionen durch die folgenden Schlüssel/ Werte in der config Tabelle. Diese Funktion kann nur von einem LocalScript ausgerufen werden.
Schlüssel | Beschreibung | Standard |
---|---|---|
disableCharacterMovement | Wenn wahr, verhindert, dass der Charakter bewegt, während der Selfie-Modus geöffnet ist. | falsch |
depthOfFieldEffect | Optionale benutzerdefinierte DepthOfFieldEffect Instanz, die erscheint, wenn der Spieler die Tiefe des Feldes Actionumschaltet. |
LocalScript - Konfigurieren Sie SelfieMode
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))SelfieMode.configure({disableCharacterMovement = true})
öffnen Sie SelfieMode
Ein Spieler öffnet normalerweise den Selbstiegel-Modus mit der "Kamera"-Schaltfläche auf der rechten Seite des Bildschirms, aber diese Funktion erlaubt es Ihnen, es über den Codeszu öffnen. Wenn Sie einen benutzerdefinierten Button wie unten gezeigt verwenden, sollten Sie 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
-- Entfernen Sie die Standard-Schaltfläche
SelfieMode.setHudButtonEnabled(false)
-- Verbinde den benutzerdefinierten Button
button.Activated:Connect(function()
SelfieMode.openSelfieMode()
end)
selbstmodus schließen
Ein Spieler wird in der Regel den Selbstiegel-Modus mit der ⊗ -Schaltfläche am unteren Rand des Bildschirms schließen, aber diese Funktion ermöglicht es Ihnen, es über den Codeszu schließen. Kann nur von einem LocalScript aufgerufen werden.
Lokales Skript
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))SelfieMode.closeSelfieMode()
istSelfieModeOpen
Gibt true zurück, wenn der Selfie-Modus als Ergebnis einer Spieleraktion 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
Setzt, ob die Standard-Schaltfläche zum Eintragen in den Selbstiegel-Modus angezeigt wird. Nützlich, wenn Sie openSelfieMode über einen benutzerdefinierten UI-Button implementieren. 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
-- Entfernen Sie die Standard-Schaltfläche
SelfieMode.setHudButtonEnabled(false)
-- Verbinde den benutzerdefinierten Button
button.Activated:Connect(function()
SelfieMode.openSelfieMode()
end)
erhalten Sie Action
Erhält einen Aktion-Typ durch eine SelfieMode.Action-Registerkarte-Liste.
Lokales Skript
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))local lockGazeAction = SelfieMode.getAction(SelfieMode.Action.LockGaze)
aktivierenAction
Programmiert aktiviert eine der Standard- Aktionen . Dies ist dasselbe wie wenn ein Spieler die Aktion vom Aktions-Bar umschaltet. Kann nur von einem LocalScript aufgerufen werden.
Lokales Skript
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))-- Aktiviere die "Filtern"ActionSelfieMode.activateAction(SelfieMode.Action.Filter)
deaktivierenAction
Programmiert deaktiviert eine der Standard- Aktionen. Dies ist dasselbe wie wenn ein Spieler die Aktion von der Aktionleiste umschaltet. Kann nur von einem LocalScript aufgerufen werden.
Lokales Skript
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))-- Deaktivieren Sie die Action"Filter"SelfieMode.deactivateAction(SelfieMode.Action.Filter)
SchaltflächeAction
Schaltet eine Aktion ein, wenn sie ausist, oder schaltet sie ab, wenn sie aktiviert ist. Dies ist dasselbe wie wenn ein Spieler auf die Aktion von der Aktionsleiste klickt. Rückgibt den neuen Zustand "is toggled on" alsBoolean. Kann nur von einem LocalScript aufgerufen 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 thenprint("Activated", lockGazeAction.name)elseprint("Deactivated", lockGazeAction.name)end
setZiel
Konfiguriert das Selfie-Modul-Thema, einschließlich Textgröße, Schriftart, Button/Tooltip-Farben und mehr. Diese Funktion kann nur von einem LocalScript aufgerufen werden.
Schlüssel | Beschreibung | Standard |
---|---|---|
textSize | Größe des gesamten Textes. | 16 |
font | Font, der überall auf der Benutzeroberfläche verwendet wird (Enum.Font). | GothamMedium |
padding | Hauptpolsterung wird verwendet, um Benutzeroberflächenelemente zu platzieren ( UDim ). | (0, 12) |
paddingSmall | Kleineres Padding wird verwendet, um subtile Margen zwischen Elementen anzuwenden ( UDim ). | (0, 6) |
paddingScreen | Pad wird am Bildschirmrand verwendet, um dem Selfie-Modus etwas Atemraum zu geben (UDim). | (0, 24) |
backgroundColor | Hintergrundfarbe für die Leiste, die die Aktionen anzeigt ( Color3 ). | [0, 0, 0] |
scrollBarColor | Farbe der Scrollbar, 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),})
setAktiviert
Setzt, ob der Selfie-Modus aktiviert oder nicht ist. Wenn deaktiviert, wird die gesamte Benutzeroberfläche des Moduls entfernt und alle Ereignisse 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
selbstieModus geöffnet
Feuert, wenn der Spieler den Selbstiegel-Modus öffnet oder wenn openSelfieMode 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.selfieModeOpened:Connect(function()
print("Selfie mode open")
end)
selbstieModusGeschlossen
Feuert, wenn der Spieler den Selbstiegel-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.Action | Die aktivierte Aktion . |
Feuert, wenn eine Aktion aktiviert wird; dies kann eine der primären Aktionen sein, wie Tiefe des Feldes, Lock Gaze oder Hide Others; alternativ kann es eine Unteraktion wie ein 2> Filter2> oder ein 5> Pose5> sein. Die verbundene Funktion erh
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.Action | Die deaktivierte Aktion . |
Feuert ab, wenn eine Hauptaktion 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)
Filter geändert
Feuert, wenn ein <a href="/reference/engine/databases/schlie?en-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter-filter
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)
poseÄndern
Feuert, wenn ein <a href="/reference/engine/datatypes">Datentyp</a> angewendet oder entfernt wird. Die verbundene Funktion erhält den neuen Datentypnamen und den alten Datentypnamen. Dieses Ereignis kann nur in einem <b>Class.LocalScript</b> 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)