セルフィーモード

*このコンテンツは、ベータ版のAI(人工知能)を使用して翻訳されており、エラーが含まれている可能性があります。このページを英語で表示するには、 こちら をクリックしてください。

プレイヤーはすでにゲーム内で楽しい瞬間を記念するためにスクリーンショットを撮っています。SelfieMode 開発者モジュールは、チャットウィンドウやプレイヤーリストなしでその瞬間のクリーンな記憶をキャプチャできるようにし、フィルター効果、他のキャラクターの隠蔽、ポーズをサポートします。

モジュールの使用法

インストール

ゲームでSelfieModeモジュールを使用するには:

  1. スタジオのウィンドウメニューまたはホームタブツールバーから、ツールボックスを開き、クリエイターストアタブを選択します。

  2. モデルのソートが選択されていることを確認し、カテゴリのすべて表示ボタンをクリックします。

  3. パッケージタイルを見つけてクリックします。

  4. セルフィーモードモジュールを見つけてクリックするか、3Dビューにドラッグアンドドロップします。

  5. エクスプローラーウィンドウで、SelfieModeパッケージ全体をReplicatedStorageに移動します。ゲームを実行すると、モジュールが実行を開始します。

設定

モジュールはほとんどの使用ケースに対して事前設定されていますが、configure関数を通じて簡単にカスタマイズできます。

  1. StarterPlayerScripts内に新しいLocalScriptを作成し、名前をConfigureSelfieModeに変更します。

  2. 新しいスクリプトに以下のコードを貼り付けます。

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

キャラクターの移動

セルフィーモード中にプレイヤーのキャラクターが移動するのを防ぐことが有利な場合があります。これは、configure呼び出しでdisableCharacterMovementをtrueに設定することで実現できます。

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

セルフィーモードのアクション

SelfieModeには、activateAction、deactivateAction、およびtoggleAction関数で使用できる以下のアクションが含まれています。また、actionActivatedおよびactionDeactivatedイベントを通じて検出することもできます。

被写界深度

デフォルトでは、SelfieModeはプレイヤーがアクションを切り替えたときに一般的な被写界深度効果(背景の微妙なぼかし)を表示します。

デフォルトの被写界深度効果を変更するには、configure呼び出しでdepthOfFieldEffectを独自のDepthOfFieldEffectインスタンスに設定します。

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

視線を固定

視線を固定トグルは、セルフィーポーズを設定する際にプレイヤーのキャラクターがカメラを見つめるようにします。これは、首が回転できる現実的な範囲内で行われます。

他のキャラクターを隠す

デフォルトでは、他のキャラクターはプレイヤーのキャラクターと一緒に表示されます。プレイヤーは他のキャラクターを隠すボタンをクリックすることで、完璧なソロショットを取得できます。トグルがオンになると、他のキャラクターは視界からフェードアウトし、アクションがオフに切り替えられるまで見えなくなります。

フィルター

フィルターアクションを使用すると、プレイヤーはポップ、ソフト、アンティーク、キュート、ドラマティック、およびモノクロのオプションからプリセットフィルターを適用できます。

ポーズ

ポーズアクションを使用すると、プレイヤーは応援、拍手、イルカ、フロス、ギター、ジャンプウェーブ、ラウダー、トップロック、ツイール、およびウェーブのオプションからプリセットポーズを選択できます。

APIリファレンス

タイプ

アクション

各アクションは、以下のキーと値のペアを持つ辞書で表されます。

キータイプ説明
namestringアクションの名前で、ツールチップに最初に表示されます。
descriptionstringアクションの説明で、ツールチップのnameの後に表示されます。
iconstringアクションのアイコンのアセットID。
activeIconstringアクションの「アクティブ」状態のアイコンのアセットID。親アクションでのみ使用できます。
actionstableオプションのサブアクションのリスト。これにより、さまざまな他のアクションのサブメニューを作成できます。
parentActionアクションの親。これはサブアクションにのみ適用され、含まれているアクションを指します。
onActivatedfunctionオプションのコールバック関数で、プレイヤーがアクションまたはサブアクションをアクティブにしたときに実行されます。通常、アクションがサブアクションを含む場合、サブアクションのみがコールバックを定義する必要があります。これは、プレイヤーがサブアクションをアクティブにしたことを知る手段です。
LocalScript
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
SelfieMode.actionActivated:Connect(function(action)
print(action.name, "がアクティブになりました")
end)
SelfieMode.actionDeactivated:Connect(function(action)
print(action.name, "が非アクティブになりました")
end)

