ロブロックス(Roblox)スタジオのロープの作り方|上げ下げできる荷物・ブランコ・ばねのトランポリンを画像で解説

制作手順難易度: 上級所要時間: 約90分(目安)情報確認日: 2026年10月30日

「ロブロックスでロープにぶら下がる物を作りたい」「ブランコやトランポリンのように、揺れたり跳ねたりする物を作りたい」

ロブロックス(Roblox)スタジオでロープを使う方法を、実際の画像付きで誰でも簡単に分かるように解説します。配布モデルは使わず、「+」で入れた部品だけで作ります。ロープで荷物をぶら下げるところから始めて、ボタンで荷物を上げ下げするウインチ、座ってこぐブランコ、ばねで跳ねるトランポリンまで動かします。

上級ステップ19/40 前の記事:ロブロックス(Roblox)スタジオの飛行機の作り方 全体の順番を見る

使うもの:Roblox Studioが起動するパソコン、マウス、キーボード。座って操作する席(VehicleSeat)は飛行機の作り方でも使いました。

先に答え

知りたいこと答え
ロープはどうやってつなぐ?2つの部品にAttachment(印)を1つずつ入れて、RopeConstraintのAttachment0とAttachment1に入れる
ロープが見えないときは?RopeConstraintのVisibleにチェックを入れる。「+」で入れた直後は外れている
荷物を上げ下げするには?RopeConstraintのWinchEnabledにチェックを入れ、スクリプトでWinchTargetの長さを変える
座っても倒れないブランコは?座席にAlignOrientation(決めた向きに回す部品)を入れて、水平に保つ
トランポリンのばねは?SpringConstraint(ばね)で板を支え、乗ったらスクリプトでばねの長さとジャンプの高さを変える

今回の完成状態:下の画像のように、ロープで吊った荷物、ブランコ、トランポリンが1つの作品に並びます。赤い箱をマウスでクリックすると荷物が上がり、ブランコはWキーとSキーでこげて、トランポリンに乗ると高く跳ねれば成功です。

作るものと流れ

名前種類置く場所役目
CraneModelWorkspaceクレーンをまとめる入れ物
Post・ArmPartCraneの中クレーンの柱と腕
CratePartCraneの中ぶら下げる荷物
RopeRopeConstraintCrateの中ArmとCrateをつなぐロープ
ButtonPartCraneの中マウスでクリックすると荷物が上下する赤い箱
WinchScriptScriptCraneの中ボタンがクリックされたらロープの長さを変える
SwingModelWorkspaceブランコをまとめる入れ物
Top・LegL・LegRPartSwingの中ブランコの枠
SwingSeatVehicleSeatSwingの中座る席
RopeL・RopeRRopeConstraintSwingSeatの中枠と席をつなぐ2本のロープ
PushVectorForceSwingSeatの中席を前後に押す
KeepLevelAlignOrientationSwingSeatの中席を水平に保つ
SwingScriptScriptSwingの中WキーとSキーを見て押す向きを変える
TrampolineModelWorkspaceトランポリンをまとめる入れ物
Base・PadPartTrampolineの中土台と、人が乗る板
SliderPrismaticConstraintPadの中板が上下にだけ動くようにする
SpringSpringConstraintPadの中板を支えるばね
BounceScriptScriptTrampolineの中人が触れたら板をはね上げて人を跳ばす

部品の場所は、PositionなどのプロパティでBaseplateの上の決まった位置に置きます。置いた部品が3D画面に見えないときは、エクスプローラでその部品を押して選び、3D画面にマウスを乗せてFキーを押します。選んだ部品が3D画面のまん中に来ます。この記事の画像は、部品が見やすい位置までカメラを動かして撮っています。「+」で入れた部品は、Positionを入れるまで3D画面のまん中あたりに出るので、Sizeを入れる画像では写っていないことがあります。BrickColorの名前が見た目の色と違うことがありますが、Colorの数字が合っていれば大丈夫です。スタッドはRobloxの長さの単位です。

1. クレーンの柱と腕を作る

クレーンの入れ物(Crane)

新しいBaseplateを開きます。エクスプローラの「Workspace」にマウスを乗せて、右に出る「+」を押します(赤い枠)。画像の赤い枠は、その説明で押す場所や見る場所を示しています。画像を押すと大きく表示できます。

  1. 一覧の検索欄に「Model」と入れて、一覧の「Model」を押します(下の1枚目)
  2. エクスプローラでModelを選んだままF2キーを押し、名前を「Crane」に変えます(下の2枚目)

柱(Post)

プロパティ値理由
Size2, 20, 2高さ20の柱にする
Position(▼CFrameのすぐ下)-20, 10, -30スタートの台の左奥に立てる
Color240, 200, 0黄色にする(BrickColorは「Deep orange」になる)
Anchoredチェックを入れる柱が倒れないように固定する
  1. エクスプローラの「Crane」にマウスを乗せて「+」を押し、一覧の検索欄に「Part」と入れて「Part」を押します(下の1枚目)
  2. エクスプローラでPartを選んだままF2キーを押し、名前を「Post」に変えます(下の2枚目)
  3. Postを選んだまま、プロパティの検索欄に「Size」と入れ、名前がちょうど「Size」の欄に「2, 20, 2」と入れてEnterキーを押します(下の3枚目)
  4. 続けてPostを選んだまま、検索欄に「Position」と入れ、3つ並ぶうちのいちばん上、「▼CFrame」のすぐ下のPositionに「-20, 10, -30」と入れてEnterキーを押します(下の4枚目)
  5. 続けてPostを選んだまま、検索欄に「Color」と入れ、名前がちょうど「Color」の欄の右の数字を押して「240, 200, 0」と入れ、Enterキーを押します(下の5枚目)
  6. 続けてPostを選んだまま、検索欄に「Anchored」と入れ、右の四角を押してチェックを入れます(下の6枚目)

腕(Arm)

