Oyuncular zaten deneyimlerde eğlenceli anları ölümsüzleştirmek için ekran görüntüleri alıyor. SelfieMode geliştirici modülü, oyunculara sohbet penceresi veya oyuncu listesi olmadan anın daha net bir hatırasını yakalama imkanı sunar; ayrıca filtre efektleri, diğer karakterleri gizleme ve poz verme desteği de sağlar.
Modül Kullanımı
Kurulum
SelfieMode modülünü bir deneyimde kullanmak için:
Studio'nun Pencere menüsünden veya Ana Sayfa sekmesinin araç çubuğundan Araç Kutusunu açın ve Yaratıcı Mağaza sekmesini seçin.

Modeller sıralamasının seçildiğinden emin olun, ardından Kategorileri Gör butonuna tıklayın.

Paketler kutucuğunu bulun ve tıklayın.
Selfie Modu modülünü bulun ve üzerine tıklayın veya 3D görünümüne sürükleyip bırakın.

Explorer penceresinde SelfieMode paketini ReplicatedStorage içine taşıyın. Deneyimi çalıştırdığınızda modül çalışmaya başlayacaktır.
Yapılandırma
Modül, çoğu kullanım durumu için önceden yapılandırılmıştır, ancak yapılandır fonksiyonu aracılığıyla kolayca özelleştirilebilir.
StarterPlayerScripts içinde yeni bir LocalScript oluşturun ve adını ConfigureSelfieMode olarak değiştirin.
Yeni script'e aşağıdaki kodu yapıştırın.
LocalScript - ConfigureSelfieModelocal ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage.SelfieMode)SelfieMode.configure({disableCharacterMovement = true})
Karakter Hareketi
Oyuncunun karakterinin selfie modundayken hareket etmesini engellemek faydalı olabilir. Bunu, yapılandır çağrısında disableCharacterMovement değerini true olarak ayarlayarak başarabilirsiniz.
LocalScript - ConfigureSelfieModelocal ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage.SelfieMode)SelfieMode.configure({disableCharacterMovement = true})
Selfie Modu Eylemleri
SelfieMode, aşağıdaki eylemler ile birlikte gelir, bunların her birini activateAction, deactivateAction ve toggleAction fonksiyonları ile kullanabilir veya actionActivated ve actionDeactivated olayları aracılığıyla tespit edebilirsiniz.
Alan Derinliği
Varsayılan olarak, SelfieMode, bir oyuncu eylemi açtığında arka planın hafif bulanık bir alan derinliği efekti gösterir.

Varsayılan alan derinliği efektini değiştirmek için, depthOfFieldEffect değerini kendi DepthOfFieldEffect örneğinizle bir yapılandır çağrısında ayarlayın.
LocalScript - ConfigureSelfieModelocal ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage.SelfieMode)local customDepthOfField = Instance.new("DepthOfFieldEffect")customDepthOfField.NearIntensity = 0customDepthOfField.FarIntensity = 1customDepthOfField.FocusDistance = 5customDepthOfField.InFocusRadius = 5SelfieMode.configure({depthOfFieldEffect = customDepthOfField})
Bakış Kilidi
Bakış Kilidi anahtarı, oyuncunun karakterinin selfie pozunu ayarlarken kameraya bakmasını sağlar ve gerçekçi bir şekilde boyunlarının ne kadar dönebildiği aralığında tutar.
Diğerlerini Gizle
Varsayılan olarak, diğer karakterler oyuncunun karakteriyle birlikte görünür. Oyuncular, Diğerlerini Gizle butonuna tıklayarak mükemmel bir solo çekim elde edebilirler. Açık hale getirildiğinde, diğer karakterler görünümden kaybolur ve eylem kapatılana kadar görünmez kalır.
Filtre
Filtre eylemi, oyuncunun Pop, Yumuşak, Antik, Sevimli, Dramatik ve Monokrom seçeneklerinden bir ön ayar filtresini uygulamasına olanak tanır.

