Roblox Magazine

開発チップス

【逆引き】Roblox開発で必須!パーツを滑らかに動かす「TweenService」完全攻略

m m
【逆引き】Roblox開発で必須!パーツを滑らかに動かす「TweenService」完全攻略

AI Summary / Key Takeaways

Robloxで「ドアを開ける」「パーツを回転させる」「色を徐々に変える」といった動きを、たった数行でプロ級に仕上げるのが「TweenService」や。初心者から脱却するために絶対に避けて通れないこの機能を、実戦的なコード付きで徹底解説するで!

## 1. なぜ「CFrame」や「Position」を直接書き換えたらあかんのか?

初心者がよくやるのが、while ループで少しずつ座標を足していく方法や。 これやと、動きがカクカクしたり、サーバーに負荷がかかったりしてまう。

TweenServiceを使うメリット:

  • 滑らかさ: 加速・減速(イージング)が自動でつく。
  • 低負荷: Robloxのエンジン側で最適に処理してくれる。
  • 自由度: 位置だけでなく、サイズ、透明度、色など、あらゆるプロパティを一気に動かせる。

## 2. 【コピペOK】パーツをスライドさせる黄金コード

まずは一番使う「パーツを特定の場所に動かす」スクリプトや。 microCMSのコードブロック機能を使って、以下を貼り付けてな。

Lua

local TweenService = game:GetService("TweenService")
local part = script.Parent -- スクリプトを入れたパーツ

-- 1. 動きの詳細設定(3秒かけて、滑らかに始まって滑らかに止まる)
local tweenInfo = TweenInfo.new(
    3, -- 時間
    Enum.EasingStyle.Quart, -- 動きの種類
    Enum.EasingDirection.Out -- 減速のタイミング
)

-- 2. ゴールの状態を設定(Positionを変える)
local goal = {}
goal.Position = Vector3.new(0, 20, 0) -- 好きな座標に変えてな

-- 3. 実行!
local tween = TweenService:Create(part, tweenInfo, goal)
tween:Play()

## 3. 応用:さらにクオリティを上げる「イージング」の選び方

Enum.EasingStyle を変えるだけで、動きの個性がガラッと変わるで。

  • Bounce: ボールが跳ねるような動き。UIのボタンとかに最適。
  • Elastic: ゴムのように伸び縮みする動き。
  • Linear: 一定の速度。コンベアとかに向いとる。

## 4. Wiki(Luau)との繋がり

このスクリプトで使っている localfunction 、そして : (メソッド呼び出し)などの書き方は、すべて [Luau] の基本ルールに基づいとる。 もっと深く「なぜこう書くのか?」を知りたくなったら、当サイトの [Wiki: Luau] を読んで基礎を固めてな!


## 5. まとめ:今日からあなたのゲームは「動く」

TweenServiceをマスターすれば、ゲームの「手触り」が一気に高級になる。 まずは透明度(Transparency)を 0 から 1 に変える練習から始めてみるのがおすすめや!

Admin

m

Discover more insights on the same topic.