プロパティ値理由
Size14, 2, 2横に長い腕にする
Position(▼CFrameのすぐ下)-14, 19, -30柱の上から右へのばす
Color240, 200, 0柱と同じ黄色にする(BrickColorは「Deep orange」になる)
Anchoredチェックを入れる腕が落ちないように固定する
  1. エクスプローラの「Crane」にマウスを乗せて「+」を押し、一覧の検索欄に「Part」と入れて「Part」を押します(下の1枚目)
  2. エクスプローラでPartを選んだままF2キーを押し、名前を「Arm」に変えます(下の2枚目)
  3. Armを選んだまま、プロパティの検索欄に「Size」と入れ、名前がちょうど「Size」の欄に「14, 2, 2」と入れてEnterキーを押します(下の3枚目)
  4. 続けてArmを選んだまま、検索欄に「Position」と入れ、「▼CFrame」のすぐ下のPositionに「-14, 19, -30」と入れてEnterキーを押します(下の4枚目)
  5. 続けてArmを選んだまま、検索欄に「Color」と入れ、名前がちょうど「Color」の欄の右の数字を押して「240, 200, 0」と入れ、Enterキーを押します(下の5枚目)
  6. 続けてArmを選んだまま、検索欄に「Anchored」と入れ、右の四角を押してチェックを入れます(下の6枚目)

ロープを結ぶ印(TopAttachment)

ロープは部品に直接はつなげません。Attachment(アタッチメント)という印を部品の中に入れて、印と印をつなぎます。腕の先の下側に印を入れます。

  1. エクスプローラの「Arm」にマウスを乗せて「+」を押し、一覧の検索欄に「Attachment」と入れて「Attachment」を押します(下の1枚目)
  2. エクスプローラでAttachmentを選んだままF2キーを押し、名前を「TopAttachment」に変えます(下の2枚目)
  3. TopAttachmentを選んだまま、プロパティの検索欄に「Position」と入れ、「▼CFrame」のすぐ下のPositionに「5, -1, 0」と入れてEnterキーを押します(下の3枚目)

Attachmentの「5, -1, 0」は、Armのまん中から右へ5、下へ1の場所という意味です。

2. 荷物をロープでぶら下げる

荷物(Crate)

プロパティ値理由
Size4, 4, 44スタッド四方の箱にする
Position(▼CFrameのすぐ下)-9, 4, -30腕の印の真下に置く
Color150, 100, 50茶色にする(BrickColorは「Dark orange」になる)
Anchoredチェックを外したまま固定すると、ロープで動かせない(「+」で入れた直後は外れている)
  1. エクスプローラの「Crane」にマウスを乗せて「+」を押し、一覧の検索欄に「Part」と入れて「Part」を押します(下の1枚目)
  2. エクスプローラでPartを選んだままF2キーを押し、名前を「Crate」に変えます(下の2枚目)
  3. Crateを選んだまま、プロパティの検索欄に「Size」と入れ、名前がちょうど「Size」の欄に「4, 4, 4」と入れてEnterキーを押します(下の3枚目)
  4. 続けてCrateを選んだまま、検索欄に「Position」と入れ、「▼CFrame」のすぐ下のPositionに「-9, 4, -30」と入れてEnterキーを押します(下の4枚目)
  5. 続けてCrateを選んだまま、検索欄に「Color」と入れ、名前がちょうど「Color」の欄の右の数字を押して「150, 100, 50」と入れ、Enterキーを押します(下の5枚目)
  6. 続けてCrateを選んだまま、検索欄に「Anchored」と入れ、チェックが外れていることを確かめます(下の6枚目)

荷物の印(CrateAttachment)

  1. エクスプローラの「Crate」にマウスを乗せて「+」を押し、一覧の検索欄に「Attachment」と入れて「Attachment」を押します(下の1枚目)
  2. エクスプローラでAttachmentを選んだままF2キーを押し、名前を「CrateAttachment」に変えます(下の2枚目)
  3. CrateAttachmentを選んだまま、プロパティの検索欄に「Position」と入れ、「▼CFrame」のすぐ下のPositionに「0, 2, 0」と入れてEnterキーを押します(下の3枚目)

「0, 2, 0」は箱のまん中から上へ2の場所、つまり箱の上の面です。

ロープ(Rope)

RopeConstraintは、2つの印がLengthの長さより離れないようにする部品です。Lengthより近づくのは自由で、どちらの部品も自由に回れます(Robloxの公式の説明による働きです)。

プロパティ値理由
Attachment0TopAttachmentロープの上のはしを腕の印につなぐ
Attachment1CrateAttachmentロープの下のはしを箱の印につなぐ
Length12ロープの長さ。腕の印から箱の上の面までの長さに合わせる
Visibleチェックを入れるロープをテストの画面に見せる。「+」で入れた直後は外れている
Thickness0.2ロープの太さ。「+」で入れた直後は0.1
  1. エクスプローラの「Crate」にマウスを乗せて「+」を押し、一覧の検索欄に「RopeConstraint」と入れて「RopeConstraint」を押します(下の1枚目)
  2. エクスプローラでRopeConstraintを選んだままF2キーを押し、名前を「Rope」に変えます(下の2枚目)
  3. Ropeを選んだまま、プロパティの検索欄に「Attachment」と入れます。上の「Attachment0」の右の空の欄を押してから、エクスプローラのArmの中の「TopAttachment」を押します。続けて下の「Attachment1」の右の空の欄を押してから、エクスプローラのCrateの中の「CrateAttachment」を押します(下の3枚目。画像は次のLengthまで入れたあとの画面です)
  4. 続けてRopeを選んだまま、検索欄に「Length」と入れ、右の欄に「12」と入れてEnterキーを押します(下の4枚目)
  5. 続けてRopeを選んだまま、検索欄に「Visible」と入れ、右の四角を押してチェックを入れます(下の5枚目)
  6. 続けてRopeを選んだまま、検索欄に「Thickness」と入れ、右の欄に「0.2」と入れてEnterキーを押します(下の6枚目)

Ropeを選んでいるあいだは、3D画面にロープが線で表示されます。線の色は、Lengthを入れる前は赤、入れたあとはオレンジ色です。

テストでぶら下がるのを見る

3D画面の上の作品のタブ「Place1」を押して3D画面に戻り、F5キーでテストを始めます(タブの名前はパソコンによって違います)。Wキーで前へ歩き、Aキー・Dキーで左右を合わせながら荷物に近づきます。下の画像はテストの画面です。箱はAnchoredを外したままですが、ロープでぶら下がって地面に落ちません。

以下は、アソビシフト編集部が試した結果です。歩いて箱にぶつかると、箱は少し押されますが、ロープにぶら下がったまま落ちませんでした。

確かめ終わったら、Shift + F5キーでテストを停止します。

3. ボタンで荷物を上げ下げする