Poz
Poz eylemi, oyuncunun Coşku, Alkış, Ballena, Flossing, Gitar, Zıplama Dalga, Daha Yüksek, Üst Rock, Dön, ve Dalga seçeneklerinden bir ön ayar pozu seçmesine olanak tanır.

API Referansı
Türler
Eylem
Her eylem, aşağıdaki anahtar-değer çiftleriyle bir sözlük ile temsil edilir:
| Anahtar | Tür | Açıklama |
|---|---|---|
| name | string | Eylemin adı, ipuçlarında ilk olarak gösterilir. |
| description | string | Eylemin açıklaması, ipuçlarında adından sonra gösterilir. |
| icon | string | Eylemin simgesinin Varlık Kimliği. |
| activeIcon | string | Eylemin "aktif" durumundaki simgesinin Varlık Kimliği. Sadece ana eylemler için kullanılabilir, alt eylemler için değil. |
| actions | table | İsteğe bağlı alt eylemlerin listesi. Bu, çeşitli diğer eylemler için alt menüler oluşturmanıza olanak tanır. |
| parent | Eylem | Eylemin ebeveyni; bu yalnızca bir alt eyleme uygulanır ve onu içeren eylemi gösterir. |
| onActivated | function | İsteğe bağlı geri çağırma fonksiyonu; oyuncu bir eylemi veya alt eylemi etkinleştirdiğinde çalışır. Genellikle, bir eylem alt eylemler içeriyorsa, yalnızca alt eylemler için bir geri çağırmanın tanımlanması gerekir, bu sayede oyuncunun alt eylemi etkinleştirdiği ve yalnızca ana eylemi "genişletmediği" bilinir. |
LocalScript
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
SelfieMode.actionActivated:Connect(function(action)
print(action.name, "etkinleştirildi")
end)
SelfieMode.actionDeactivated:Connect(function(action)
print(action.name, "devre dışı bırakıldı")
end)
Enum'lar
SelfieMode.Action
SelfieMode, birkaç eylem ile birlikte gelir. Bu enum'u activateAction, deactivateAction, ve toggleAction fonksiyonları ile kullanabilirsiniz.
| İsim | Özet |
|---|---|
| DepthOfField | Alan Derinliği eylemine referans. |
| LockGaze | Bakış Kilidi eylemine referans. |
| HideOthers | Diğerlerini Gizle eylemine referans. |
| Filter | Filtre eylemine referans. |
| Pose | Poz eylemine referans. |
LocalScriptlocal ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage.SelfieMode)-- "Filtre" eylemini etkinleştirSelfieMode.activateAction(SelfieMode.Action.Filter)
Fonksiyonlar
yapılandır
yapılandır(config: table)
Varsayılan yapılandırma seçeneklerini config tablosundaki aşağıdaki anahtar/değer çifti aracılığıyla geçersiz kılar. Bu fonksiyon yalnızca bir LocalScript içinden çağrılabilir.
| Anahtar | Açıklama | Varsayılan |
|---|---|---|
| disableCharacterMovement | Eğer true ise, selfie modu açıkken karakterin hareket etmesini engeller. | false |
| depthOfFieldEffect | Oyuncu Alan Derinliği eylemini açtığında görünen isteğe bağlı özel DepthOfFieldEffect örneği. |
LocalScript - ConfigureSelfieModelocal ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage.SelfieMode)SelfieMode.configure({disableCharacterMovement = true})
openSelfieMode
openSelfieMode()
Bir oyuncu genellikle ekranın sağ tarafındaki "kamera" butonu ile selfie modunu açar, ancak bu fonksiyon aracılığıyla kodla açabilirsiniz. Aşağıda gösterildiği gibi özel bir buton uygularken, varsayılan butonu setHudButtonEnabled ile devre dışı bırakmalısınız. Bu fonksiyon yalnızca bir LocalScript içinden çağrılabilir.
LocalScript
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
local button = script.Parent
-- Varsayılan butonu kaldır
SelfieMode.setHudButtonEnabled(false)
-- Özel butonu bağla
button.Activated:Connect(function()
SelfieMode.openSelfieMode()
end)
closeSelfieMode
closeSelfieMode()
Bir oyuncu genellikle ekranın altındaki ⊗ butonu ile selfie modunu kapatır, ancak bu fonksiyon aracılığıyla kodla kapatabilirsiniz. Bu yalnızca bir LocalScript içinden çağrılabilir.
LocalScriptlocal ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage.SelfieMode)SelfieMode.closeSelfieMode()
isSelfieModeOpen
isSelfieModeOpen(): boolean
Eğer selfie modu, oyuncunun eylemi sonucu veya openSelfieMode aracılığıyla açıksa, true döner. Bu fonksiyon yalnızca bir LocalScript içinden çağrılabilir.
LocalScriptlocal ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage.SelfieMode)SelfieMode.openSelfieMode()print(SelfieMode.isSelfieModeOpen())
setHudButtonEnabled
setHudButtonEnabled()
Selfie moduna girmek için varsayılan butonun gösterilip gösterilmeyeceğini ayarlar. Özel UI butonu aracılığıyla openSelfieMode uygularken kullanışlıdır. Bu fonksiyon yalnızca bir LocalScript içinden çağrılabilir.
LocalScript
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
local button = script.Parent
-- Varsayılan butonu kaldır
SelfieMode.setHudButtonEnabled(false)
-- Özel butonu bağla
button.Activated:Connect(function()
SelfieMode.openSelfieMode()
end)
getAction
getAction(action: SelfieMode.Action): Eylem
Bir Eylem türünü SelfieMode.Action enum'u aracılığıyla alır.
LocalScriptlocal ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage.SelfieMode)local lockGazeAction = SelfieMode.getAction(SelfieMode.Action.LockGaze)
activateAction
activateAction(action: SelfieMode.Action)
Varsayılan eylemlerdan birini programlı olarak etkinleştirir. Bu, bir oyuncunun eylemi eylem çubuğundan açtığında yaptığına eşdeğerdir. Bu yalnızca bir LocalScript içinden çağrılabilir.
LocalScriptlocal ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage.SelfieMode)-- "Filtre" eylemini etkinleştirSelfieMode.activateAction(SelfieMode.Action.Filter)
deactivateAction
deactivateAction(action: SelfieMode.Action)
Varsayılan eylemlerdan birini programlı olarak devre dışı bırakır. Bu, bir oyuncunun eylemi eylem çubuğundan kapatırken yaptığına eşdeğerdir. Bu yalnızca bir LocalScript içinden çağrılabilir.
LocalScriptlocal ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage.SelfieMode)-- "Filtre" eylemini devre dışı bırakSelfieMode.deactivateAction(SelfieMode.Action.Filter)
toggleAction
toggleAction(action: SelfieMode.Action): boolean
Bir eylemi kapatılırsa açar, açık ise kapatır. Bu, bir oyuncunun eylemi eylem çubuğundan tıkladığında yaptığına eşdeğerdir. Yeni "açık" durumunu boolean olarak döner. Bu yalnızca bir LocalScript içinden çağrılabilir.
LocalScriptlocal ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage.SelfieMode)local lockGazeAction = SelfieMode.getAction(SelfieMode.Action.LockGaze)local isEnabled = SelfieMode.toggleAction(lockGazeAction)if isEnabled thenprint("Etkinleştirildi", lockGazeAction.name)elseprint("Devre dışı bırakıldı", lockGazeAction.name)end
setTheme
setTheme(theme: table)
Selfie modunun temasını, metin boyutu, yazı tipi, buton/ipuçları renkleri ve daha fazlasıyla yapılandırır. Bu fonksiyon yalnızca bir LocalScript içinden çağrılabilir.
| Anahtar | Açıklama | Varsayılan |
|---|---|---|
| textSize | Tüm metinlerin boyutu. | 16 |
| font | Tüm UI boyunca kullanılan yazı tipi (Enum.Font). | GothamMedium |
| padding | UI öğelerinin yerleştirilmesi için kullanılan ana dolguları (UDim). | (0, 12) |
| paddingSmall | Öğeler arasında ince marjlar uygulamak için kullanılan daha küçük dolgular (UDim). | (0, 6) |
| paddingScreen | Selfie moduna biraz nefes alma alanı sağlamak için ekran kenarlarında kullanılan dolgu (UDim). | (0, 24) |
| backgroundColor | Eylemleri görüntülemek için kullanılan çubuğun arka plan rengi (Color3). | [0, 0, 0] |
| scrollBarColor | Modülün ScrollingFrame öğelerindeki kaydırma çubuğunun rengi (Color3). | [255, 255, 255] |
LocalScriptlocal 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)
Selfie modunun etkin olup olmadığını ayarlar. Devre dışı bırakıldığında, modül için tüm UI kaldırılır ve tüm olaylar bağlantısı kesilir. Bu fonksiyon yalnızca bir LocalScript içinden çağrılabilir.
LocalScriptlocal ReplicatedStorage = game:GetService("ReplicatedStorage")local SelfieMode = require(ReplicatedStorage.SelfieMode)SelfieMode.setEnabled(false)
Olaylar
selfieModeOpened
Oyuncu selfie modunu açtığında veya openSelfieMode çağrıldığında tetiklenir. Bu olay yalnızca bir LocalScript içinde bağlanabilir.
LocalScript
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
SelfieMode.selfieModeOpened:Connect(function()
print("Selfie modu açıldı")
end)
selfieModeClosed
Oyuncu selfie modunu kapattığında veya closeSelfieMode çağrıldığında tetiklenir. Bu olay yalnızca bir LocalScript içinde bağlanabilir.
LocalScript
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
SelfieMode.selfieModeClosed:Connect(function()
print("Selfie modu kapatıldı")
end)
actionActivated
| Parametreler | |
|---|---|
| action: SelfieMode.Action | Etkinleştirilen Eylem. |
Bir eylem etkinleştirildiğinde tetiklenir; bu, Alan Derinliği, Bakış Kilidi veya Diğerlerini Gizle gibi ana eylemlerden biri olabilir; alternatif olarak, bir filtre veya poz gibi bir alt eylem olabilir. Bağlı fonksiyon etkinleştirilen Eylem nesnesini alır. Bu olay yalnızca bir LocalScript içinde bağlanabilir.
LocalScript
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
SelfieMode.actionActivated:Connect(function(action)
print(action.name, "etkinleştirildi")
end)
actionDeactivated
| Parametreler | |
|---|---|
| action: SelfieMode.Action | Devre dışı bırakılan Eylem. |
Bir ana eylem veya alt eylem devre dışı bırakıldığında tetiklenir. Bağlı fonksiyon devre dışı bırakılan Eylem nesnesini alır. Bu olay yalnızca bir LocalScript içinde bağlanabilir.
LocalScript
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
SelfieMode.actionDeactivated:Connect(function(action)
print(action.name, "devre dışı bırakıldı")
end)
filterChanged
Bir filtre uygulandığında veya kaldırıldığında tetiklenir. Bağlı fonksiyon yeni filtre adı ve eski filtre adı alır. Bu olay yalnızca bir LocalScript içinde bağlanabilir.
LocalScript
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
SelfieMode.filterChanged:Connect(function(newFilter, oldFilter)
print("Filtre", oldFilter, "yeni filtreye", newFilter, "değişti")
end)
poseChanged
Bir poz uygulandığında veya kaldırıldığında tetiklenir. Bağlı fonksiyon yeni poz adı ve eski poz adı alır. Bu olay yalnızca bir LocalScript içinde bağlanabilir.
LocalScript
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
SelfieMode.poseChanged:Connect(function(newPose, oldPose)
print("Poz", oldPose, "yeni poz", newPose, "olarak değiştirildi")
end)