1. パーツを追加します。
  2. その中にScriptを追加します。
  3. ツールボックスから適当な音楽を探し、パーツの中に入れ、名称をSoundにします。
local RunService = game:GetService("RunService")

local part = script.Parent   -- スクリプトが配置されているパーツ
local sound = part.Sound  -- パーツ内に配置したSoundオブジェクト

-- Soundの再生開始
sound:Play()

-- 毎フレーム実行する関数
local function updateVisualizer()
    local loudness = sound.PlaybackLoudness  -- 現在の音の大きさ(音量)を取得

    -- 例として、音量に合わせた拡大率を計算します。
    -- 数値「50」や倍率の上限・下限は、お好みで調整してください。
    local scaleFactor = math.clamp(loudness / 50, 1, 3)

    -- パーツのサイズを更新(X, Y, Zすべてに同じ拡大率を適用)
    part.Size = Vector3.new(scaleFactor, scaleFactor, scaleFactor)

    -- また、音量に応じて色を変更する例です。
    -- 明るさの値(0~1)を計算し、赤から青へグラデーションのように変化させます。
    local brightness = math.clamp(loudness / 100, 0, 1)
    part.Color = Color3.new(brightness, 0, 1 - brightness)
end

-- Heartbeatイベントを使って、毎フレーム updateVisualizer() を実行
RunService.Heartbeat:Connect(updateVisualizer)

sound.PlaybackLoudness により、再生中の音の「大きさ」を数値として取得できます。
これを元にビジュアルエフェクトの変化(ここではサイズと色の変化)を実現しています。

By schilverberch

ROBLOXでゲームを作ろう! 一緒にプログラミングを学びましょう。

コメントを残す