自撮りモード

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

プレイヤーはすでに経験の楽しい瞬間を記念するためにスクリーンショットを取っています。The 自撮りモード 開発者モジュール では、チャットウィンドウまたはプレイヤーリストなしで、その瞬間のよりクリーンなメモリをキャプチャすることができ、フィルター効果、他のキャラクターの隠れ、ポーズもサポートします。

モジュール使用法

インストール

エクスペリエンスで 自撮りモード モジュールを使用するには:

  1. ビュータブから、ツールボックスを開き、クリエイターストアタブを選択します。

    Toolbox toggle button in Studio
  2. モデル の順序が選択されていることを確認し、 すべて表示 ボタンをクリックして、 カテゴリ を選択します。

  3. ロケートしてクリックして 開発モジュール タイル。

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

  5. エクスプローラー ウィンドウで、 自撮りモード モデル全体を ServerScriptService に移動します。エクスペリエンスを実行すると、モジュールは複数のサービスに分配され、実行を開始します。

構成

モジュールはほとんどの使用ケースで動作するようプリコンフィグされていますが、configure 関数を通じて簡単にカスタマイズできます。

  1. In スタータープレイヤースクリプト , 新しい LocalScript を作成し、名前を 自撮りモードを構成する に変更します。

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

    ローカルスクリプト - ConfigureSelfieMode

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

キャラクター移動

自撮りモードでプレイヤーのキャラクターが動かないようにすると、便利かもしれません。これを達成するには、disableCharacterMovement設定 呼び出しで真に設定します。

ローカルスクリプト - ConfigureSelfieMode

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

自撮りモードアクション

自撮りモード は、次の アクション が付属しており、それぞれ activateActiondeactivateAction 、および toggleAction 機能を使用できます。または、actionActivated および actionDeactivated イベントを通じて検出できます。

深さ-フィールド

デフォルトでは、 自撮りモード は、プレイヤーがアクションを切り替えると、一般的な フィールド深度 効操作 (背景のぼかり)を表示します。

デフォルトのフィールド深度効果を変更するには、depthOfFieldEffectDepthOfFieldEffect インスタンスに設定し、構成 呼び出しで設定します。

ローカルスクリプト - ConfigureSelfieMode

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

視線をロック

カメラをロックする トグルは、プレイヤーのキャラクターが自撮りポーズを設定するとき、自分の首がどこまで動くかという現実的な範囲内でカメラを見るようにします。

他の人を隠す

デフォルトでは、他のキャラクターはプレイヤーのキャラクターの横に表示されます。プレイヤーは、 他の人を隠す ボタンをクリックすることで、完全なソロショットを得ることができます。オンに切り替えると、他のキャラクターは視界から消え、アクションが切り替オフるまで非表示のままです。

フィルタ

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

ポーズ

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

API リファレンス

タイプ

行動

各アクションは、次のキー-バリューペアで構成される辞書で表現されます:

キー種類説明
name文字列ツールチップで最初に表示され操作アクションの名前
description文字列アクションの説明、ツールチップで の後に表示されます。
icon文字列操作クションのアイコンのアセットID。
activeIcon文字列「アクティブ」状態のアクションのアイコンのアセットID。サブアクションでは使用できません。
actionsテーブルオプションのサブアクションのリスト。これにより、他のさまざまなアクションのサブメニュを作成できます。
parent行動アクショ操作の親; これはサブアクションにのみ適用され、それを含むアクションを指します。
onActivated機能プレイヤーがアクションまたはサブアクションを起動すると実行されるオプションのコールバック関数。通常、アクションにサブアクションが含まれている場合、プレイヤーがサブアクションを有効にし、親のアクショ操作を単に「拡張」しなかったかどうかを知るために定義されたコールバックが必要なのは、サブアクションのみです。
本地スクリプト

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)

枚数

Selfieモード.Action

自撮りモード には複数の アクション が付属しています。この列挙を使用することができます activateActiondeactivateAction 、および toggleAction 機能。

