Robloxのコンバットゲーム向けヒットエフェクト

Roblox向けの無料ヒットエフェクト:クリティカルヒット、パリィ、剣のぶつかり合い、盾へのヒット、パンチ、煙の噴き出しをフリップブックで用意。ヒットした位置に各エフェクトを配置するLuauと、ヒットを重く感じさせるコツも紹介します。

更新日

ヒットエフェクトが、攻撃が当たったことをプレイヤーに伝える時間は約10分の1秒です。武器がターゲットに当たった位置に表示され、どの角度からも見やすく、次のヒットまでに消える必要があります。フリップブックならこの3つをすべて満たせます。カメラに向いたパーティクルを接触点に配置し、一度再生して終了します。

すばやく伝わるヒットエフェクト

  • 通常ヒットとクリティカルヒット: 刃による攻撃にはSlash Attack Hit、クリティカルにはCritical Hit(白熱した中心部に続いて火花の輪が広がります)、鈍器による一撃にはHit Smoke Puff。
  • 防御: タイミングよく防御するにはPerfect Parry、武器同士がぶつかるときにはSword Clash Sparks、バブルシールドが攻撃を受けるときにはShield Impact。
  • スタイル: アニメやカートゥーンのゲームにはAnime Hit SparksとCartoon Punch Impact。フラットな色使いとインクの輪郭線が特徴です。
  • 大技とフィニッシャー: インパクトフレーム、叩きつけ、雷撃にはアニメVFXがあります。

攻撃が当たった位置にヒットエフェクトを配置する

多くのコンバットシステムでは、攻撃者の前方にボックスを置き、workspace:GetPartBoundsInBoxを使ってヒットを検出します。エフェクトには、2人のキャラクターの間でターゲットに近い位置を使います。カメラの位置にかかわらず、攻撃者に向いたターゲットの側面に表示されます。

サーバーScript
-- Server: a simple hitbox in front of the attacker
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local hitFx = ReplicatedStorage:WaitForChild("HitFx") -- a RemoteEvent

local function swing(attacker: Model, damage: number)
	local root = attacker:FindFirstChild("HumanoidRootPart") :: BasePart
	local params = OverlapParams.new()
	params.FilterType = Enum.RaycastFilterType.Exclude
	params.FilterDescendantsInstances = { attacker }

	local hit = {}
	for _, part in workspace:GetPartBoundsInBox(root.CFrame * CFrame.new(0, 0, -3), Vector3.new(5, 5, 5), params) do
		local target = part:FindFirstAncestorOfClass("Model")
		local humanoid = target and target:FindFirstChildOfClass("Humanoid")
		if humanoid and not hit[humanoid] and humanoid.Health > 0 then
			hit[humanoid] = true
			humanoid:TakeDamage(damage)
			local targetRoot = target:FindFirstChild("HumanoidRootPart")
			local at = if targetRoot then targetRoot.Position:Lerp(root.Position, 0.3) else part.Position
			hitFx:FireAllClients(if damage >= 25 then "Critical Hit" else "Slash Attack Hit", at)
		end
	end
end

HitFxを受け取るLocalScriptは、アニメVFXにあるものです。名前付きのエフェクトを位置に複製し、後で削除します。エフェクトをサーバー側で選ぶことで(ここでは強い攻撃にクリティカルを選択)、すべてのプレイヤーに同じエフェクトが表示されます。

ヒットを重く感じさせる

  • ヒットストップ: ヒット時に攻撃者とターゲットのアニメーションを0.05 to 0.1 s停止させます。再生中の各AnimationTrackにAdjustSpeed(0)を設定し、その後AdjustSpeed(1)に戻します。格闘ゲームで感じる重みの多くは、この停止から生まれます。
  • カメラシェイク: 強い攻撃のときだけ攻撃者のカメラを短く揺らします。そうしないと、効果がなくなります。
  • 同じ見た目を繰り返さない: ヒットごとにエミッターのRotationをランダムな角度に設定します。NumberRange.new(math.random(0, 359))を使うと、ヒットが繰り返されてもスタンプのように見えません。
  • 効果音も一緒に: ヒット音をエフェクトのパーツに入れて、そこで再生します。音とエフェクトが必ず同時に届きます。

ヒットエフェクトの設定

  • 体の前に表示: ヒットエフェクトはターゲットに表示されるため、体に半分隠れます。ZOffsetを1または2に設定すると、画面上のサイズを変えずに、パーティクルをカメラに近い位置に描画できます。
  • 発光: Slash Attack Hit、Critical Hit、Perfect Parry、Shield ImpactはGlowをオンにして書き出されます(LightEmission 1)。Hit Smoke PuffとSword Clash Sparksには煙があり、カートゥーン系のヒットにはインクの輪郭線があるため、Glowをオフにして書き出されます。オンにすると暗い部分が消えてしまいます。
  • サイズ: ほとんどのヒットエフェクトは4 to 6 studsです。クリティカルは通常のヒットより少し大きくし、プレイヤーが見分けられるようにします。
  • くっきりしたフレーム: 長さが0.75 s以下のエフェクトは、256 pxのフレームを使った4x4グリッドになります。Perfect ParryとSlash Attack Hitはこの設定で書き出されます。それ以外は、スタジオの書き出し設定で4x4を選べます。

フリップブックPNGは無料です。各エフェクトページのROBLOXボタンはアカウント不要で使えます。また、無料アカウントでもスタジオから、グリッドとテクスチャサイズを選んで書き出せます(1日3エフェクト)。エミッターを設定済みで再生用Scriptが付いた.rbxmxの準備済みモデルと、UI用のUIFlipbook.luauは、月額$7.99からのすべてのプランに含まれます。

