

💡アニメーション編「オリジナル剣」を作る パート2!アニメーション編【完全解説】
🔧 この動画で学べること
✅ 1. キャラクター(Rig)と剣を連結する「Motor6D」の使い方
✅ 2. アニメーションエディタでアニメーションを作るやり方
✅ 3. 歩きながら攻撃できる「優先順位(Action)」の設定
✅ 4. Robloxへ公開して、IDをコピーするやり方
✅ 5. 作成したアニメーションをスクリプトへ反映させる手順
📺 チャプター目次 :
00:00 オープニング・完成品の紹介
00:17 剣ツールをワークスペースに配置する
00:53 Rig(リグ)と剣を Motor6D で連結する
02:12 アニメーションエディタの起動と初期設定
02:44 ポージングとタイムラインの編集方法
05:47 アニメーションのRobloxへ公開とIDコピー
06:39 アニメーションのスクリプトへの適用
07:07 アニメーションのテスト
📥 完成版プレイスをダウンロード(Roblox Studio)
※リンク先の右上にある「…」ボタンから「Studioで編集」を選択すると、中身を確認できます。
1. 準備:剣ツールをワークスペースに配置する

2. Rig(リグ)と剣を Motor6D で連結する


※エクスプローラの「RightHand」メッシュをクリックすると、プロパティのPart0の空欄が「RightHand」に変わります。

※エクスプローラの「MySword」ツールの「Handle」メッシュをクリックすると、プロパティのPart1の空欄が「Handle」に変わります。
3. アニメーションエディタの起動と初期設定


※日本語訳の影響で「全ての本文を追加(Add All Body)」と表示されていますが、これは「キャラクターの全身の関節を追加する」という意味です。
4. ポージングとタイムラインの編集方法


※動画内で剣の軌跡(トレイル)が見えている場合がありますが、これはパート3で設定するエフェクトです。何も表示されなくても問題ありません。
5. アニメーションのRobloxへ公開とIDコピー


重要: これを「動作 (アクション)」に設定することで、プレイヤーが歩きながら剣を振ったときでも、攻撃モーションが正しく優先して再生されるようになります。

※クリップボード(見えない一時保管場所)にコピーされたIDは、次の章で説明するScript(スクリプト)の「指定された場所」に貼り付けます。
6. アニメーションのスクリプトへの適用
7. アニメーションのテスト

8. スクリプト
-- 1. 設定:パーツとダメージ量
local tool = script.Parent
local sword = tool:WaitForChild("Sword")
local handle = tool:WaitForChild("Handle") -- Sword内のHandleを参照
local swordSound = handle:FindFirstChildOfClass("Sound") -- Handleの中の音を探す
local damage = 100 -- ダメージ量
local isAttacking = false -- 攻撃判定のスイッチ
-- 2. アニメーションの準備
local anim = Instance.new("Animation")
-- anim.AnimationId = "rbxassetid://522635514" -- 標準のアニメーション
-- ここにアニメションIDを入れる!
anim.AnimationId = "rbxassetid://75057476916808" -- チュートリアル動画で作ったアニメーションのID
local loadAnim = nil -- 再生用の入れ物
-- 3. 装備した時:アニメーションをプレイヤーに読み込む
tool.Equipped:Connect(function()
local character = tool.Parent
local humanoid = character:FindFirstChildOfClass("Humanoid")
if humanoid then
loadAnim = humanoid:LoadAnimation(anim)
end
end)
-- 4. クリックした時:アニメーション再生とスイッチの管理
tool.Activated:Connect(function()
if loadAnim and not isAttacking then
isAttacking = true -- 攻撃開始
swordSound:Play() -- 音を再生
loadAnim:Play()
task.wait(0.8) -- 攻撃が続く時間
isAttacking = false -- 攻撃終了
end
end)
-- 5. 刃が触れた時:ダメージを与える
sword.Touched:Connect(function(hit)
if isAttacking then
local character = tool.Parent
local targetChar = hit.Parent
local targetHuman = targetChar:FindFirstChildOfClass("Humanoid")
-- 自分以外かつ人間(またはモンスター)ならダメージ
if targetHuman and targetChar ~= character then
targetHuman:TakeDamage(damage)
isAttacking = false -- 連続ヒット防止
end
end
end)
Roblox Studioは、Roblox用の カスタムゲームを作成できる公式の無料 ユーティリティソフトウェア。ミニゲーム、障害物コース、ロールプレイングストーリーなど、さまざまなゲーム作ることが出来ます 。プログラミング言語Luaを利用してプログラミングします。Robux(ロバックス)と呼ばれる仮想キャッシュを、ゲーム内アイテムに対して使用することで収益を得る仕組みを構築することも出来るので、子供たちはゲーム開発を通じでビジネスの感覚が身につけられる。
Robloxは、ユーザーがRoblox Studioを使ってゲームをプログラムしたり、他のユーザーが作成したゲームをプレイしたりできるオンラインゲーミングプラットフォームおよびゲーム作成システムです。