名前概要
DepthOfFieldフィールドの深さ アクション操作の参照。
LockGazeガゼをロックする アクション操作の参照。
HideOthers他を隠す アクション操作の参照。
Filterフィルタアクションへの参照。
Poseポーズアクションへの参照。
本地スクリプト

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))
-- 「フィルタ」アクション操作有効にする
SelfieMode.activateAction(SelfieMode.Action.Filter)

機能

設定する

環境設定(config: table )

次のキー/値を介してデフォルト設定オプションを上書きして、config テーブルの中の。この機能は LocalScript からのみ呼び出すことができます。

キー説明デフォルト
disableCharacterMovement真の場合、自撮りモードが開いている間、キャラクターが移動するのを防ぎます。
depthOfFieldEffectオプションのカスタム DepthOfFieldEffect インスタンスは、プレイヤーが フィールドの深さ アクションを切り替えると表示されます。
ローカルスクリプト - ConfigureSelfieMode

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

開けるSelfieモード

開けるSelfieモード()

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

本地スクリプト

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

閉じるSelfieモード

閉じるSelfieモード()

プレイヤーは通常、画面の下部にある ボタンで自撮りモードを閉じますが、この機能ではコードを介して閉じることができます。は LocalScript からのみ呼び出すことができます。

本地スクリプト

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

はSelfieModeOpenです

isSelfieModeOpen(): boolean

プレイヤーのアクションによって自撮りモードが開いた場合や openSelfieMode を通じて自撮りモードが開いた場合は、true を返します。この機能は LocalScript からのみ呼び出すことができます。

本地スクリプト

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

setHudボタン有効化

setHudボタン有効()

デフォルトのボタンが自撮りモードに入るかどうかを設定します。カスタム UI ボタンを介して openSelfieMode を実装するときに便利。この機能は LocalScript からのみ呼び出すことができます。

本地スクリプト

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

取得アクション

getAction(操作ction: 自撮りモード.Action ): アクション

Gets an アクション タイプを通じて SelfieMode.Action 枚数を取得します。

本地スクリプト

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

activateアクション

activateAction(操作ction: 自撮りモード.Action )

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

本地スクリプト

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))
-- 「フィルタ」アクション操作有効にする
SelfieMode.activateAction(SelfieMode.Action.Filter)

アクションを無効にするdeactivateAction

deactivateAction(操作ction: 自撮りモード.Action )

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

本地スクリプト

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SelfieMode = require(ReplicatedStorage:WaitForChild("SelfieMode"))
-- 「フィルタ」アクション操作無効にする
SelfieMode.deactivateAction(SelfieMode.Action.Filter)

トグルアクション

操作oggleAction(action: 自撮りモード.Action ): boolean

オフの場合は アクション を切り替え、オンの場合は切り替えをオフにします。これは、プレイヤーがアクションバーからアクションをクリックしたときと同じです。新しい「は切り替え済み」状態をボールーンで返します。は LocalScript からのみ呼び出すことができます。

本地スクリプト

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

設定テーマ

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]
本地スクリプト

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

設定した有効化

setEnabled(isEnabled: boolean )

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

本地スクリプト

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

イベント

selfieModeオープン

プレイヤーが自撮りモードを開いたり、openSelfieMode が呼び出されたときに発火します。このイベントは、LocalScript でしか接続できません。

本地スクリプト

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

自撮りモードが閉じた

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

本地スクリプト

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

アクションが有効化済み

パラメータ
操作クション: SelfieMode.Action有効になった アクション

アクションが有効になると発火します;これは、フィールドの深さガゼをロック、または他の人を隠すのような主要なアクションの 1つかもしれません;または、フィルターまたはポーズのようなサブアクションです。接続された関数は、有効になった アクション を受け取ります。このイベントは、LocalScript でのみ接続できます。

本地スクリプト

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

アクションが無効になった

パラメータ
操作クション: SelfieMode.Action無効化された アクション

プライマリアクションまたはサブアクションが無効になったときに発火します。接続された関数は、無効になった アクション を受け取ります。このイベントは、LocalScript でのみ接続できます。

本地スクリプト

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

フィルターが変更された

パラメータ
新フィルタ: string新しい並べ替えィルタ。
古いフィルタ: string前の並べ替えィルタ。

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

本地スクリプト

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)

ポーズが変更された

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

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

本地スクリプト

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)