RopeConstraintには、ロープを自動で巻き取ったり、のばしたりするウインチの働きがあります。WinchEnabledにチェックを入れると、ロープの長さをWinchTargetの長さに近づけます(Robloxの公式の説明による働きです)。クリックするとWinchTargetが変わるボタンを作ります。

ボタン(Button)

プロパティ値理由
Size2, 3, 2押しやすい大きさの箱にする
Position(▼CFrameのすぐ下)-16, 1.5, -24柱の手前の地面に置く
Color200, 0, 0赤にする(BrickColorは「Crimson」になる)
Anchoredチェックを入れる動かないように固定する
  1. エクスプローラの「Crane」にマウスを乗せて「+」を押し、一覧の検索欄に「Part」と入れて「Part」を押します(下の1枚目)
  2. エクスプローラでPartを選んだままF2キーを押し、名前を「Button」に変えます(下の2枚目)
  3. Buttonを選んだまま、プロパティの検索欄に「Size」と入れ、名前がちょうど「Size」の欄に「2, 3, 2」と入れてEnterキーを押します(下の3枚目)
  4. 続けてButtonを選んだまま、検索欄に「Position」と入れ、「▼CFrame」のすぐ下のPositionに「-16, 1.5, -24」と入れてEnterキーを押します(下の4枚目)
  5. 続けてButtonを選んだまま、検索欄に「Color」と入れ、名前がちょうど「Color」の欄の右の数字を押して「200, 0, 0」と入れ、Enterキーを押します(下の5枚目)
  6. 続けてButtonを選んだまま、検索欄に「Anchored」と入れ、右の四角を押してチェックを入れます(下の6枚目)
  7. エクスプローラの「Button」にマウスを乗せて「+」を押し、一覧の検索欄に「ClickDetector」と入れて「ClickDetector」を押します(下の7枚目)。ClickDetectorは、部品がマウスでクリックされたことを知らせる部品です

WinchScript

  1. エクスプローラの「Crane」にマウスを乗せて「+」を押し、一覧の検索欄に「Script」と入れて「Script」を押します(下の1枚目)
  2. エクスプローラでScriptを選んだままF2キーを押し、名前を「WinchScript」に変えます(下の2枚目)
  3. WinchScriptを選んだまま、プロパティの検索欄に「RunContext」と入れ、「Legacy」になっていることを確かめます(下の3枚目)。RunContextはスクリプトが動く場所の設定で、Workspaceの中のScriptはLegacyのままで動きます

「+」でScriptを入れると、スクリプトの画面が開きます。上のタブが「WinchScript」になっていることを確かめます。中身を全部消して、次のコードを貼り付けます(コードの画面の中を押してからCtrl + Aキーで全部選び、Deleteキーで消します)。

-- ボタンを押すたびに荷物を上げ下げするスクリプト
local crane = script.Parent
local button = crane:WaitForChild("Button")
local crate = crane:WaitForChild("Crate")
local rope = crate:WaitForChild("Rope")

local LOW = 12 -- 下げたときのロープの長さ
local HIGH = 3 -- 上げたときのロープの長さ

button.ClickDetector.MouseClick:Connect(function()
	if rope.WinchTarget == LOW then
		rope.WinchTarget = HIGH
	else
		rope.WinchTarget = LOW
	end
end)
コードの部分していること
LOW荷物を下げたときのロープの長さ。LOWで決めた12は、Lengthに入れた12と同じ長さ
HIGH荷物を上げたときのロープの長さ。HIGHで決めた3まで短くなる
button.ClickDetector.MouseClickButtonがマウスでクリックされたときに動く
rope.WinchTargetウインチが目指すロープの長さ。今の値がLOWならHIGHに、それ以外ならLOWに入れかえる

Ropeのウインチをオンにする

3D画面の上の作品のタブ「Place1」を押して3D画面に戻ります。

プロパティ値理由
WinchEnabledチェックを入れるウインチの働きをオンにする
WinchTarget12最初のロープの長さ。「+」で入れた直後は5なので、そのままだとテストの開始と同時に荷物が上がる
WinchSpeed6ロープの長さが変わる速さ。「+」で入れた直後は2
  1. エクスプローラのCrateの中の「Rope」を押して選びます。プロパティの検索欄に「Winch」と入れ、下の「WinchEnabled」の右の四角を押してチェックを入れます(下の1枚目)
  2. 続けてRopeを選んだまま、検索欄に「WinchTarget」と入れ、右の欄に「12」と入れてEnterキーを押します(下の2枚目)
  3. 続けてRopeを選んだまま、検索欄に「WinchSpeed」と入れ、右の欄に「6」と入れてEnterキーを押します(下の3枚目)

テストで上げ下げする

3D画面の上の作品のタブ「Place1」を押して3D画面に戻り、F5キーでテストを始めます(タブの名前はパソコンによって違います)。Wキーで前へ歩き、Aキー・Dキーで左右を合わせて赤い箱に近づきます。

  1. 赤い箱にマウスを乗せると、マウスの形が手に変わります(下の1枚目)
  2. そのままクリックすると、荷物が上がり始めます(下の2枚目)
  3. 荷物が腕の近くまで上がって止まります(下の3枚目では、荷物が画面の上のほうに見えています)
  4. もう一度赤い箱をクリックすると、荷物が下がります(下の4枚目)

以下は、アソビシフト編集部が試した結果です。赤い箱をクリックすると、荷物は2秒ほどで腕の近くまで上がって止まりました。ロープの長さが、HIGHで決めた3になった所です。もう一度クリックすると、同じように元の高さへ下りました。

確かめ終わったら、Shift + F5キーでテストを停止します。

4. ブランコの枠を作る

エクスプローラの「Crane」の左の▼を押して閉じておくと、次の部品が見やすくなります。

ブランコの入れ物(Swing)

  1. エクスプローラの「Workspace」にマウスを乗せて「+」を押し、一覧の検索欄に「Model」と入れて「Model」を押します(下の1枚目)
  2. エクスプローラでModelを選んだままF2キーを押し、名前を「Swing」に変えます(下の2枚目)

上の棒(Top)

