エレベーター は、プラットフォームユーザーが操作して、エクスペリエンスの1部から別の部分に移動できるものです。このデバイスは、ユーザーが作成した世界内の新しい領域に到達できるようにしたいときに便利です。このガイドでは、ユーザーが近接プロンプトと対話すると上下に昇降する自分のエレベーターを迅速に作成できます。
エレベーターを作成するには、次の方法に従って、それぞれのセクションを踏んで、どのようにするかを学んでください:
- 基本パーツを使用して、ユーザーが立つプラットフォームと、プラットフォームが上昇し下降することができるトラックを作成します。
- プラットフォームの動作を駆動するための PrismaticConstraint を構成する
- ユーザーがプラットフォームの動作を開始するために交流する ProximityPrompt を作成します。
- すべてのエレベーターのコンポーネントを接続し、プラットフォームがトラック沿いに移動できるようにするために Script を作成します。
プラットフォームとトラックを作成する
A Part は、色や素材などの外外見を変更するために移動したり、サイズを変更したり、回転したり、カスタマイズしたりできる RoblRoblox(ロブロックス)x の主要なビルディングブロックです。ベーシックパーツを使用してエレベーターの基礎を作成することは有用です、エレベーターのプラットフォームとトラックは基本形状のみを必要とするからです。
プラットフォームとエレベーターのトラックを作成するには:
ツールバーの モデル タブに移動します。
クリックして パーツ の下のドロップダウン矢印を選択し、 ブロック を選択します。ブロックパーツは、プラットフォームユーザーがエレベーターに乗り降りするワークスペースに表示されます。
エクスプローラ ウィンドウで、ブロックを選択し、 プロパティ ウィンドウで、
- Set 名 を プラットフォーム に設定します。
- Set サイズ を [8,1,4] に設定します。
エクスプローラ ウィンドウで、プラットフォームを選択し、CtrlD (⌘D を押して、パーツを複製します。この複製部品は、プラットフォームが上下移動するために使用するトラックになりそうです。
ツールバーで 移動 ツールを選択し、軸矢印の 1つを使用して、重複部品をオリジナルの位置から引き離し、それぞれのオブジェクト間に少しの隙間が生じます。
In the プロパティ window,
- Set 名前 を トラック に設定します。
- サイズ プロパティで、Y 軸を 20 スタッド高に設定します。
- 固定 プロパティを有効にします。
エクスプローラー ウィンドウで、両方のパーツを選択し、 ( ) を押してグループ化します。
モデルの名前を変更 エレベーター 。
ビューポートで、モデルは 2つの別のオブジェクトとして表示されます。エクスプローラーウィンドウで、モデルには別々のプラットフォームとトラックオブジェクトが含まれています。
プリズムコントライントを構成する
今、あなたはエレベーターの基礎を構成する 2つのパーツを持っているので、PrismaticConstraint を作成し、関連する添付ファイルを整列して、プラットフォームが理想的な道を移動し、制約の値を設定してプラットフォームがトラック上下に移動できるようにします。
プリズムコントライントと付属を作成する
A PrismaticConstraint は、2つの Attachments の間に剛性のあるジョイントを作成し、付属物を回転せずに1軸に沿ってスライドできるようにします。この種類の 制約 は、エレベーターに最適で、プラットフォームを単一の方向に保ちながら、上下に移動できます。
プリズムコントライントとその付属を作成するには:
エクスプローラー ウィンドウで、 トラック にプリズム制約を挿入します。
- Hover over トラック と ⊕ ボタンをクリックしてください。コンテキストメニューが表示されます。
- メニューから、 プリズム制約 を挿入します。
添付ファイルを トラック と プラットフォーム に挿入します。
Hover over トラック と ⊕ ボタンをクリックしてください。コンテキストメニューが表示されます。
メニューから、 添付ファイル を挿入します。
このプロセスを プラットフォーム に繰り返します。
両方の添付ファイル トラック添付ファイル と プラットフォーム添付ファイル の名前をそれぞれ変更する。
Select the プリズム制約 。
プロパティ ウィンドウで、添付ファイルをプリズム的制約に割り当てる。
PrismaticConstraint.Attachment0 プロパティを選択します。カーソルが変更されます。
In the エクスプローラー window, select トラック付属ファイル .
PrismaticConstraint.Attachment1 プロパティを選択します。カーソルが変更されます。
In the エクスプローラー window, select プラットフォーム添付 .
添付ファイルを整列
両方の添付ファイルを親パーツの中心におけるデフォルトの位置に保持すると、添付ファイルはそれぞれのパーツを内側に引っ張り、両方のパーツの物理が衝突してエレベーターが機能しなくなります。これが起こらないようにするには、親パーツの外に添付ファイルを移動して、プラットフォームがトラックの外側の障害のないスペースを自由に移動でき、それらをXとZ軸に沿って整列して、プラットフォームがY軸だけ上下に移動するようにします。
添付ファイルの再配置と整列を開始する前に、制限詳細を有効にしてビューポート内で表示できることを確認してください:
ツールバーの モデル タブに移動し、 制限 セクション。
現在有効でない場合は、 制約詳細 と 上部に描画 をクリックして、制約と付属の視覚補助を表示します。
各添付ファイルの視覚化を大きくするには、 スケール を増加します。
付属ファイルを表示することで、制約がどのように両方の付属ファイルを使用してプラットフォームを接続し、移動させているかを視覚化できます。
制限の付属を一致させるには:
ツールバーで 回転 ツールを選択し、 トラック添付ファイル と プラットフォーム添付ファイル を回転させて、それぞれの添付ファイルの黄色い矢印がY軸上に向上します。
移動 ツールを選択し、添付ポイントを両方が親部品の外側にあり、XとZ軸に沿って配置するように再配置します。
プリズムコントライント値を設定
今、 を持って、それに関連する を整えたので、プラットフォームがトラックの底と上部の動作範囲に相当する設定の低下と上昇を可能にするために使用できる制約の値を設定する時が来ました。トラックの底と上部がそれぞれ、トラックの中央にある トラック添付 の 20スタッドの長さのトラックから 10スタッド離れているため、制限の下限と上限はそれぞれ -10 と 10 です。


制限値を設定して、指定された動作範囲内でエレベーターの動作を有効にするには:
エクスプローラー ウィンドウで、 プリズム制約 を選択します。
プロパティ ウィンドウで、 スライダー セクションに移動し、サーボスタイルモーターでプラットフォームの動作範囲に制限を設定できる能力を有効にします。新しいプロパティフィールドの表示。
- 設定 制限を有効にする を 真にする に。
- Set アクチュエータタイプ to サーボ 。
ナビゲート to the 制限 セクション、然後、プラットフォームの移動範囲を上限と下限の中央に 10 スタッド上下に設定し、上限と下限に到達すると、弾力 (バウンス) がなくなります。次のプロパティを設定した後、低いおよび上限の視覚補助が新しい値に合うように延長します。
- 下限を設定 を -10 に。
- Set 返還 を 0 に設定します。
- 上限 を 10 に設定。
サーボ セクションに移動し、プラットフォームがプラットフォームに対して働く物理に耐えることができ、上下に速いペースで移動し、制約の下限の最下部に初期化ポイントがあることを確認します。
- Set ServoMaxForce を 10000 に設定します。
- Set 速度 を 10 に設定します。
- ターゲットポジション を -10 に設定。
近接プロンプトを作成する
A ProximityPrompt は、ユーザーのインタラクションを促進して、ドア、ライトスイッチ、ボタンなどの経験オブジェクトに近づくとアクションをトリガーするようにするオブジェクトです。このプロセスは、近接プロンプト を使用して、ユーザーがプラットフォームの近くにいるときにキーを押すことができるようにし、エレベーターの動作を有効にする。
近接プロンプトを作成するには:
エクスプローラー ウィンドウ で、 プラットフォーム をホバーし、 ⊕ ボタンをクリックします。コンテキストメニューを表示します。
メニューから、 近接プロンプト を挿入します。
スクリプトエレベーター動作
今、あなたのエレベーターのすべての要素が準備ができたので、すべてを一緒に動かし、プラットフォームを上下に移動させる Script を作成する時が来ました。
エレベーターの動作をスクリプトするには:
- エクスプローラ ウィンドウで、 エレベーター をホバーし、 ⊕ ボタンをクリックします。コンテキストメニューが表示されます。
- メニューから、 スクリプト を挿入します。
- 新しいスクリプトでは、フォロー中のものを入力します:
local platform = script.Parent.Platform
local prismaticConstraint = script.Parent.Track.PrismaticConstraint
platform.ProximityPrompt.Triggered:Connect(function(player)
print(prismaticConstraint.CurrentPosition)
if prismaticConstraint.CurrentPosition <= -9 then
prismaticConstraint.TargetPosition = 10
elseif prismaticConstraint.CurrentPosition >= 9 then
prismaticConstraint.TargetPosition = -10
end
end)
エクスペリエンスを プレイテストし 、エレベーターの近接プロンプトのキーを入力すると、スクリプトが実行され、プラットフォームが制限から 9 スタッド以下かどうかをチェックします。9スタッド以下であり、ユーザーが近接プロンプトと対話すると、プラットフォームは制限の上限に達するまで上昇します;逆に、9スタッド以上であり、ユーザーが近接プロンプトと対話すると、プラットフォームは制限の下限に達するまで下降します。