DragDetector

非推奨を表示

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

Class.DragDetector インスタンスは、ドアや引き出しを開くなど、エクスペリエンスで 3D オブジェクトとの交流を容易にし、お鼓励します。キー機能には、Key.Feature.Toggle() が含まれます。

  • Class.DragDetector を任意の BasePart または Model の下に配置して、1>マウス、タッチ、ゲームパッド、および VR1> を通じてドラッグ可能にするために、コードの 1行もなしですべてをドラッグ可能にします。

  • 複数の DragStyle オプションから選択し、オブジェクトがモーションに応答する方法を ResponseStyle で定義し、オプションでオーディオブリキや移動制限を適用します。

  • スクリプトは、ドラッグオブジェクトの操作に応答して、UI をドライブするか、理論的な決定を行うために、スライドウォールのスイッチの位置に基づくライトレベルを調整など、ドラッグオブジェクトを操作することができます。

  • プレイヤーはアンカー部品やモデルを操作できますが、リリース時に正確に配置した場所に保持されます。

  • Class.DragDetector|DragDetectors は Studio で作動し、 選択移動 、0> スケール0>、または DragDetectors3> ツールを使用していない限り、ドラッグ可能なオブジェクトをテストして調整しやすくします。

詳細と使用例については、3D ドラッグディテクター ガイドを参照してください。

概要

プロパティ

ClickDetector から継承した プロパティ

方法

イベント

  • DragContinue(playerWhoDragged : Player,cursorRay : Ray,viewFrame : CFrame,vrInputFrame : OptionalCoordinateFrame,isModeSwitchKeyDown : bool):RBXScriptSignal

    ユーザーが Class.DragDetector.DragStart|DragStart が初期化された後にオブジェクトをドラッグし続けると、ファイアが発生します。

  • DragEnd(playerWhoDragged : Player):RBXScriptSignal

    ユーザーがオブジェクトのドラッグを停止すると、ファイアが発動します。

  • DragStart(playerWhoDragged : Player,cursorRay : Ray,viewFrame : CFrame,hitFrame : CFrame,clickedPart : BasePart,vrInputFrame : OptionalCoordinateFrame,isModeSwitchKeyDown : bool):RBXScriptSignal

    ユーザーがオブジェクトをドラッグし始めると、ファイアが発生します。

ClickDetector から継承した イベント

プロパティ

ActivatedCursorIcon

ContentId
並列読み取り

この DragDetector の上にマウスポインタを置くと、カーソルアイコンが表示されます。このプロパティを空の場合は、探知機はデフォルトのアイコンを使用します。

アクティブなカーソルアイコンを変更するには、このプロパティを使用している画像のアセット ID に設定します。

ApplyAtCenterOfMass

並列読み取り

[デフォルト] を [ユーザーがクリックするポイント] で適用すると、制限力がオブジェクトの中心に適用されます。[Class.DragDetector.ResponseStyle|ResponseStyle] が [DragDetector.ResponseStyle.Physical] である場合、親オブジェクトがアンカーされていない場合にのみ適用されます。

複製されていません
並列読み取り

モーションの主軸は、参照フレームに対して表示されます。For a DragStyle の 5> Class.DragDetectorDragStyle.TranslateLine

DragFrame

並列読み取り

Class.DragDetector.ReferenceInstance|ReferenceInstance が設定する定されている場合、ピボットのフレームに対する pivot の CFrame は、CFrame のピボットのフレームに対する pivot の 1>Datatype.CFrame1> です。そうでない場合、ピボットのフレームに対する pivot の 4>Datatype.CFrame

並列読み取り

ень>DragDetectorDragStyle を参照してください。

Enabled

並列読み取り

Class.DragDetector は、ユーザーの入力に応答します。Class.DragDetector は、応答しません。

GamepadModeSwitchKeyCode

並列読み取り

ゲームパッドの入力中、Enum.KeyCode は、ドラッグディテクターの DragStyle との両方のモーションモードを切り替えるための KeyCode です。ドラッグディテクターの 2>Class.DragDetector.DragStyle|DragStyle2> がメインモードとして、ドラッグスタイルの 5>Class.DragDetector.DragStyle5>

KeyboardModeSwitchKeyCode

並列読み取り

キーボードの入力中、Enum.KeyCode は、ドラッグディテクターの DragStyle との両方のモーションモードを切り替えるために使用されます。このドラッグディテクターの Class.DragDetector.DragStyle|DragStyle には、主要モードとサブモードの両方のモーションモードが含まれています。

MaxDragAngle

並列読み取り

これが MinDragAngle より大きい場合、翻訳はその範囲内にカットされます。

これは制限ではありません; 単に、ドラッグディテクターの試みを制限して、限界内に保つために動作を生成しようとしています。 を参照してAddConstraintFunction() をドラッグに追加します。

