Pemain sudah mengambil tangkapan layar untuk mengenang momen menyenangkan di pengalaman.Mode Selfie pengembang memungkinkan pemain menangkap memori yang lebih bersih dari momen itu tanpa jendela obrolan atau daftar pemain, sambil juga mendukung efek filter, menyembunyikan karakter lain, dan berpose.
Penggunaan Modul
Instalasi
Untuk menggunakan modul Mode Selfie dalam pengalaman:
Pastikan pengurutan Model dipilih, lalu klik tombol Lihat Semua untuk Kategori .
Temukan dan klik ubin Modul Pengembang .
Temukan modul Mode Selfie dan klik, atau seret dan lepaskan ke dalam tampilan 3D.
Di jendela Explorer, pindahkan seluruh model Mode Selfie ke ServerScriptService .Setelah menjalankan pengalaman, modul akan didistribusikan ke berbagai layanan dan mulai berjalan.
Konfigurasi
Modul sudah diatur sebelumnya untuk bekerja untuk sebagian besar kasus penggunaan, tetapi Anda dapat dengan mudah menyesuaikannya melalui fungsi konfigurasi.
Di StarterPlayerScripts , buat yang baru LocalScript dan ganti namanya menjadi Konfigurasi Mode Selfie .
Tempelkan kode berikut ke skrip baru.
Skrip Lokal - Konfigurasi Mode Selfielocal ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))SelfieMode.configure({disableCharacterMovement = true})
Gerakan Karakter
Mungkin lebih menguntungkan untuk mencegah karakter pemain bergerak saat dalam mode selfie.Anda dapat mencapai ini dengan menetapkan disableCharacterMovement ke benar dalam panggilan konfigurasi.
Skrip Lokal - Konfigurasi Mode Selfie
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))SelfieMode.configure({disableCharacterMovement = true})
Tindakan Mode Selfie
Mode Selfie datang dengan tindakan berikut , masing-masing dari mana Anda dapat menggunakan dengan fungsi aktifkanAksi , nonaktifkanAksi , dan aktifkanAksi fungsi, atau mendeteksi melalui peristiwa aksiDiaktifkan dan aksiDideaktifkan .
Kedalaman Bidang
Secara default, Mode Selfie menunjukkan efek umum kedalaman lapangan ( blur halus dari latar belakang ) ketika seorang pemain menyalakan action.

Untuk mengubah efek kedalaman bidang default, atur depthOfFieldEffect ke instansi DepthOfFieldEffect Anda sendiri dalam panggilan konfigurasi.
Skrip Lokal - Konfigurasi Mode 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})
Kunci Pandangan
Tombol Kunci Pandangan menyebabkan karakter pemain melihat kamera saat mengatur pose selfie, dalam jarak realistis seberapa jauh leher mereka bisa berputar.
Sembunyikan Lainnya
Secara default, karakter lainnya terlihat di samping karakter pemain.Pemain dapat memperoleh tembakan solo sempurna dengan mengklik tombol Sembunyikan Orang Lain .Saat diaktifkan, karakter lain memudar dari pandangan dan tetap tidak terlihat sampai aksi dimatikan.
Filter
Tindakan Filter memungkinkan pemain menerapkan filter default dari opsi Pop , Lembut , Antik , Manis , Dramatis , dan Monokrom .

Posisi
Tindakan Pose memungkinkan pemain memilih posisi prasetel dari opsi Cheer , Tepuk Tangan , Dolphin , Flossing , Gitar , Gelombang Jump , Lebih Keras , Top Rock , Twirl , dan Gelombang .