列挙型

SelfieMode.Action

SelfieModeには、いくつかのアクションが含まれています。この列挙型は、activateAction、deactivateAction、およびtoggleAction関数で使用できます。

名前概要
DepthOfField被写界深度アクションへの参照。
LockGaze視線を固定アクションへの参照。
HideOthers他のキャラクターを隠すアクションへの参照。
Filterフィルターアクションへの参照。
Poseポーズアクションへの参照。
LocalScript
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
-- "フィルター"アクションをアクティブにする
SelfieMode.activateAction(SelfieMode.Action.Filter)

関数

configure

configure(config: table)

configテーブル内の以下のキー/値を通じてデフォルトの設定オプションを上書きします。この関数は、LocalScriptからのみ呼び出すことができます。

キー説明デフォルト
disableCharacterMovementtrueの場合、セルフィーモードが開いている間、キャラクターの移動を防ぎます。false
depthOfFieldEffectプレイヤーが被写界深度アクションを切り替えたときに表示されるオプションのカスタムDepthOfFieldEffectインスタンス。
LocalScript - ConfigureSelfieMode
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
SelfieMode.configure({
disableCharacterMovement = true
})

openSelfieMode

openSelfieMode()

プレイヤーは通常、画面の右側にある「カメラ」ボタンでセルフィーモードを開きますが、この関数を使用するとコードを通じて開くことができます。以下のようにカスタムボタンを実装する場合、setHudButtonEnabledを通じてデフォルトボタンを無効にする必要があります。この関数は、LocalScriptからのみ呼び出すことができます。

LocalScript
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
local button = script.Parent
-- デフォルトボタンを削除
SelfieMode.setHudButtonEnabled(false)
-- カスタムボタンを接続
button.Activated:Connect(function()
SelfieMode.openSelfieMode()
end)

closeSelfieMode

closeSelfieMode()

プレイヤーは通常、画面の下部にある**⊗**ボタンでセルフィーモードを閉じますが、この関数を使用するとコードを通じて閉じることができます。LocalScriptからのみ呼び出すことができます。

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

isSelfieModeOpen

isSelfieModeOpen(): boolean

プレイヤーのアクションまたはopenSelfieModeを通じてセルフィーモードが開いている場合、trueを返します。この関数は、LocalScriptからのみ呼び出すことができます。

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

setHudButtonEnabled

setHudButtonEnabled()

セルフィーモードに入るためのデフォルトボタンが表示されるかどうかを設定します。カスタムUIボタンを通じてopenSelfieModeを実装する際に便利です。この関数は、LocalScriptからのみ呼び出すことができます。

LocalScript
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
local button = script.Parent
-- デフォルトボタンを削除
SelfieMode.setHudButtonEnabled(false)
-- カスタムボタンを接続
button.Activated:Connect(function()
SelfieMode.openSelfieMode()
end)

getAction

getAction(action: SelfieMode.Action): Action

SelfieMode.Action列挙型を通じてActionタイプを取得します。

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

activateAction

activateAction(action: SelfieMode.Action)

プログラム的にデフォルトのアクションの1つをアクティブにします。これは、プレイヤーがアクションバーからアクションをオンに切り替えたときと同じです。この関数は、LocalScriptからのみ呼び出すことができます。

LocalScript
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
-- "フィルター"アクションをアクティブにする
SelfieMode.activateAction(SelfieMode.Action.Filter)

deactivateAction

deactivateAction(action: SelfieMode.Action)

プログラム的にデフォルトのアクションの1つを非アクティブにします。これは、プレイヤーがアクションバーからアクションをオフに切り替えたときと同じです。この関数は、LocalScriptからのみ呼び出すことができます。

LocalScript
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
-- "フィルター"アクションを非アクティブにする
SelfieMode.deactivateAction(SelfieMode.Action.Filter)

toggleAction

toggleAction(action: SelfieMode.Action): boolean