プロパティ値理由
Size14, 1, 1横に長い棒にする
Position(▼CFrameのすぐ下)0, 15, -30高さ15の所に置く
Color110, 70, 40焦げ茶色にする(BrickColorは「Reddish brown」になる)
Anchoredチェックを入れる落ちないように固定する
  1. エクスプローラの「Swing」にマウスを乗せて「+」を押し、一覧の検索欄に「Part」と入れて「Part」を押します(下の1枚目)
  2. エクスプローラでPartを選んだままF2キーを押し、名前を「Top」に変えます(下の2枚目)
  3. Topを選んだまま、プロパティの検索欄に「Size」と入れ、名前がちょうど「Size」の欄に「14, 1, 1」と入れてEnterキーを押します(下の3枚目)
  4. 続けてTopを選んだまま、検索欄に「Position」と入れ、「▼CFrame」のすぐ下のPositionに「0, 15, -30」と入れてEnterキーを押します(下の4枚目)
  5. 続けてTopを選んだまま、検索欄に「Color」と入れ、名前がちょうど「Color」の欄の右の数字を押して「110, 70, 40」と入れ、Enterキーを押します(下の5枚目)
  6. 続けてTopを選んだまま、検索欄に「Anchored」と入れ、右の四角を押してチェックを入れます(下の6枚目)

ロープを結ぶ印(TopL・TopR)

  1. エクスプローラの「Top」にマウスを乗せて「+」を押し、一覧の検索欄に「Attachment」と入れて「Attachment」を押します(下の1枚目)
  2. エクスプローラでAttachmentを選んだままF2キーを押し、名前を「TopL」に変えます(下の2枚目)
  3. TopLを選んだまま、プロパティの検索欄に「Position」と入れ、「▼CFrame」のすぐ下のPositionに「-2, -0.5, 0」と入れてEnterキーを押します(下の3枚目)
  4. エクスプローラの「Top」にマウスを乗せて「+」を押し、一覧の検索欄に「Attachment」と入れて「Attachment」を押します(下の4枚目)
  5. エクスプローラでAttachmentを選んだままF2キーを押し、名前を「TopR」に変えます(下の5枚目)
  6. TopRを選んだまま、プロパティの検索欄に「Position」と入れ、「▼CFrame」のすぐ下のPositionに「2, -0.5, 0」と入れてEnterキーを押します(下の6枚目)

脚(LegL・LegR)

プロパティ値理由
Size1, 15, 1高さ15の脚にする
Position(▼CFrameのすぐ下)-6.5, 7.5, -30上の棒の左のはしの下に立てる
Color110, 70, 40上の棒と同じ焦げ茶色にする(BrickColorは「Reddish brown」になる)
Anchoredチェックを入れる倒れないように固定する
  1. エクスプローラの「Swing」にマウスを乗せて「+」を押し、一覧の検索欄に「Part」と入れて「Part」を押します(下の1枚目)
  2. エクスプローラでPartを選んだままF2キーを押し、名前を「LegL」に変えます(下の2枚目)
  3. LegLを選んだまま、プロパティの検索欄に「Size」と入れ、名前がちょうど「Size」の欄に「1, 15, 1」と入れてEnterキーを押します(下の3枚目)
  4. 続けてLegLを選んだまま、検索欄に「Position」と入れ、「▼CFrame」のすぐ下のPositionに「-6.5, 7.5, -30」と入れてEnterキーを押します(下の4枚目)
  5. 続けてLegLを選んだまま、検索欄に「Color」と入れ、名前がちょうど「Color」の欄の右の数字を押して「110, 70, 40」と入れ、Enterキーを押します(下の5枚目)
  6. 続けてLegLを選んだまま、検索欄に「Anchored」と入れ、右の四角を押してチェックを入れます(下の6枚目)
  7. エクスプローラでLegLを選んだ状態でCtrl + Dキーを押します。同じ部品が複製され、複製した「LegL」が選ばれた状態になります(下の7枚目)
  8. 選ばれている複製のLegLのままF2キーを押し、名前を「LegR」に変えます(下の8枚目)
  9. LegRを選んだまま、プロパティの検索欄に「Position」と入れ、「▼CFrame」のすぐ下のPositionに「6.5, 7.5, -30」と入れてEnterキーを押します(下の9枚目)

5. 座席をロープで吊る

座席(SwingSeat)

プロパティ値理由
Position(▼CFrameのすぐ下)0, 3, -30枠のまん中の、地面の少し上に置く

座席の向きは変えません。Anchoredも外れたままにします。

  1. エクスプローラの「Swing」にマウスを乗せて「+」を押し、一覧の検索欄に「VehicleSeat」と入れて「VehicleSeat」を押します(下の1枚目)
  2. エクスプローラでVehicleSeatを選んだままF2キーを押し、名前を「SwingSeat」に変えます(下の2枚目)
  3. SwingSeatを選んだまま、プロパティの検索欄に「Position」と入れ、「▼CFrame」のすぐ下のPositionに「0, 3, -30」と入れてEnterキーを押します(下の3枚目)

座席の印(SeatL・SeatR)

  1. エクスプローラの「SwingSeat」にマウスを乗せて「+」を押し、一覧の検索欄に「Attachment」と入れて「Attachment」を押します(下の1枚目)
  2. エクスプローラでAttachmentを選んだままF2キーを押し、名前を「SeatL」に変えます(下の2枚目)
  3. SeatLを選んだまま、プロパティの検索欄に「Position」と入れ、「▼CFrame」のすぐ下のPositionに「-2, 0, 0」と入れてEnterキーを押します(下の3枚目)
  4. エクスプローラの「SwingSeat」にマウスを乗せて「+」を押し、一覧の検索欄に「Attachment」と入れて「Attachment」を押します(下の4枚目)
  5. エクスプローラでAttachmentを選んだままF2キーを押し、名前を「SeatR」に変えます(下の5枚目)
  6. SeatRを選んだまま、プロパティの検索欄に「Position」と入れ、「▼CFrame」のすぐ下のPositionに「2, 0, 0」と入れてEnterキーを押します(下の6枚目)

左のロープ(RopeL)

