GUIDE / ADVANCED

使い方ガイド(経験者向け)

Unityの基本操作(Inspector/Prefab/GameObject等)は前提知識として省略し、PortalSystem固有の手順・仕様・注意点だけを簡潔にまとめます。Unity基礎から知りたい場合は初心者向けガイドへ。各パラメータの詳細はパラメータ辞典を参照してください。

Trigger接触/Interact
Fade
TeleportTo(Destination)
Fade-in

構成要素は3つ:PortalTrigger(入口)/PortalDestinationMarker(出口)/PortalSystemRootScreenFadeController+SnapshotCameraController、シーンに1個)。全処理は完全ローカル(ネットワーク同期なし)。ビルドごとにPortalBuildProcessorが全ポータルを走査して配線し直す。

導入

  1. VRChat SDK3 - Worlds 3.7.1以降(UdonSharp同梱)を導入
  2. .unitypackageをインポート(Assets/PortalSystem/ + Assets/PortalGimmick/
  3. UdonSharpコンパイル待ち
  4. TMP Essentials必須(未導入だとラベルがピンクに)。ダイアログが出なければ Window > TextMeshPro > Import TMP Essential Resources

設置

NOTETools > PortalSystem > セットアップウィザード でワンクリック配置可能。
  1. PortalSystemRoot をシーンに1個のみ配置
  2. 入口Prefab(Box/Round/Button)を配置
  3. Portal_Destination を着地位置・向きで配置
  4. Triggerの destination にDestinationをアサイン
  5. Destination子の ShotPoint でアングル調整(Game Viewは16:9固定で確認
  6. Build & Test / アップロード時に自動配線

ビルド前チェック

Tools > PortalSystem > シーン検証PortalBuildProcessor と同一基準の10項目をチェック。Error/Warning/Infoの3段階、対象オブジェクトへのジャンプと一部自動修正に対応。

Prefabの種類

Prefab起動方式備考
Portal_Trigger_Box接触(isButtonMode=false)矩形範囲。AreaIndicator同梱
Portal_Trigger_Round接触円形範囲。AreaIndicator同梱
Portal_Trigger_ButtonInteract(isButtonMode=true)ButtonVisual(台座+キャップ)同梱、rootコライダーで判定
Portal_Trigger_Door_ButtonInteract+扉演出Button型ベース。手前開き110度、doorOpenWait/doorCloseDelayで調整
Portal_Trigger_Door_Open接触Box型ベース。開放固定+DoorwayPreviewQuad(縦長クロップ)。PreviewBillboard無効厳守

アングル調整

PortalDestinationMarkerカスタムインスペクタで16:9チェック・Scene View⇔ShotPoint視点コピー・試し撮りプレビュー(Inspector内512×288一時RT)が可能。見たまま=本番反映。

プレビューパネル構造

Portal_Trigger_* └─ PreviewPanel (PreviewBillboard, 既定無効) ├─ PreviewQuad (16:9) ├─ Frame (差し替え/非アクティブ化自由) └─ DestinationLabel

PreviewBillboard有効化でプレイヤー方向へY軸追従(activeDistance/turnSpeed)。フレーム差し替えは必ずPreviewPanel直下(PreviewQuad子だとスケール1.6×0.9が乗り歪む)。詳細は辞典参照

生成物

ビルド時に Assets/PortalGenerated/<シーン名_GUID>/ へRT/Materialを自動生成(削除しても再ビルドで復元)。プレースホルダーは Textures/PortalPlaceholder.png(1024×576)、Tools > PortalSystem > プレースホルダー画像を再生成で初期化。

制限事項

既知の問題

症状原因/対処
ラベルがマゼンタTMP Essentials未導入 → インポート
日本語が「□」フォント未設定 → NotoSansJP SDFに変更
プレビューが古い/ずれるポータル変更後の再ビルド忘れ
着席中に反応しないVRChat仕様。Button型へ変更で回避
NOTE各パラメータの既定値・変更タイミングはパラメータ辞典に一覧化しています。