アクションがオフの場合はオンに切り替え、オンの場合はオフに切り替えます。これは、プレイヤーがアクションバーからアクションをクリックしたときと同じです。新しい「オンに切り替えられた」状態をブール値として返します。この関数は、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("アクティブ化されました", lockGazeAction.name)
else
print("非アクティブ化されました", lockGazeAction.name)
end

setTheme

setTheme(theme: table)

セルフィーモードのテーマを設定します。これには、テキストサイズ、フォント、ボタン/ツールチップの色などが含まれます。この関数は、LocalScriptからのみ呼び出すことができます。

キー説明デフォルト
textSizeすべてのテキストのサイズ。16
fontすべてのUIで使用されるフォント(Enum.Font)。GothamMedium
paddingUI要素のレイアウトに使用されるメインパディング(UDim)。(0, 12)
paddingSmall要素間の微妙なマージンを適用するために使用される小さなパディング(UDim)。(0, 6)
paddingScreenセルフィーモードに余裕を持たせるために画面の端に使用されるパディング(UDim)。(0, 24)
backgroundColorアクションを表示するバーの背景色(Color3)。[0, 0, 0]
scrollBarColorモジュールのScrollingFrame要素で使用されるスクロールバーの色(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)

セルフィーモードが有効かどうかを設定します。無効にすると、モジュールのすべてのUIが削除され、すべてのイベントが切断されます。この関数は、LocalScriptからのみ呼び出すことができます。

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

イベント

selfieModeOpened

プレイヤーがセルフィーモードを開いたとき、またはopenSelfieModeが呼び出されたときに発火します。このイベントは、LocalScript内でのみ接続できます。

LocalScript
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
SelfieMode.selfieModeOpened:Connect(function()
print("セルフィーモードが開かれました")
end)

selfieModeClosed

プレイヤーがセルフィーモードを閉じたとき、またはcloseSelfieModeが呼び出されたときに発火します。このイベントは、LocalScript内でのみ接続できます。

LocalScript
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
SelfieMode.selfieModeClosed:Connect(function()
print("セルフィーモードが閉じられました")
end)

actionActivated

パラメータ
action: SelfieMode.Actionアクティブ化されたアクション。

アクションがアクティブ化されたときに発火します。これは、被写界深度、視線を固定、または他のキャラクターを隠すなどの主要なアクションの1つである可能性があります。または、フィルターやポーズなどのサブアクションである可能性もあります。接続された関数は、アクティブ化されたアクションを受け取ります。このイベントは、LocalScript内でのみ接続できます。

LocalScript
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
SelfieMode.actionActivated:Connect(function(action)
print(action.name, "がアクティブになりました")
end)

actionDeactivated

パラメータ
action: SelfieMode.Action非アクティブ化されたアクション。

主要なアクションまたはサブアクションが非アクティブ化されたときに発火します。接続された関数は、非アクティブ化されたアクションを受け取ります。このイベントは、LocalScript内でのみ接続できます。

LocalScript
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
SelfieMode.actionDeactivated:Connect(function(action)
print(action.name, "が非アクティブになりました")
end)

filterChanged

パラメータ
newFilter: string新しいフィルター。
oldFilter: string以前のフィルター。

フィルターが適用または削除されたときに発火します。接続された関数は、新しいフィルター名と古いフィルター名を受け取ります。このイベントは、LocalScript内でのみ接続できます。

LocalScript
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
SelfieMode.filterChanged:Connect(function(newFilter, oldFilter)
print("フィルターが", oldFilter, "から", newFilter, "に変更されました")
end)

poseChanged

パラメータ
newPose: string新しいポーズ。
oldPose: string以前のポーズ。

ポーズが適用または削除されたときに発火します。接続された関数は、新しいポーズ名と古いポーズ名を受け取ります。このイベントは、LocalScript内でのみ接続できます。

LocalScript
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage.SelfieMode)
SelfieMode.poseChanged:Connect(function(newPose, oldPose)
print("ポーズが", oldPose, "から", newPose, "に変更されました")
end)
©2026 Roblox Corporation。Roblox(ロブロックス)、RobloxロゴおよびPowering Imaginationは、米国並びにその他の国における登録商標および非登録商標です。