プロパティ値理由
Attachment0TopL上の棒の左の印につなぐ
Attachment1SeatL座席の左の印につなぐ
Length11.5座席が地面に着かない長さにする
Visibleチェックを入れるロープをテストの画面に見せる
Thickness0.2荷物のロープと同じ太さにする
  1. エクスプローラの「SwingSeat」にマウスを乗せて「+」を押し、一覧の検索欄に「RopeConstraint」と入れて「RopeConstraint」を押します(下の1枚目)
  2. エクスプローラでRopeConstraintを選んだままF2キーを押し、名前を「RopeL」に変えます(下の2枚目)
  3. RopeLを選んだまま、プロパティの検索欄に「Attachment」と入れます。上の「Attachment0」の右の空の欄を押してから、エクスプローラのTopの中の「TopL」を押します(Topの中が見えないときは、エクスプローラを下へスクロールします)。続けて下の「Attachment1」の右の空の欄を押してから、エクスプローラのSwingSeatの中の「SeatL」を押します(下の3枚目)
  4. 続けてRopeLを選んだまま、検索欄に「Length」と入れ、右の欄に「11.5」と入れてEnterキーを押します(下の4枚目)
  5. 続けてRopeLを選んだまま、検索欄に「Visible」と入れ、右の四角を押してチェックを入れます(下の5枚目)
  6. 続けてRopeLを選んだまま、検索欄に「Thickness」と入れ、右の欄に「0.2」と入れてEnterキーを押します(下の6枚目)

右のロープ(RopeR)

プロパティ値理由
Attachment0TopR上の棒の右の印につなぐ
Attachment1SeatR座席の右の印につなぐ
Length11.5左のロープと同じ長さにする
Visibleチェックを入れるロープをテストの画面に見せる
Thickness0.2左のロープと同じ太さにする
  1. エクスプローラの「SwingSeat」にマウスを乗せて「+」を押し、一覧の検索欄に「RopeConstraint」と入れて「RopeConstraint」を押します(下の1枚目)
  2. エクスプローラでRopeConstraintを選んだままF2キーを押し、名前を「RopeR」に変えます(下の2枚目)
  3. RopeRを選んだまま、プロパティの検索欄に「Attachment」と入れます。上の「Attachment0」の右の空の欄を押してから、エクスプローラのTopの中の「TopR」を押します(Topの中が見えないときは、エクスプローラを下へスクロールします)。続けて下の「Attachment1」の右の空の欄を押してから、エクスプローラのSwingSeatの中の「SeatR」を押します(下の3枚目)
  4. 続けてRopeRを選んだまま、検索欄に「Length」と入れ、右の欄に「11.5」と入れてEnterキーを押します(下の4枚目)
  5. 続けてRopeRを選んだまま、検索欄に「Visible」と入れ、右の四角を押してチェックを入れます(下の5枚目)
  6. 続けてRopeRを選んだまま、検索欄に「Thickness」と入れ、右の欄に「0.2」と入れてEnterキーを押します(下の6枚目)

6. ブランコをこげるようにする

座席に2つの部品を足します。

  • VectorForceは、つないだ印に決めた力をかけ続ける部品です。これで座席を前後に押します
  • AlignOrientationは、印の向きを決めた向きにそろえる部品です。これで座席を水平に保ちます

ロープが左右の2本だけなので、座席は左右の印を結ぶ線を軸にして前後に回れます。AlignOrientationを入れないと、座った人の重さで座席がひっくり返ります。

力をかける印(PushAttachment)

  1. エクスプローラの「SwingSeat」にマウスを乗せて「+」を押し、一覧の検索欄に「Attachment」と入れて「Attachment」を押します(下の1枚目)
  2. エクスプローラでAttachmentを選んだままF2キーを押し、名前を「PushAttachment」に変えます(下の2枚目)。Positionは「0, 0, 0」のまま変えません

押す部品(Push)

プロパティ値理由
Attachment0PushAttachment座席の印に力をかける
ApplyAtCenterOfMassチェックを入れる座席の重さの中心を押す。「+」で入れた直後は外れている

押す力の大きさと向きは、このあとスクリプトが入れます。

  1. エクスプローラの「SwingSeat」にマウスを乗せて「+」を押し、一覧の検索欄に「VectorForce」と入れて「VectorForce」を押します(下の1枚目)
  2. エクスプローラでVectorForceを選んだままF2キーを押し、名前を「Push」に変えます(下の2枚目)
  3. Pushを選んだまま、プロパティの検索欄に「Attachment」と入れます。「Attachment0」の右の空の欄を押してから、エクスプローラのSwingSeatの中の「PushAttachment」を押します(下の3枚目)
  4. 続けてPushを選んだまま、検索欄に「ApplyAt」と入れ、「ApplyAtCenterOfMass」の右の四角を押してチェックを入れます(下の4枚目)

水平に保つ部品(KeepLevel)

プロパティ値理由
ModeOneAttachment(一覧から選ぶ)印1つだけを決めた向きにそろえる。「+」で入れた直後はTwoAttachment
Attachment0PushAttachment座席の印の向きをそろえる
MaxTorque1000000回す力の上限。「+」で入れた直後は10000
Responsiveness50向きをそろえる早さ

向きの値(CFrame)は変えません。「+」で入れた直後は回転のない向きなので、座席は水平のまま保たれます。

  1. エクスプローラの「SwingSeat」にマウスを乗せて「+」を押し、一覧の検索欄に「AlignOrientation」と入れて「AlignOrientation」を押します(下の1枚目)
  2. エクスプローラでAlignOrientationを選んだままF2キーを押し、名前を「KeepLevel」に変えます(下の2枚目)
  3. KeepLevelを選んだまま、プロパティの検索欄に「Mode」と入れ、右の「TwoAttachment」を押して開く一覧から「OneAttachment」を押します(下の3枚目)
  4. 続けてKeepLevelを選んだまま、検索欄に「Attachment0」と入れます。右の空の欄を押してから、エクスプローラのSwingSeatの中の「PushAttachment」を押します(下の4枚目)
  5. 続けてKeepLevelを選んだまま、検索欄に「MaxTorque」と入れ、右の欄に「1000000」と入れてEnterキーを押します(下の5枚目)
  6. 続けてKeepLevelを選んだまま、検索欄に「Responsiveness」と入れ、右の欄に「50」と入れてEnterキーを押します(下の6枚目)

SwingScript

  1. エクスプローラの「Swing」にマウスを乗せて「+」を押し、一覧の検索欄に「Script」と入れて「Script」を押します(下の1枚目)
  2. エクスプローラでScriptを選んだままF2キーを押し、名前を「SwingScript」に変えます(下の2枚目)
  3. SwingScriptを選んだまま、プロパティの検索欄に「RunContext」と入れ、「Legacy」になっていることを確かめます(下の3枚目)