Referensi API
Jenis
Tindakan
Setiap tindakan diwakili oleh kamus dengan pas kunci-nilai berikut:
Kunci | Jenis | Deskripsi |
---|---|---|
name | string | Nama action, ditampilkan pertama di tooltip. |
description | string | Deskripsi action, ditampilkan setelah nama di tooltip. |
icon | string | ID aset untuk ikon action. |
activeIcon | string | ID aset untuk ikon tindakan dalam status "aktif". Hanya dapat digunakan pada tindakan orang tua, bukan sub-tindakan. |
actions | meja | Daftar opsi tindakan turunan. Ini memungkinkan Anda untuk membuat submenu dari berbagai tindakan lainnya. |
parent | Tindakan | Orangtua dari action; ini hanya berlaku untuk sub-tindakan dan menunjukkan tindakan yang berisi itu. |
onActivated | fungsi | Fungsi panggil balas opsional yang berjalan saat pemain mengaktifkan tindakan atau sub-tindakan.Biasanya, jika tindakan berisi tindakan turunan, hanya tindakan turunan yang memerlukan panggil balik yang didefinisikan sebagai cara untuk mengetahui bahwa pemain mengaktifkan tindakan turunan dan tidak hanya "memperluas" actionorang tua. |
Skrip Lokal
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
Mode Selfie hadir dengan beberapa tindakan.Anda dapat menggunakan enum ini dengan aktifkanAksi , nonaktifkanAksi , dan aktifkanAksi fungsi.
Nama | Singkatan |
---|---|
DepthOfField | Referensi ke actionKedalaman Bidang . |
LockGaze | Referensi ke actionKunci Pandangan. |
HideOthers | Referensi ke actionSembunyikan Lainnya. |
Filter | Referensi ke actionFilter . |
Pose | Referensi ke actionPose. |
Skrip Lokal
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))-- Aktifkan action"Filter"SelfieMode.activateAction(SelfieMode.Action.Filter)
Fungsi
mengonfigurasi
mengonfigurasi(config: table )
Menggantikan opsi konfigurasi default melalui kunci/nilai berikut di tabel config.Fungsi ini hanya dapat dipanggil dari LocalScript .
Kunci | Deskripsi | Standar |
---|---|---|
disableCharacterMovement | Jika benar, mencegah karakter bergerak saat mode selfie terbuka. | salah |
depthOfFieldEffect | Opsional khusus DepthOfFieldEffect actionyang muncul ketika pemain menyalihkan tindakan Kedalaman Bidang . |
Skrip Lokal - Konfigurasi Mode Selfie
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))SelfieMode.configure({disableCharacterMovement = true})
bukaMode Selfie
openSelfieMode()
Pemain biasanya akan membuka mode selfie dengan tombol "kamera" di sisi kanan layar, tetapi fungsi ini memungkinkan Anda untuk membukanya melalui kode.Saat menerapkan tombol khusus seperti yang ditunjukkan di bawah, Anda harus menonaktifkan tombol default melalui setHudButtonEnabled.Fungsi ini hanya dapat dipanggil dari LocalScript .
Skrip Lokal
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))
local button = script.Parent
-- Hapus tombol default
SelfieMode.setHudButtonEnabled(false)
-- Hubungkan tombol khusus
button.Activated:Connect(function()
SelfieMode.openSelfieMode()
end)
tutupMode Selfie
tutupMode Selfie()
Seorang pemain biasanya akan menutup mode selfie dengan tombol ⊗ di bagian bawah layar, tetapi fungsi ini memungkinkan Anda menutupnya melalui kode.Hanya dapat dipanggil dari LocalScript .
Skrip Lokal
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))SelfieMode.closeSelfieMode()
apakah Selfie Mode Terbuka
isSelfieModeOpen(): boolean
Kembalikan true jika mode selfie terbuka sebagai hasil tindakan pemain atau melalui openSelfieMode.Fungsi ini hanya dapat dipanggil dari LocalScript.
Skrip Lokal
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))SelfieMode.openSelfieMode()print(SelfieMode.isSelfieModeOpen())
setHudButtonEnabled
setHudButtonEnabled()
Mengatur apakah tombol default untuk masuk ke mode selfie ditampilkan.Berguna saat menerapkan bukaMode Selfie melalui tombol UI khusus.Fungsi ini hanya dapat dipanggil dari LocalScript .
Skrip Lokal
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))
local button = script.Parent
-- Hapus tombol default
SelfieMode.setHudButtonEnabled(false)
-- Hubungkan tombol khusus
button.Activated:Connect(function()
SelfieMode.openSelfieMode()
end)
dapatkanAksi
mendapatkanAction(action: SelfieMode.Action ): Tindakan
Mendapatkan tipe Tindakan melalui sebuah SelfieMode.Action enum.
Skrip Lokal
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))local lockGazeAction = SelfieMode.getAction(SelfieMode.Action.LockGaze)
aktifkan tindakan
aktifkanAksi(action: SelfieMode.Action )
Aktif secara programatik untuk salah satu tindakan default .Ini sama dengan ketika pemain menyalakan tindakan dari bilah tindakan.Hanya dapat dipanggil dari LocalScript .
Skrip Lokal
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))-- Aktifkan action"Filter"SelfieMode.activateAction(SelfieMode.Action.Filter)
Nonaktifkan Tindakan
deactivateAction(action: SelfieMode.Action )
Secara programmatis menonaktifkan salah satu tindakan default .Ini sama dengan ketika pemain menyalakan aksi dari bilah aksi.Hanya dapat dipanggil dari LocalScript .
Skrip Lokal
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))-- Matikan action"Filter"SelfieMode.deactivateAction(SelfieMode.Action.Filter)
aktifkanAksi
toggleAction(action: SelfieMode.Action ): boolean
Mengubah tindakan pada jika tidak aktif, atau mengubahnya mati jika aktif.Ini sama dengan ketika pemain mengklik tindakan dari bilah tindakan.Kembalikan status "is toggled on" baru sebagai boolean.Hanya dapat dipanggil dari LocalScript .
Skrip Lokal
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(theme: table )
Konfigurasi tema mode selfie, termasuk ukuran teks, font, warna tombol/instruksi, dan banyak lagi. Fungsi ini hanya dapat dipanggil dari LocalScript.
Kunci | Deskripsi | Standar |
---|---|---|
textSize | Ukuran semua teks. | 16 |
font | Font yang digunakan di seluruh UI ( Enum.Font ). | GothamMedium |
padding | Pengisi utama yang digunakan untuk menempatkan elemen UI ( UDim ). | (0, 12) |
paddingSmall | Pengisi lebih kecil yang digunakan untuk menerapkan margin halus antara elemen ( UDim ). | (0, 6) |
paddingScreen | Pengisi digunakan di sekitar tepi layar untuk memberikan ruang pernapasan pada mode selfie ( UDim ). | (0, 24) |
backgroundColor | Warna latar belakang yang digunakan untuk bar yang menampilkan tindakan ( Color3 ). | [0, 0, 0] |
scrollBarColor | Warna bilah geser yang digunakan di elemen ScrollingFrame modul ( Color3 ). | [255, 255, 255] |
Skrip Lokal
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),})
aturEnabled
setEnabled(isEnabled: boolean )
Mengatur apakah mode selfie diaktifkan atau tidak.Saat dinonaktifkan, semua UI untuk modul dihapus dan semua peristiwa terputus.Fungsi ini hanya dapat dipanggil dari LocalScript.
Skrip Lokal
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))SelfieMode.setEnabled(false)
Peristiwa
selfieModeTerbuka
Melepaskan api saat pemain membuka mode selfie atau saat openSelfieMode dipanggil. Peristiwa ini hanya dapat terhubung di dalam LocalScript .
Skrip Lokal
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))
SelfieMode.selfieModeOpened:Connect(function()
print("Selfie mode open")
end)
selfieModeClosed
Melepaskan api saat pemain menutup mode selfie atau saat closeSelfieMode dipanggil. Acara ini hanya dapat terhubung di LocalScript .
Skrip Lokal
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))
SelfieMode.selfieModeClosed:Connect(function()
print("Selfie mode closed")
end)
aktifAksi
Parameter | |
---|---|
action: SelfieMode.Action | Tindakan yang diaktifkan . |
Melepaskan api saat tindakan diaktifkan; ini mungkin menjadi salah satu tindakan utama seperti Kedalaman Bidang , Lock Gaze , atau Sembunyikan Orang Lain ; atau alternatifnya bisa menjadi sub-aksi seperti filter atau pose .Fungsi terhubung menerima tindakan aktif .Acara ini hanya dapat terhubung di LocalScript .
Skrip Lokal
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))
SelfieMode.actionActivated:Connect(function(action)
print(action.name, "activated")
end)
aktivasiDinonaktifkan
Parameter | |
---|---|
action: SelfieMode.Action | Tindakan yang dinonaktifkan . |
Melepaskan api ketika tindakan utama atau sub-tindakan dinonaktifkan.Fungsi terhubung menerima tindakan deaktif nonaktif.Acara ini hanya dapat terhubung di LocalScript .
Skrip Lokal
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))
SelfieMode.actionDeactivated:Connect(function(action)
print(action.name, "deactivated")
end)
filter berubah
Melepaskan api ketika filter diterapkan atau dihapus.Fungsi terhubung menerima nama filter baru dan nama filter lama.Acara ini hanya dapat terhubung di LocalScript .
Skrip Lokal
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)
poseBerubah
Melepaskan api saat pose diterapkan atau dihapus.Fungsi terhubung menerima nama pose baru dan nama pose lama.Acara ini hanya dapat terhubung di LocalScript .
Skrip Lokal
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)