【無料】叫んだ声の大きさを点数にする筐体
- ダウンロード商品¥ 0





ゲームセンターのパンチングマシンを、殴る代わりに叫ぶ台にしたワールドギミックです。椅子に座り、「叫べ!」の合図から 3 秒間叫ぶと、声の大きさが 0〜999 点でメーターに出ます。700 点を超えると台が爆発して、座っていた人は後ろへ吹き飛びます。 点数と部屋のベスト記録は、同じインスタンスにいる全員の画面に出ます。遊ぶ台として置くほかに、決めた点数を出せた人だけ先へ通す入口や、声が届いているかを確かめるマイクチェック台、3 秒しずかにできたら合格の我慢台にも切り替えられます。 無料で配布しています。プレハブをシーンに置けば動きます。同梱の効果音は作者がプログラムで合成した簡素な音なので、手持ちの気に入った効果音へ差し替えて使うのをおすすめします。
声の測り方
Udon には話し声の大きさを直接読む手段が無いので、VRChat がアバターのアニメーターへ渡す発話音量を使います。席のアニメーターがこの音量に合わせて右ひざを曲げ、Udon がそのひざの角度を読んで点数にします。 座ってからの約 4 秒は黙って待ってもらい、その間の角度を無音の基準にします。アバターごとの座り方のずれは、ここで差し引きます。
4 つのモード
インスペクターの mode で切り替えます。 0 ゲーム: 点数を競います。部屋のベスト記録を上の帯に出し、記録を更新すると「新記録!」が点滅します 1 合格判定: passScore(既定 300)以上で合格。ボイスチャットを使える人だけ通す入口や、大声で開く扉に使えます 2 マイクチェック: 「マイク OK」か「声が届いていません」を表示します 3 静か耐久: passScore 未満なら合格。声を出したら失敗です 合格した時には、次の 3 つを組み合わせて起こせます。 ・teleportTo: 席を降りた後、指定した位置へ移動させる ・hideOnPass / showOnPass: オブジェクトを消す、出す。本人の画面だけで起きます ・eventTarget / eventName: 別の UdonBehaviour のメソッドを呼ぶ。eventForEveryone を入れると全員の画面で呼びます
効果音の差し替え
同梱の効果音 6 本(カウント、合図、ファンファーレ、爆発の小中大)は、作者がプログラムで合成したものです。鳴れば用は足りますが、正直なところ味気ない音です。 UdonBehaviour の beepClip / goClip / fanfareClip / boomClips に手持ちの効果音を入れると差し替わります。ワールドの雰囲気に合う音へ替えるのをおすすめします。
注意
・確認したのは作者のエディタ(Unity 2022.3 + VRChat SDK3 Worlds)と ClientSim だけです。PC VR と Quest の実機で、実際に声を出して点数がどう出るかはまだ確かめていません。確認できたら更新履歴に書きます ・マイクがオフ、またはミュート中の人は 0 点になります ・右ひざのボーンが無いアバターでは測れません。source を 1 にするとつま先で測ります ・準備中と叫んでいる間に席を立つとノーゲームになる判定は、VR の人だけに効きます ・debugKeys はエディタで試すための項目です。VRChat 上では入れても効きません
同梱物
1. ShoutMachine(本体スクリプト。座る、測る、点数、ベスト記録、合格時の動作) 2. ShoutMachine プレハブ(筐体、席、マイクスタンド、メーター、爆発演出入り) 3. 見本シーン 4. 席のアニメーター、座り姿勢のアニメーション 2 つ 5. 筐体、椅子、マイクスタンドのモデル、材質 23 個 6. 合成した効果音 6 本 7. README / LICENSE / CHANGELOG
動作環境
・Unity 2022.3 系 ・VRChat SDK3 Worlds 3.10 以降(UdonSharp 同梱の版) ・PC VR 実機と Quest 実機での動作は未検証です
導入手順
1. unitypackage を取り込む 2. Prefabs/ShoutMachine.prefab をシーンへドラッグする 3. 床の高さに合わせて置く。席とメーターは子に入っています 4. アップロードする まず Scenes/ShoutMachine_Sample.unity を開いて ClientSim で座ってみると、流れが分かります。
主な設定
・mode: 0 ゲーム / 1 合格判定 / 2 マイクチェック / 3 静か耐久 ・passScore: 合格点。既定 300 ・shoutSeconds / resultSeconds: 叫ぶ時間と、結果を見せてから席を降ろすまでの時間。既定 3 秒 / 3 秒 ・noGameOnStand: 立ち上がったらノーゲームにする。既定 ON ・title / idleMessage / passMessage / failMessage: 表示の文言。空欄ならモードごとの既定文 ・boomEnabled / volume: 爆発演出と音量 ・recordEnabled: ベスト記録の表示(モード 0) ・launchEnabled / launchScore / launchPower: 吹き飛ばしの有無、点数、強さ。既定 ON / 700 / 1
利用規約
【ご自由にどうぞ】 ・個人、商用を問わず、ワールドへの組み込みは自由です ・改造、コードの流用、改造版の公開も自由です ・パッケージそのものの再配布(そのまま無償、有償で配る行為)はご遠慮ください ・クレジット表記は任意です スクリプト、モデル、アニメーション、効果音、見本シーンはすべて作者の制作物です。 現状有姿での提供となり、利用によって生じた損害について作者は責任を負いません。詳細は同梱の LICENSE.txt を確認してください。
更新履歴
1.0.0 (2026-09-23) 初版