上のタブが「SwingScript」になっていることを確かめます。中身を全部消して、次のコードを貼り付けます(コードの画面の中を押してからCtrl + Aキーで全部選び、Deleteキーで消します)。

-- 座ってWキー・Sキーでブランコをこぐスクリプト
local swing = script.Parent
local seat = swing:WaitForChild("SwingSeat")
local push = seat:WaitForChild("Push")

local PUSH_FORCE = 600 -- こぐ力の強さ

game:GetService("RunService").Heartbeat:Connect(function()
	push.Force = Vector3.new(0, 0, -seat.ThrottleFloat * PUSH_FORCE)
end)
コードの部分していること
seat.ThrottleFloat座席でWキーを押すと1、Sキーで-1、何もしないと0になる数
PUSH_FORCEこぐ力の強さ。PUSH_FORCEで決めた600の力で押す
push.ForcePushが座席を押す力。3つの数はX・Y・Zの向きで、Zの向きだけに入れている
game:GetService("RunService").Heartbeat1秒に何十回も、中の処理をくり返す

テストでこぐ

3D画面の上の作品のタブ「Place1」を押して3D画面に戻り、F5キーでテストを始めます(タブの名前はパソコンによって違います)。

  1. Wキーで前へ歩き、Aキー・Dキーで左右を合わせて、ブランコの手前まで進みます(下の1枚目)
  2. 座席の手前からWキーで歩いて座席に触れると座れます。座ると、画面の下に「速度」の表示が出ます(下の2枚目)
  3. Wキーを0.6秒ほど押して離し、Sキーを0.6秒ほど押して離します。これを交互にくり返すと、少しずつ大きく揺れます(下の3枚目と4枚目)
  4. 座席から下りるときは、Spaceキーを押します

以下は、アソビシフト編集部が試した結果です。WキーとSキーを0.6秒ほどずつ交互に押し続けると、画面の下の速度の表示は30ほどまで上がり、座席は水平のまま前後に大きく揺れました。キーを離しても揺れはすぐには止まらず、少しずつ小さくなりました。

確かめ終わったら、Shift + F5キーでテストを停止します。

7. ばねのトランポリンを作る

エクスプローラの「Swing」の左の▼を押して閉じておきます。トランポリンは、次の2つの部品で板を支えます。

  • SpringConstraint(ばね)は、2つの印の間にばねの力をかけます。FreeLength(ばねの自然な長さ)より近いと押し離し、遠いと引き寄せます(Robloxの公式の説明による働きです)
  • PrismaticConstraintは、2つの印が1つの向きにだけすべるようにする部品です(Robloxの公式の説明による働きです)。編集部の試しでは、これを切ると板が傾いて土台の上に下りました

トランポリンの入れ物(Trampoline)

  1. エクスプローラの「Workspace」にマウスを乗せて「+」を押し、一覧の検索欄に「Model」と入れて「Model」を押します(下の1枚目)
  2. エクスプローラでModelを選んだままF2キーを押し、名前を「Trampoline」に変えます(下の2枚目)

土台(Base)

プロパティ値理由
Size10, 1, 10板より少し大きい土台にする
Position(▼CFrameのすぐ下)24, 0.5, -30ブランコの右に置く
Color60, 60, 60濃い灰色にする(BrickColorは「Medium brown」になる)
Anchoredチェックを入れる動かないように固定する
  1. エクスプローラの「Trampoline」にマウスを乗せて「+」を押し、一覧の検索欄に「Part」と入れて「Part」を押します(下の1枚目)
  2. エクスプローラでPartを選んだままF2キーを押し、名前を「Base」に変えます(下の2枚目)
  3. Baseを選んだまま、プロパティの検索欄に「Size」と入れ、名前がちょうど「Size」の欄に「10, 1, 10」と入れてEnterキーを押します(下の3枚目)
  4. 続けてBaseを選んだまま、検索欄に「Position」と入れ、「▼CFrame」のすぐ下のPositionに「24, 0.5, -30」と入れてEnterキーを押します(下の4枚目)
  5. 続けてBaseを選んだまま、検索欄に「Color」と入れ、名前がちょうど「Color」の欄の右の数字を押して「60, 60, 60」と入れ、Enterキーを押します(下の5枚目)
  6. 続けてBaseを選んだまま、検索欄に「Anchored」と入れ、右の四角を押してチェックを入れます(下の6枚目)

土台の印(BaseAttachment)

プロパティ値理由
Position(▼CFrameのすぐ下)0, 0.5, 0土台の上の面に置く
Orientation(▼CFrameのすぐ下)0, 0, 90印の向きを立てて、板が上下にすべるようにする
  1. エクスプローラの「Base」にマウスを乗せて「+」を押し、一覧の検索欄に「Attachment」と入れて「Attachment」を押します(下の1枚目)
  2. エクスプローラでAttachmentを選んだままF2キーを押し、名前を「BaseAttachment」に変えます(下の2枚目)
  3. BaseAttachmentを選んだまま、プロパティの検索欄に「Position」と入れ、「▼CFrame」のすぐ下のPositionに「0, 0.5, 0」と入れてEnterキーを押します(下の3枚目)
  4. 続けてBaseAttachmentを選んだまま、検索欄に「Orientation」と入れ、「▼CFrame」のすぐ下のOrientationに「0, 0, 90」と入れてEnterキーを押します(下の4枚目)

板(Pad)

プロパティ値理由
Size8, 1, 8人が乗る板にする
Position(▼CFrameのすぐ下)24, 3.5, -30土台の少し上に置く
Color0, 160, 220水色にする(BrickColorは「Cyan」になる)
Anchoredチェックを外したまま固定すると、ばねで動かない(「+」で入れた直後は外れている)
  1. エクスプローラの「Trampoline」にマウスを乗せて「+」を押し、一覧の検索欄に「Part」と入れて「Part」を押します(下の1枚目)
  2. エクスプローラでPartを選んだままF2キーを押し、名前を「Pad」に変えます(下の2枚目)
  3. Padを選んだまま、プロパティの検索欄に「Size」と入れ、名前がちょうど「Size」の欄に「8, 1, 8」と入れてEnterキーを押します(下の3枚目)
  4. 続けてPadを選んだまま、検索欄に「Position」と入れ、「▼CFrame」のすぐ下のPositionに「24, 3.5, -30」と入れてEnterキーを押します(下の4枚目)
  5. 続けてPadを選んだまま、検索欄に「Color」と入れ、名前がちょうど「Color」の欄の右の数字を押して「0, 160, 220」と入れ、Enterキーを押します(下の5枚目)
  6. 続けてPadを選んだまま、検索欄に「Anchored」と入れ、チェックが外れていることを確かめます(下の6枚目)