Class.DragDetector.DragStyle|DragStyle が Enum.DragDetectorDragStyle.RotateAxis である場合にのみ関連します。

MaxDragTranslation

並列読み取り

任意の次元で、これが MinDragTranslation より大きい場合、翻訳はその範囲内にカットされます。

これは制限ではありません; 単に、ドラッグディテクターの試みを制限して、限界内に保つために動作を生成しようとしています。 を参照してAddConstraintFunction() をドラッグに追加します。

MaxForce

並列読み取り

オブジェクトが目標に到達するために適用される最大の力。 関連するのは、ResponseStyleEnum.DragDetectorResponseStyle.Physical であり、親オブジェクトがアンカーされていない場合のみです。

MaxTorque

並列読み取り

目標に到達するために適用される最大トルク。 関連するのは、ResponseStyle だけで、Enum.DragDetectorResponseStyle.Physical は親オブジェクトではありません。

MinDragAngle

並列読み取り

Class.DragDetector.MaxDragAngle|MaxDragAngle 以下の範囲内に翻訳されます。

これは制限ではありません; 単に、ドラッグディテクターの試みを制限して、限界内に保つために動作を生成しようとしています。 を参照してAddConstraintFunction() をドラッグに追加します。

Class.DragDetector.DragStyle|DragStyle が Enum.DragDetectorDragStyle.RotateAxis である場合にのみ関連します。

MinDragTranslation

並列読み取り

任意の次元で、MaxDragTranslation より小さい場合、翻訳はその範囲内にクランプされます。

これは制限ではありません; 単に、ドラッグディテクターの試みを制限して、限界内に保つために動作を生成しようとしています。 を参照してAddConstraintFunction() をドラッグに追加します。

Orientation

並列読み取り

参照フレームに対する YXZ 回転を指定します (参照フレーム自体のオリエントエリングを変更しません)。 ライニアルな変換と軸回りの回転は、この Y 軸の上のライン X 平面で行われます。この

並列読み取り

プレイヤーが DragDetector とインタラクトできるパーミッションレベルを制御します。デフォルトは Enum.DragDetectorPermissionPolicy.Everybody です。

ReferenceInstance

並列読み取り

ドラッグディテクターの参照フレームに CFrame があるインスタンス。DragFrame は、CFrame からの呼び出しを受信することができます。2>Class.DragDetector:GetReferenceFrame()|Get Reference Frame2>

このインスタンスが PVInstance である場合、参照フレームはそのピボットになります。Attachment である場合、参照フレームはその世界の CFrame に基づきます。

並列読み取り

提案された動作が計算され、可能に制限された場合、これは DragDetector に影響を与えるオブジェクトを移動するためのパラダイムです。Enum.DragDetectorResponseStyle オプションは、Class.DragDetector のオプションとして参照されます。

Responsiveness

並列読み取り

より高い値は、オブジェクトが目標に到達するのをより速く導きます。関連するのは、ResponseStyleEnum.DragDetectorResponseStyle.Physical であり、親オブジェクトがアンカーされていない場合のみです。

RunLocally

並列読み取り

Class.DragDetector.DragStart|DragStart 、DragContinueDragEnd など) をサーバーに送信します。これらは、カーソルレイを処理し、データモデルを変更し、クライアントに再プリケートするサーバーに送信され

[クライアントプロセス] は、クライアントが信号を処理し、サーバーに再プレーしないように自分で処理します。クライアントLocalScripts は、これらのイベントに応答するために使用され、クライアントRemoteEvents は、サーバーにレプリケートする必要がある変更を送信するため

SecondaryAxis

複製されていません
並列読み取り

動作のセカンダリ軸。Attachments と同じパラダイムを使用してオリエンテーションを変更します。

TrackballRadialPullFactor

並列読み取り

カーソルがトラックボールの外にあるとき、DragDetector は、ボールがカーソルに向かってロールしようとしているかのように径向きの引き出し回転を適用できます。このプロパティは、DragStyle

TrackballRollFactor

並列読み取り

カーソルがトラックボールの外にあるとき、DragDetector は、ボールをビニールレコードの表示向きにマウントするかのように回転させるロール回転を適用できます。このプロパティは、DragStyle

VRSwitchKeyCode

並列読み取り

VR の入力中、Enum.KeyCode は、ドラッグディテクターの DragStyle との両方のモーションモードを切り替えるための KeyCode です。ドラッグディテクターの 2>Class.DragDetector.DragStyle|DragStyle2> がプライマリモードとセカンダリモードの両方をサポートする場合にのみ適用さ

WorldAxis

複製されていません
並列読み取り

世界スペースに表現された Axis は、Attachments と同じパラダイムを使用してオリエンテーションを表現します。

WorldSecondaryAxis

複製されていません
並列読み取り