ゲームに取り込む

すべての設定と、無料のPNGまたはすぐ使えるモデルという2つの導入方法は、Robloxセットアップページにあります。ジャンル別のエフェクトは無料のRoblox VFXをご覧ください。エフェクトは書き出し前にスタジオで変更できます。武器や属性ごとにヒットの色を変えられます。

よくある質問

ヒットエフェクトはどこに表示すればよいですか?

接触点、つまり攻撃者に向いたターゲットの側面です。2人のキャラクターの間でターゲットに近い位置にすれば、どのカメラ角度からも表示できます。

ヒットエフェクトがキャラクターの中に隠れるのはなぜですか?

パーティクルがターゲットの体の中央を通って描画されています。エミッターのZOffsetを1または2に上げて、体の前に描画されるようにしてください。

Robloxでヒットを強く感じさせるにはどうすればよいですか?

ヒット時に両方のキャラクターのアニメーションを数フレーム停止し(AnimationTrack:AdjustSpeed(0)、その後1に戻します)、強い攻撃ではカメラを短く揺らし、クリティカルにはより大きく明るいエフェクトを使います。

Robuxを獲得できるゲームで、これらのエフェクトを使えますか?

はい。ライブラリから開始したものを含め、書き出したエフェクトはクレジット表記なしで、商用ゲームを含むあらゆるプロジェクトに使用できます。ただし、ライブラリ自体をエフェクトパックとして再販売することは禁止されています。

Roblox VFXガイド

  • Robloxのバトルグラウンドゲーム向けアニメVFX格闘ゲーム向けのヒットフレーム、クリティカルバースト、雷撃、チャージオーラと、すべてのプレイヤーにヒットを表示する方法。
  • Roblox用の剣閃VFX刀の弧、X字斬り、回転攻撃を、コンボの一振りごとに新しい角度で攻撃者の前に配置できます。
  • Robloxキャラクター向けオーラVFXキャラクターに溶接できるシームレスなループオーラ:エネルギー、炎、雷、回復、翼に加え、体の後ろに表示する方法も紹介します。
  • Roblox向け爆発エフェクト炎、エネルギー、カートゥーン、ドット絵の爆発です。物理挙動にはRoblox Explosionを使い、非表示にしてプレイヤーには独自のエフェクトを見せます。
  • Roblox向け火のVFXたき火、たいまつ、燃えるキャラクター、火の罠、火属性の攻撃。明滅するライトと、時間経過でダメージを与える燃焼エフェクトも紹介します。
  • Roblox向け雷VFX落雷、連鎖雷、ドーム、嵐の雲、感電状態と、2点間に稲妻を描くのにBeamが適している理由を紹介します。
  • Roblox向け魔法VFX魔法陣、シールド、ポータル、テレポート、回復、拘束に加え、詠唱前動作、射程チェック、サーバー側のクールダウンを備えた詠唱方法を紹介します。
  • Roblox向け煙VFX煙幕手榴弾、着地時の砂ぼこり、衝撃波、地面を這う霧、煙のパフ、ドリフト煙と、煙をシーンに合わせて暗くする設定を紹介します。
  • Roblox向けシミュレーターエフェクト:コイン、ペット、転生、レベルアップコインの獲得、宝箱の開封、レアドロップ、ペットの孵化、転生、レベルアップを、プレイヤー自身の画面でleaderstatsを使って再生します。
  • Robloxのタワーディフェンスエフェクト:設置、アップグレード、範囲ダメージ、敵の撃破タワーの設置とアップグレード、範囲ダメージ、スロウ、空爆、敵の撃破を、すべてのクライアントで敵の位置に再生します。
  • Roblox向けオビーエフェクト:ゴールパッド、チェックポイント、キルブリック、ジャンプパッドゴールパッド、チェックポイント、リスポーン、ジャンプパッド、スピードパッド、キルブリックでバラバラになるブロック状キャラクター。
  • フリップブックを使ったRoblox UIエフェクト実績バナー、レアリティフレーム、バッジ、ボタンのきらめきをImageLabelに表示し、ImageRectOffsetでコマ送りできます。
  • RobloxのビームテクスチャBeam用の正方形シームレステクスチャです。稲妻、エネルギー、炎、レーザー、光の筋を収録。向きや、テクスチャが伸びないようにする設定も紹介します。
  • 無料Roblox VFXパック無料のZIPに24種類のフリップブックエフェクトを収録。Robloxゲームの各ジャンル向けに3種類ずつ、各エフェクトのエミッター設定と再生用スクリプトも付属します。
  • 無料のRobloxアニメVFXパックアニメやバトルグラウンド向けのエフェクト24種を、無料のZIPに収録しています。ヒット、斬撃、ダッシュ、チャージオーラ、激突、必殺技に加え、各エフェクトのエミッター設定も含まれます。
  • Robloxのフリップブックテンプレート番号付きフレームと安全マージン入りの、1024 pxの無料2x2、4x4、8x8フリップブックグリッド。Robloxのフリップブックで守るルールと、作成方法を2つ紹介します。
  • Roblox Studioでフリップブックパーティクルを作る方法ParticleEmitterでフリップブックを設定する手順を紹介します。レイアウト、4つのモード、フレームレート、カスタムグリッド、作成用スクリプト、よくある問題を解説します。
  • AIでRobloxのVFXを作成エフェクトを文章で説明して、Robloxのフリップブックとしてエクスポートできる編集可能なエフェクトを作成しましょう。Robloxゲームで使えるプロンプトと、結果を調整する方法も紹介します。