板の印(PadAttachment)

プロパティ値理由
Position(▼CFrameのすぐ下)0, -0.5, 0板の下の面に置く
Orientation(▼CFrameのすぐ下)0, 0, 90土台の印と同じ向きにそろえる
  1. エクスプローラの「Pad」にマウスを乗せて「+」を押し、一覧の検索欄に「Attachment」と入れて「Attachment」を押します(下の1枚目)
  2. エクスプローラでAttachmentを選んだままF2キーを押し、名前を「PadAttachment」に変えます(下の2枚目)
  3. PadAttachmentを選んだまま、プロパティの検索欄に「Position」と入れ、「▼CFrame」のすぐ下のPositionに「0, -0.5, 0」と入れてEnterキーを押します(下の3枚目)
  4. 続けてPadAttachmentを選んだまま、検索欄に「Orientation」と入れ、「▼CFrame」のすぐ下のOrientationに「0, 0, 90」と入れてEnterキーを押します(下の4枚目)

上下にだけ動かす部品(Slider)

プロパティ値理由
Attachment0BaseAttachment土台の印につなぐ
Attachment1PadAttachment板の印につなぐ
LimitsEnabledチェックを入れる動ける範囲を決める
LowerLimit1土台と板の間がこれより狭くならない
UpperLimit6土台と板の間がこれより広くならない
  1. エクスプローラの「Pad」にマウスを乗せて「+」を押し、一覧の検索欄に「PrismaticConstraint」と入れて「PrismaticConstraint」を押します(下の1枚目)
  2. エクスプローラでPrismaticConstraintを選んだままF2キーを押し、名前を「Slider」に変えます(下の2枚目)
  3. Sliderを選んだまま、プロパティの検索欄に「Attachment」と入れます。上の「Attachment0」の右の空の欄を押してから、エクスプローラのBaseの中の「BaseAttachment」を押します。続けて下の「Attachment1」の右の空の欄を押してから、エクスプローラのPadの中の「PadAttachment」を押します(下の3枚目)
  4. 続けてSliderを選んだまま、検索欄に「LimitsEnabled」と入れ、右の四角を押してチェックを入れます(下の4枚目)
  5. 続けてSliderを選んだまま、検索欄に「LowerLimit」と入れ、右の欄に「1」と入れてEnterキーを押します(下の5枚目)
  6. 続けてSliderを選んだまま、検索欄に「UpperLimit」と入れ、右の欄に「6」と入れてEnterキーを押します(下の6枚目)

ばね(Spring)

プロパティ値理由
Attachment0BaseAttachment土台の印につなぐ
Attachment1PadAttachment板の印につなぐ
FreeLength2ばねの自然な長さ。「+」で入れた直後は1
Stiffness20000ばねの強さ。「+」で入れた直後は0で、0のままだと板を支えられない
Damping200揺れが止まる早さ。「+」で入れた直後は0
Visibleチェックを入れるばねをテストの画面に見せる。「+」で入れた直後は外れている
  1. エクスプローラの「Pad」にマウスを乗せて「+」を押し、一覧の検索欄に「SpringConstraint」と入れて「SpringConstraint」を押します(下の1枚目)
  2. エクスプローラでSpringConstraintを選んだままF2キーを押し、名前を「Spring」に変えます(下の2枚目)
  3. Springを選んだまま、プロパティの検索欄に「Attachment」と入れます。上の「Attachment0」の右の空の欄を押してから、エクスプローラのBaseの中の「BaseAttachment」を押します。続けて下の「Attachment1」の右の空の欄を押してから、エクスプローラのPadの中の「PadAttachment」を押します(下の3枚目)
  4. 続けてSpringを選んだまま、検索欄に「FreeLength」と入れ、右の欄に「2」と入れてEnterキーを押します(下の4枚目)
  5. 続けてSpringを選んだまま、検索欄に「Stiffness」と入れ、右の欄に「20000」と入れてEnterキーを押します(下の5枚目)
  6. 続けてSpringを選んだまま、検索欄に「Damping」と入れ、右の欄に「200」と入れてEnterキーを押します(下の6枚目)
  7. 続けてSpringを選んだまま、検索欄に「Visible」と入れ、右の四角を押してチェックを入れます(下の7枚目)

BounceScript

ばねの力だけでは、人はほとんど跳ねません。以下は、アソビシフト編集部が試した結果です。スクリプトでばねの長さだけを一瞬のばして板をはね上げると、人は板に乗ったまま運ばれ、板が止まると一緒に止まりました。キャラクターが板から離れるには、ジャンプの働きも必要でした。そこで次のスクリプトは、ばねで板をはね上げるのと同時に、ジャンプの高さを大きくしてジャンプさせます。

  1. エクスプローラの「Trampoline」にマウスを乗せて「+」を押し、一覧の検索欄に「Script」と入れて「Script」を押します(下の1枚目)
  2. エクスプローラでScriptを選んだままF2キーを押し、名前を「BounceScript」に変えます(下の2枚目)
  3. BounceScriptを選んだまま、プロパティの検索欄に「RunContext」と入れ、「Legacy」になっていることを確かめます(下の3枚目)

上のタブが「BounceScript」になっていることを確かめます。中身を全部消して、次のコードを貼り付けます(コードの画面の中を押してからCtrl + Aキーで全部選び、Deleteキーで消します)。

-- 乗ると板がはね上がり、人を高く跳ばすスクリプト
local trampoline = script.Parent
local pad = trampoline:WaitForChild("Pad")
local spring = pad:WaitForChild("Spring")

local REST_LENGTH = 2 -- 普段のばねの長さ
local PUSH_LENGTH = 10 -- はね上がる瞬間のばねの長さ
local BOUNCE_HEIGHT = 30 -- 跳ぶ高さ

local busy = false