世界スペースに表現された Class.DragDetector.SecondaryAxis|SecondaryAxis は、Class.Attachments|Attachments と同じパラダイムを使用してオリエンテーションを表現します。

方法

AddConstraintFunction

提案された動作を変更または制限する機能を追加します。機能は、CFrame のより提案された動作 の入力を受信し、CFrame のより2> 変更後の動作2> の出力を返

追加の制限関数を削除するには、Disconnect() を返された接続オブジェクトに呼び出します。

パラメータ

priority: number

このメソッドを介して追加された関数の優先度のオーダー。上の値は、下の値より優先されます。

function: function

提案された動作を変更または制限する機能。この関数は、CFrame の入力を受け取り、提案された 動作とCFrame 動作の両方を返します。2>Datatype.CFrame2> の変更後、または5>Datatype.CFrame5> の変更前、両方が参照フレームに関連する。


戻り値

この接続オブジェクトを使用して、制限関数を削除します。

GetReferenceFrame

以下のモーションに対応する参照 CFrame を返します:ReferenceInstance プロパティの詳細は、「Class.DragDetector.ReferenceInstance|ReferencerInstance」を参照してください。


戻り値

移動中に表示される参照 CFrame

RestartDrag

void

新しいパラメーターを使用してドラッグを再起動するスクリプトから、DragStyleAxis または SecondaryAxis が変更されるように、ドラッグを再起動できます。


戻り値

void

SetDragStyleFunction

void

パスを使用する必要があり、DragStyleEnum.DragDetectorDragStyle.Scriptable に設定されている場合にのみ使用されます。 与えられた関数

関数が nil を返すと、オブジェクトは移動されません。これは、スクリプトが正しい答えを提供する必要がある場合、または一時的にオブジェクトを保持しておく必要がある場合に便利です。

パラメータ

function: function

Class.DragDetector.DragContinue|DragContinue シグナルのモニタリング機能。この機能は、シグナルのワールドスペースカーソルレイを受信し、CFrame を含む、世界スペースのピボットの位置と方向をモニターに表示します。この機能が nil を返すと、オブジ


戻り値

void

SetPermissionPolicyFunction

void

local dragDetector = script.Parent.DragDetector
dragDetector.PermissionPolicy = Enum.DragDetectorPermissionPolicy.Scriptable
dragDetector:SetPermissionPolicyFunction(function(player, part)
if player and player:GetAttribute("IsInTurn") then
return true
elseif part and not part:GetAttribute("IsDraggable") then
return false
else
return true
end
end)

パラメータ

function: function

探知機のインタラクティビテプレイヤーを設定する機能です。この機能は、Player パラメータを受


戻り値

void

イベント

DragContinue

ユーザーが Class.DragDetector.DragStart|DragStart が初期化された後にオブジェクトをドラッグし続けると、ファイアが発生します。

パラメータ

playerWhoDragged: Player

Class.Player がドラッグを開始した DragStart とドラッグを続けています。

cursorRay: Ray

Ray カーソルから放出され、シーンに照準を合わせます。

viewFrame: CFrame

CFrame のユーザーの Camera

vrInputFrame: OptionalCoordinateFrame

VR 入力デバイスを使用している場合、手にカーソル/ポインター/コントローラーを持っている手持ちデバイスの CFrame

isModeSwitchKeyDown: bool

ドラッグディテクターの DragStyle がプライマリモードとセカンダリモードの両方を持っている場合、このパラメータは、ユーザーが Class.DragDetector.KeyboardModeSwitchKeyCode|KeyboardModeSwitchKeyCode


DragEnd

ユーザーがオブジェクトのドラッグを停止すると、ファイアが発動します。

パラメータ

playerWhoDragged: Player

Class.Player が、DragStart を通じてドラッグを開始し、現在終了しました (リリース済みドラッグ)。


DragStart

ユーザーがオブジェクトをドラッグし始めると、ファイアが発生します。

パラメータ

playerWhoDragged: Player

Player がドラッグを開始したプレイヤー。

cursorRay: Ray

Ray カーソルから放出され、シーンに照準を合わせます。

viewFrame: CFrame

CFrame のユーザーの Camera

hitFrame: CFrame

ドラッグを開始したカーソルレイキャストのヒットフレーム。

clickedPart: BasePart

カーソルレイキャストがドラッグを開始した部分。

vrInputFrame: OptionalCoordinateFrame

VR 入力デバイスを使用している場合、手にカーソル/ポインター/コントローラーを持っている手持ちデバイスの CFrame

isModeSwitchKeyDown: bool

ドラッグディテクターの DragStyle がプライマリモードとセカンダリモードの両方を持っている場合、このパラメータは、ユーザーが Class.DragDetector.KeyboardModeSwitchKeyCode|KeyboardModeSwitchKeyCode