ロブロックススタジオでバスを作る3つの方法【2026年最新】
コラムRoblox Studioで自分のゲームにバスを走らせたいと思って検索したのに、出てきた手順を試しても動かなかった、という経験はありませんか。
「車の作り方」を解説した記事はいくつもありますが、バスに特化した情報はほとんどなく、しかも検索上位のページ自体に「現在この方法は動作しません」と書かれていることさえあります。これでは試す前から気持ちが折れてしまいますよね。
この記事では、Toolboxのフリーモデルを使う方法・VehicleSeatとHingeConstraintで自作する方法・Blenderで作ったモデルをインポートする方法の3通りを、2026年現在のRoblox Studioで実際に動く手順として解説します。Roblox公式のCreator Hub(create.roblox.com/docs)のVehicleSeat・3Dインポートのリファレンスをもとにしているので、情報の古さを気にせず読み進められます。
コピペで試せるスクリプト付きなので、初めてスクリプトに触れる方でも順番に進めるだけで形にできます。
目次
- ロブロックス スタジオのバスとは
- 「バス」で何ができる?
- フリーモデルと自作、どちらを選ぶべきか
- 【方法①】Toolboxのフリーモデルでバスを追加する
- ツールボックスでバスを検索する手順
- 信頼できるモデルの選び方(評価・ダウンロード数)
- バスが動かない・配置できないときの対処
- 【方法②】Roblox Studioでバスを自作する(2026年現行手順)
- バス本体のパーツを組み立てる
- VehicleSeatを設置して運転席を作る
- HingeConstraintで車輪を接続・回転させる
- Seatパーツで乗客席を複数追加する
- 車輪が回転しないときの確認ポイント
- 【方法③】Blenderで3Dモデルを作ってインポートする
- Blenderでバスモデルを作成する際の注意点
- FBX/glTFでエクスポートする設定
- 「3Dをインポート」でRoblox Studioに取り込む手順
- バスが動かないときのよくある原因と対処法
- ロブロックス スタジオ バスに関するFAQ
- まとめ
ロブロックス スタジオのバスとは
Roblox Studioにおける「バス」は、決まったパーツが用意されているわけではありません。プレイヤーが乗り込んで移動できる乗り物として、Part(パーツ)を組み合わせて作る、または既存のモデルを配置して使う対象を指します。
「バス」で何ができる?
バスをゲームに追加すると、次のような表現が可能になります。
- マップ内の移動手段として、街や学校を舞台にしたロールプレイゲームに使う
- 複数のプレイヤーを同時に乗せて、協力プレイの拠点にする
- 日本の路線バス(エルガなど)を再現し、乗り物好きの世界観を表現する
単に「置いてあるだけの乗り物」ではなく、運転できる・複数人が乗れるという体験まで作り込めるのが、この記事で扱う範囲です。
フリーモデルと自作、どちらを選ぶべきか
最初にどの方法を選ぶかで、かかる時間も学べることも変わります。
- とにかく早くバスを配置したいだけなら、方法①のフリーモデルで十分
- 運転の仕組みを自分で理解し、後から自由にカスタマイズしたいなら、方法②の自作がおすすめ
- すでにBlenderでモデルを作れる、または日本のバス(エルガなど)を忠実に再現したいなら、方法③のインポートを選ぶ
3つは組み合わせて使うこともできます。たとえば方法①でボディ形状を用意し、方法②の運転席・車輪の仕組みだけ自分で組み込む、といった応用も可能です。次の章から、それぞれの実装手順を順番に見ていきます。
【方法①】Toolboxのフリーモデルでバスを追加する
3つの方法の中で、もっとも早くバスをゲームに置けるのがこの方法です。
ツールボックスでバスを検索する手順
Roblox Studioの上部メニューから「表示」→「ツールボックス」を開き、検索窓に「bus」または「バス」と入力します。コミュニティが公開しているモデルが一覧表示されるので、気に入ったものをクリックするとワークスペースに配置されます。
配置直後は原点(0, 0, 0)付近に大きなサイズで出現することが多いため、Studioの移動ツール(W)とスケールツール(R)で、地面の上に収まるよう位置とサイズを調整してください。
信頼できるモデルの選び方(評価・ダウンロード数)
Toolboxには古いモデルや動作しないモデルも混ざっています。選ぶときは次の3点を確認してください。
- ダウンロード数が多いか(目安として数千件以上あると実績のあるモデルの可能性が高い)
- 更新日が極端に古くないか(詳細ページで確認できる)
- 説明欄に「動作しません」「非推奨」といった注意書きがないか
評価の星の数だけでなく、実際にワークスペースへ配置してPlaytestで動かしてから使うかどうかを判断するのが確実です。
バスが動かない・配置できないときの対処
フリーモデルで多いのが「配置はできたが運転できない」という状態です。原因の多くは、モデルの中にVehicleSeatが含まれていない、または含まれていてもスクリプトが古いバージョンのAPIを使っていることです。
この場合は、モデルの中身をExplorerで開いてVehicleSeatとHingeConstraintの有無を確認し、なければ方法②の手順で自分の運転スクリプトを追加すれば動かせます。フリーモデルはあくまで「ボディの形」を借りるものと考えると、無理なく組み合わせられます。