pad.Touched:Connect(function(hit)
	local humanoid = hit.Parent:FindFirstChild("Humanoid")
	if busy or not humanoid then
		return
	end
	busy = true

	local normalHeight = humanoid.JumpHeight
	humanoid.JumpHeight = BOUNCE_HEIGHT
	humanoid.Jump = true
	spring.FreeLength = PUSH_LENGTH

	task.wait(0.15)
	spring.FreeLength = REST_LENGTH

	task.wait(0.8)
	humanoid.JumpHeight = normalHeight
	busy = false
end)
コードの部分していること
pad.Touched板に何かが触れたときに動く
hit.Parent:FindFirstChild("Humanoid")触れた物がキャラクターかどうかを見る。キャラクターでなければ何もしない
busyはねている間に、もう一度動かないようにするための目じるし
BOUNCE_HEIGHT跳ぶ高さ。humanoid.JumpHeight に入れて、humanoid.Jump = true でジャンプさせる
PUSH_LENGTHはね上がる瞬間のばねの長さ。spring.FreeLength を10にすると、ばねが板を押し上げる
REST_LENGTH普段のばねの長さ。0.15秒後に2へ戻すと、板が下りる
normalHeight元のジャンプの高さ。0.8秒後に元へ戻す

テストで跳ねる

3D画面の上の作品のタブ「Place1」を押して3D画面に戻り、F5キーでテストを始めます(タブの名前はパソコンによって違います)。

  1. Wキーで前へ歩き、Aキー・Dキーで左右を合わせて、トランポリンの手前まで進みます(下の1枚目)
  2. Wキーで板に向かって歩き、板に触れたらWキーを離します。キャラクターが高く跳び上がります(下の2枚目)
  3. 少しすると、キャラクターが落ちてきます(下の3枚目)。もう一度跳ぶときは、Wキーで板に向かって歩きます

以下は、アソビシフト編集部が試した結果です。キャラクターは、クレーンの腕より高い所まで跳びました。板の横から歩いて触れても跳ね、板の真上から落ちたときも、また跳ねました。Wキーを押したままだと、跳んでいる間に前へ進み、板の向こう側に下りました。

確かめ終わったら、Shift + F5キーでテストを停止します。

8. 完成した3つの仕掛け

テストを止めたあとの3D画面です。左からクレーン、ブランコ、トランポリンが並んでいます。

9. ロープ・棒・ばねの使い分け

ロープ・ばね・PrismaticConstraintのほかに、よく似た部品に棒(RodConstraint)があります。電車の作り方で車両をつないだ部品です。

部品2つの印の間向いている物
RopeConstraint(ロープ)Lengthより離れない。近づくのは自由ぶら下げる物、ブランコ、上げ下げする荷物
RodConstraint(棒)Lengthの長さのまま変わらない車両の連結、押しても縮まない物
SpringConstraint(ばね)自然な長さに戻ろうとする力がはたらくトランポリン、弾む床
PrismaticConstraint1つの向きにだけすべる引き戸、線路の上の電車、上下に動く板

10. 動かないときに確かめる所

以下は、アソビシフト編集部がわざと設定を変えてテストした結果です。この節は読むだけで大丈夫です。

変えた所結果直し方
RopeのAttachment0を空にしたロープがなくなり、箱が地面に落ちる(下の1枚目)エクスプローラでCrateの中のRopeを選び、プロパティの検索欄に「Attachment0」と入れ、右の欄を押してからArmの中の「TopAttachment」を押す
RopeのVisibleのチェックを外した箱はぶら下がったままだが、ロープが見えない(下の2枚目)エクスプローラでCrateの中のRopeを選び、プロパティの検索欄に「Visible」と入れてチェックを入れる
RopeのWinchEnabledのチェックを外した赤い箱をクリックしても荷物が動かない(下の3枚目)エクスプローラでCrateの中のRopeを選び、プロパティの検索欄に「WinchEnabled」と入れてチェックを入れる
SwingSeatの中のKeepLevelのEnabledのチェックを外した座ってこぐと、座席がひっくり返り、人が逆さになる(下の4枚目)エクスプローラでSwingSeatの中のKeepLevelを選び、プロパティの検索欄に「Enabled」と入れ、いちばん上の「Enabled」にチェックを入れる
BaseAttachmentとPadAttachmentのOrientationを「0, 0, 0」にした板が上下に動かず、横へすべって土台に落ちる(下の5枚目)エクスプローラでそれぞれの印を選び、プロパティの検索欄に「Orientation」と入れ、「▼CFrame」のすぐ下のOrientationに「0, 0, 90」と入れてEnterキーを押す
SpringのStiffnessを、「+」で入れた直後の0のままにした板が土台の上に下りたままになる(下の6枚目)エクスプローラでPadの中のSpringを選び、プロパティの検索欄に「Stiffness」と入れ、右の欄に「20000」と入れてEnterキーを押す

AIに相談するときの伝え方

Roblox Studioでブランコを作っています。
Top(固定した棒)の中の TopL・TopR と、VehicleSeat の中の SeatL・SeatR を RopeConstraint でつないでいます。
座席には VectorForce(Push)と、Mode が OneAttachment の AlignOrientation(KeepLevel)を入れて、Script で seat.ThrottleFloat を見て push.Force を変えています。
座っていないときは、少しずつ揺れが止まるようにしたいです。どう書き足せばよいですか。

よくある質問

ロープの色を変えたいときは?

エクスプローラでRopeを選び、プロパティの検索欄に「Color」と入れます。右の色を押すと、色を選べます。「+」で入れた直後の色は「Earth orange」です。

ブランコをもっと大きく揺らしたいときは?

エクスプローラでSwingの中の「SwingScript」をダブルクリックして開き、コードの6行目の PUSH_FORCE の「600」を大きくします。

トランポリンの跳ぶ高さを変えたいときは?

エクスプローラでTrampolineの中の「BounceScript」をダブルクリックして開き、コードの8行目の BOUNCE_HEIGHT の「30」を書きかえます。

荷物が上がる高さを変えたいときは?

エクスプローラでCraneの中の「WinchScript」をダブルクリックして開き、コードの8行目の HIGH の「3」を書きかえます。数を小さくするほど、ロープが短くなって荷物が高く上がります。

次のステップ(上級 20/40)

次は、床に触れるとキャラクターがぐにゃっと倒れ、起き上がるラグドールを作ります。

→ ロブロックス(Roblox)のラグドールとは?スタジオでぐにゃっと倒れる作り方を画像で解説

次に知りたいことを選ぶ

次に読む記事