【Roblox Studio】画像を動かすアニメーションの作り方

○○の作り方

完成動画

はじめに

Roblox Studioでのゲーム制作において、インタラクティブな要素を加えることで、プレイヤーの体験をより魅力的にすることができます。本記事では、プレイヤーが特定のパーツに触れると、画面上に配置された画像が動き、中央で一時停止した後、再び画面上部に戻るアニメーションを作成する方法を紹介します。

使用する機能

  • ScreenGui(画面上のUI要素を表示するコンテナ)
  • ImageLabel(画像を表示するUIコンポーネント)
  • LocalScript(クライアント側で動作するスクリプト)
  • UDim2.new(UI要素の位置やサイズを設定するデータ型)
  • FindFirstChild(特定の名前の子オブジェクトを取得)
  • FindFirstChildOfClass(特定のクラスの子オブジェクトを取得)
  • TweenPosition(UIの位置を滑らかにアニメーションさせる)
  • Touched(パーツが何かに触れたときに発火するイベント)

エクスプローラ構成

エクスプローラの構成は以下の通りです。

Workspace
└Part1

StarterGui
└ScreenGui
 └ImageLabel
  └LocalScript

各要素の役割

  • Part1: プレイヤーが触れることで、アニメーションがトリガーされるパーツです。
  • ImageLabel: 画面に表示され、アニメーションを行う画像です。
  • LocalScript: 画像のアニメーションを制御するスクリプトです。

LocalScriptのコード

以下のコードを ImageLabel 内に配置する LocalScript に記述します。このスクリプトは、指定されたパーツ(Part1)が触れられた際に、画像を中央に移動し、その後画面上部に戻すアニメーションを行います。

local image = script.Parent -- ImageLabelを取得
local player = game.Players.LocalPlayer

-- 画像の初期位置を設定(画面上部に隠しておく)
image.Position = UDim2.new(0.5, 0, -0.5, 0) 

local function onTouch(otherPart)
	local character = otherPart.Parent
	if character and character:FindFirstChildOfClass("Humanoid") then
		-- 画像を中央に移動
		image:TweenPosition(UDim2.new(0.5, 0, 0.5, 0), "Out", "Quad", 1, true, function()
			wait(2) -- 2秒間停止
			-- 画面上部へ移動して見えなくする
			image:TweenPosition(UDim2.new(0.5, 0, -0.5, 0), "In", "Quad", 1)
		end)
	end
end

-- Part1がタッチされたら関数を実行
local part1 = workspace:FindFirstChild("Part1")
if part1 then
	part1.Touched:Connect(onTouch)
end

解説

1. 画像の初期位置設定

image.Position = UDim2.new(0.5, 0, -0.5, 0)

画像は画面の上部に隠れた位置(Y座標が-0.5)に配置されます。これにより、プレイヤーが触れるまで画像は表示されません。

2. onTouch 関数の設定

local function onTouch(otherPart)
    local character = otherPart.Parent
    if character and character:FindFirstChildOfClass("Humanoid") then
        -- 画像を中央に移動
        image:TweenPosition(UDim2.new(0.5, 0, 0.5, 0), "Out", "Quad", 1, true, function()
            wait(2) -- 2秒間停止
            -- 画面上部へ移動して見えなくする
            image:TweenPosition(UDim2.new(0.5, 0, -0.5, 0), "In", "Quad", 1)
        end)
    end
end

プレイヤーが Part1 に触れると、画像が中央に移動し、2秒間表示されます。その後、画面上部に戻り、見えなくなります。この処理は TweenPosition を使ってアニメーションで行われます。

3. Part1 への接続

local part1 = workspace:FindFirstChild("Part1")
if part1 then
    part1.Touched:Connect(onTouch)
end

Part1 が触れられた時に onTouch 関数が呼び出されるように設定しています。これにより、プレイヤーが Part1 に触れた際に画像のアニメーションが開始します。

まとめ

この方法を使うことで、プレイヤーが特定のパーツに触れると、画像が中央に移動し、その後画面上部に戻るというアニメーションを実現することができます。

チュートリアル系電子書籍の紹介
Roblox Studioでゲーム制作を始めてみませんか?
日本語版 ※英語版あり 「10時間でできる Roblox Studio アクションゲーム制作入門」では、Roblox Studioでのゲーム制作の基本から応用までを短時間で効率的に学びます。この一冊で、初心者でも簡単にアクションゲームを制作できるようになり、ゲーム制作の面白さと達成感を存分に味わうことができます。Roblox Studioの世界への扉を開き、あなたのクリエイティブな旅を始めましょう。
チュートリアル系動画
電子書籍を動画にしました!※無料クーポンあり!

「10時間でできる Roblox Studio アクションゲーム制作入門」の動画版では、書籍の内容をさらにわかりやすく、実際の画面操作を見ながら学べる形式でお届けします。初心者でも安心して取り組めるように、Roblox Studioの基本操作からアクションゲームの完成までを丁寧に解説。テンポよく進むレクチャー動画で、あなたのペースに合わせて学習できます。この動画シリーズを通して、ゲーム制作の基礎をしっかり習得し、Roblox Studioの可能性を広げましょう!

割引クーポンコードはこちらです↓
※3月12日21時まで!
6E0150A3770784ADF77D

Luaに関する電子書籍の紹介
Roblox Studioで使用するLua言語の基本を学ぼう!
日本語版 ※英語版あり 「5時間でできる Roblox Studio を使ったLuaの基本」では、Roblox Studioで使用するプログラミング言語Luaの基本をRoblox Studio上で学びます。また、学んだ知識を活かして、Roblox StudioでLuaを使用する応用部分も一部盛り込まれています。この一冊でLuaの基本を学ぶことで、よりRoblox Studioでのゲーム制作を楽しめるようになります。
アニメーション制作系電子書籍の紹介
Roblox Studioでアニメーションを作ってみよう!
「5時間でできる Roblox Studio アニメーション制作入門」では、Roblox Studioでのアニメーション制作の基本から実際に作るところまでを短時間で効率的に学びます。この一冊で、アニメーション制作の第一歩を踏み出すことができます。Roblox Studioで自由自在にアニメーションを作成し、よりクリエイティブなゲームを作りましょう!
○○の作り方Roblox Studio
シェアする
hideをフォローする
Roblox Studio 制作tips

コメント

タイトルとURLをコピーしました