【方法②】Roblox Studioでバスを自作する(2026年現行手順)
見た目にこだわらず、まず「運転できるバス」を自分の手で完成させたい場合はこの方法を使います。古い解説記事ではBodyVelocityを使う手順が紹介されていますが、これは非推奨のAPIです。ここではVehicleSeatとHingeConstraintを使う、2026年現在も動作する手順を紹介します。
バス本体のパーツを組み立てる
- ワークスペースに直方体のPartを配置し、バスの車体として引き伸ばす(名前を「BusBody」とする)
- 車輪の位置に、円柱形のPart(Part→Cylinder)を4つ配置する
- それぞれの車輪の名前を「WheelFL」「WheelFR」「WheelBL」「WheelBR」のようにわかりやすく変更する
- 車輪の向きが車体の横方向を向くよう、円柱を90度回転させておく
VehicleSeatを設置して運転席を作る
Insertメニューから「VehicleSeat」をワークスペースに追加し、車体の上面に配置します。名前は「DriverSeat」のままで問題ありません。VehicleSeatは、プレイヤーが座るとWASDキーの入力を自動で読み取り、Throttle(前後)とSteer(左右)というプロパティに-1から1の数値を出力します。この数値を、次のスクリプトで車輪の回転に変換します。
HingeConstraintで車輪を接続・回転させる
各車輪と車体をAttachmentで接続し、Attachmentの間にHingeConstraintを追加します。HingeConstraintのプロパティでActuatorTypeを「Motor」に設定すると、スクリプトから回転速度を指定できるようになります。
車体・車輪・VehicleSeatをまとめて1つのModelにし(名前を「Bus」とする)、Modelの中にServerScriptを追加して次のコードを入れます。
local bus = script.Parent
local seat = bus:WaitForChild("DriverSeat")
local wheelNames = {"WheelFL", "WheelFR", "WheelBL", "WheelBR"}
local hinges = {}
for _, name in ipairs(wheelNames) do
local wheel = bus:WaitForChild(name)
local hinge = wheel:FindFirstChildWhichIsA("HingeConstraint")
if hinge then
hinge.ActuatorType = Enum.ActuatorType.Motor
hinge.MotorMaxTorque = 10000
table.insert(hinges, hinge)
end
end
local MAX_ANGULAR_VELOCITY = 20
seat:GetPropertyChangedSignal("Throttle"):Connect(function()
for _, hinge in ipairs(hinges) do
hinge.AngularVelocity = seat.Throttle * MAX_ANGULAR_VELOCITY
end
end)
GetPropertyChangedSignal("Throttle")を使うことで、プレイヤーがWキーやSキーを押すたびにイベントが発火し、車輪のAngularVelocity(角速度)が更新されます。MotorMaxTorqueは車輪を回す力の強さで、値が小さいとバスが重くて動かないことがあるため、車体のサイズに応じて調整してください。
左右の旋回(Steer)まで作り込みたい場合は、前輪2つのHingeConstraintのC0プロパティをスクリプトで回転させる、より発展的な実装が必要になります。まずは前後移動だけを確実に動かしてから、次のステップとして挑戦するのがおすすめです。
Seatパーツで乗客席を複数追加する
運転席とは別に、Insertメニューから通常の「Seat」パーツを車体の後方に複数配置すると、他のプレイヤーが乗客として座れるようになります。SeatはVehicleSeatと違ってスクリプトなしでも自動的に座る機能が備わっているため、追加の実装は不要です。座席数を増やせば、友達と一緒に乗り込むバスが作れます。
車輪が回転しないときの確認ポイント
このパターンで動かない場合、原因の大半は次の3つです。
- HingeConstraintのActuatorTypeが「Motor」になっていない(初期値は「None」)
- Attachmentの位置が車輪の中心からずれていて、回転軸がおかしくなっている
- 車体と車輪のPartがWeldやHingeConstraintで正しく接続されておらず、バラバラに落下している
ActuatorTypeをMotorに設定しないと、AngularVelocityを指定しても車輪は回りません。まずこの1点を最初に確認してください。
【方法③】Blenderで3Dモデルを作ってインポートする
日本の路線バス(エルガなど)のように、細部まで再現したモデルを使いたい場合は、Blenderで作成したモデルをRoblox Studioに取り込む方法が適しています。
Blenderでバスモデルを作成する際の注意点
BlenderとRoblox Studioでは座標系が異なります。Blenderは「Z軸が上」、Robloxは「Y軸が上」のため、そのままインポートするとモデルが横倒しになることがあります。後述のFBXエクスポート設定で軸を変換すれば問題ありませんが、モデリングの段階では「正面をY軸マイナス方向に向けて作る」ことを意識しておくと調整が少なく済みます。
FBX/glTFでエクスポートする設定
Roblox StudioはFBX・OBJ・glTFの3形式に対応しています。Blenderからは以下の設定でFBXエクスポートするのが一般的です。
- 「Forward」を「-Z Forward」、「Up」を「Y Up」に設定する(Blenderの座標系をRoblox側に合わせる)
- 「Apply Transform」にチェックを入れ、拡大縮小や回転の情報をメッシュに焼き込む
- マテリアルを使っている場合は「Path Mode」を「Copy」にし、テクスチャ画像も一緒に書き出す
「3Dをインポート」でRoblox Studioに取り込む手順
- Roblox Studioの上部メニューから「アバター」タブを開く
- 「3Dをインポート」(Import 3D)をクリックし、エクスポートしたFBXファイルを選択する
- プレビュー画面でサイズと向きを確認し、問題なければ「インポート」を実行する
- ワークスペースに読み込まれたモデルに、方法②で解説したVehicleSeatとHingeConstraintを追加し、運転できるようにする
インポート直後のモデルは1つの大きなMeshPartになっていることが多いため、車輪を別々に動かしたい場合は、Blender側で車輪パーツを分離してから書き出すか、Roblox Studio内で車輪部分だけ別パーツに置き換える必要があります。

