【無料】ポジションリセットシステム【VCC対応】
- Digital0 JPY




オブジェクトの位置を最初の場所へ戻すボタンのスクリプトアセットです。メッシュとマテリアルを変更して使うことを想定しています。無料。 前提 ・UdonSharp導入済み ・Unity 2022.3.22f1で動作確認 導入手順 ①ダウンロードしたzipを解凍ソフトで解凍し、unitypackageを取り出す ②導入したいワールドをUnityで開いた状態で、unitypackageをダブルクリックするなどでインポートする ③Prefabs/ObjectPositionReset.prefabをシーンへドラッグ&ドロップ ④リセット対象を設定する ・手動で入れる場合:targets にオブジェクトを配列登録 ・自動で集める場合:ResetRootを対象の親に設定し、useManualTargets=false、includeChildren=true ⑤リセットの起動方法を決める ・ボタンを押して起動:ObjectPositionResetのメッシュを任意のものに変更 ・一定時間ごとに起動:autoResetInterval に秒数を入力 ・エリアの出入りで起動:ResetTriggerRelayのコライダーを任意の大きさ、形に変更。「入ったら」「出たら」のON/OFFは ObjectPositionReset 側のヘッダーで設定 ⑥アップロードする ワールドの全員に反映させたい場合 リセット対象に VRCObjectSync を付けてください。リセット時に本アセットが所有権を取得してから座標を戻します。 見た目の変え方 Mesh Filter と Mesh Renderer の Materials を変更すると、ボタンの見た目を変えられます。当たり判定は Collider で行われ、押せる距離は Udon Behaviour の Proximity で決まります。 コンポーネント解説 ObjectPositionReset インタラクトすると即座にリセットを開始するリセットボタンです。 ResetGroup まとめ役と実行役を兼ねます。このオブジェクトの子にすれば、自動的にリセット対象になります。 ResetTrigger 自動片付けエリアを作ります。 ・Filter Layers:リセット対象(Pickup等)が属するレイヤーを設定してください ・Reset On Enter:エリアに入った時にリセット ・Reset On Exit:エリアから出た時にリセット 中のペンや小物がエリアに触れると、親の ResetGroup を特定して実行します。 ResetTimer 一定時間ごとにリセットを実行します。置きっぱなしのアイテムを元の位置へ戻す用途です。 より良いボタンが欲しい場合は、LuraSwitch2(QuickBrown Design Studio 様)をどうぞ。 https://lura.booth.pm/items/1969082 ■ 同シリーズのワールドギミック(30種類以上・すべて無料) https://pon-poko-pon.booth.pm/
差し替え
モデル差し替え プレハブ内の見た目用オブジェクト(例:~Model)のMeshFilter/MeshRendererに、好きなメッシュやマテリアルを入れてください。スクリプトは親側に付いているので、見た目を替えても動作は変わりません。 差し替えたメッシュに合わせて、Collider の大きさと、Udon Behaviour の Proximity(押せる距離)も調整してください。
利用規約
ローカルでのみ動作確認済み 再配布・改造など全部歓迎 本アセットは現状有姿で提供します。 記載の対応バージョン以外での動作は保証しません。 サポート・アップデートの提供は実施する場合がありますが義務ではありません。不具合報告は歓迎しますが、修正対応の実施可否・時期は作者の裁量とします。
更新履歴
2025/11/07 更新 エリアへ入る、出たときにリセットを実行する機能を追加 その他説明文の補足、オブジェクトの探査機能の追加など。 2026/01/14 更新 機能の改善