バスが動かないときのよくある原因と対処法
3つの方法に共通して起きやすいトラブルを、原因と対処法でまとめました。
| 症状 | 原因 | 対処法 |
|---|---|---|
| 車輪が回らない | HingeConstraintのActuatorTypeがMotorになっていない | プロパティをMotorに変更し、AngularVelocityをスクリプトで指定する |
| バスがバラバラに落下する | パーツ同士がWeldやConstraintで固定されていない | 車体と車輪の接続をAttachment・HingeConstraintで確認する |
| インポートしたモデルが横倒しになる | BlenderとRobloxの座標系(Z-up/Y-up)が違う | FBXエクスポート時に「Y Up」を指定し直す |
| 運転席に座ってもキー操作が効かない | VehicleSeatではなく通常のSeatを使っている | 運転操作が必要な席はVehicleSeatに変更する |
ロブロックス スタジオ バスに関するFAQ
Q1. Toolboxでバスのフリーモデルはどこで探せますか?
Toolboxの検索窓に「bus」または「バス」と入力するとコミュニティが公開しているモデルが表示されます。ダウンロード数が多く、更新日が新しいものを選ぶと安全です。
Q2. バスの車輪が回転しないのはなぜですか?
HingeConstraintのActuatorTypeを「Motor」に設定していないことが主な原因です。初期値は「None」になっているため、スクリプトでAngularVelocityを指定しても反応しません。古い解説にあるBodyVelocityは現在非推奨のAPIのため、HingeConstraintを使う現行の方法に置き換えてください。
Q3. Roblox Studioで日本のバス(エルガなど)は使えますか?
Toolboxにコミュニティがアップロードしたフリーモデルを探す方法と、Blenderで自作してFBX形式でインポートする方法の2通りがあります。忠実に再現したい場合はBlenderでの自作が確実です。
Q4. バスに複数の乗客を乗せることはできますか?
できます。運転席にはVehicleSeat、乗客席には通常のSeatパーツを使い、車体に複数配置してください。Seatはスクリプトなしでも自動的にプレイヤーが座れる仕組みが備わっています。
Q5. Blenderで作ったバスをRoblox Studioにインポートする形式は何ですか?
FBX・OBJ・glTFに対応しています。2026年現在は「3Dをインポート」機能が最新の推奨方法です。Blenderからのエクスポート時は、座標系(Z-up→Y-up)の変換設定を忘れずに行ってください。
まとめ
この記事では、Roblox Studioでバスを作る3つの方法を解説しました。
重要なポイント:
- とにかく早く配置したいなら、Toolboxのフリーモデルを使う
- 運転の仕組みから理解したいなら、VehicleSeatとHingeConstraintで自作する
- 忠実な形を再現したいなら、Blenderで作ったモデルを「3Dをインポート」で取り込む
- 車輪が回らないときは、HingeConstraintのActuatorTypeがMotorになっているかをまず確認する
- 古い解説にある`BodyVelocity`は非推奨のため、現行のHingeConstraintを使う
どの方法も、仕組みを理解してしまえば数十分で「運転できるバス」を完成させられます。まずは方法②のシンプルな前後移動から試して、動く感覚をつかんでみてください。
TETRA UPのRobloxコースでは、こうした乗り物のスクリプトや3Dモデルの扱い方を、プロのインストラクターと一緒に一つずつ手を動かしながら学べます。自分だけのバスやゲームのアイデアを、実際に形にしてみませんか。
あわせて読みたい

吉田先生やよっしー、たまによしぞーって呼ばれたりしています。よろしくお願いします。