【ロリコライダー】(loli collider) 身長の低いアバターを使っているプレイヤーのために用意される足場のこと。 ワールドギミックとしてスイッチやスライダーで制御され、ローカル動作のものが多い Vket2022Winterに出展(Cosmotravel Elevator T-Omega 栄枯ノ終末『万華絡繰の魔法店』 https://winter2022.vket.com/circle/53 ) ## 概要 進捗どうですか集会での雑談で「Vketブースに置ける自動調節される足場コライダー」 というアイデアが出たので作りました。 * プレイヤーの目線の高さをもとに自動調節します * 手動調節もできます - 手動調節スライダーがあります - アバターのシルエットのプリセットボタンもあります * アバター変更も検知して追従させる機能があります(OFFにもできます) - SpaceDrag(PlaySpaceMover)もだいたいいい感じにします * コライダーの形は四角形のブロックを繋げて増やして曲げてできます ## 内容 * Example Scene.unity サンプルシーンです。Full(Complex), Simple, ExtremeSimple を置いてあります * AutoAdjustLoliCollider_Full.prefab 自動調節、マニュアル調節、プリセットボタンを盛り込んだ全部盛りです 1.8m まで対応 * AutoAdjustLoliCollider_Simple.prefab 自動調節でコライダーの ON/OFF のみ対応のシンプルモード * AutoAdjustLoliCollider_ExtremeSimple Variant.prefab Simpleからボタンを消したもの。足場しかない * AutoAdjustLoliCollider_162_Simple Variant.prefab Simpleを 1.62m 対応に変更する例 * Sprites/ 差し替え用テスクチャ。Complex/Simple, full(180)/162/120 を用意 * for Vket AutoAdjustLoliCollider_ExtremeSimple.prefab 最初のアイデアの実装版。Vket2022Winter入稿ルール準拠 SetPassCalls / Batches 消費は1~0(Floorを非Activeにする場合) UdonBehaviour消費数は1~0 (分解して他のスクリプトに相乗りさせる場合) - Q: 同一のコンテンツを複数のサークルで展示することは禁止では? > メインの展示内容ではない部分で他サークルと同じ3Dモデルが使われるような形は > 禁止ではありません この辺に沿うようにExtremeSimpleは自己主張を削ってギミックに徹しています ## 解説 TargetHeight オブジェクトの高さに合わせようとします。ただし、完璧にリアルタイムに 追従するとVR酔いを引き起こすので頭を動かしてある程度変化するものは無視します 既存のアセットの「スライダーを動かす→足場が上がったから操作不能になる」問題への 修正として、操作パネル自体もプレイヤーの視点の高さに追従します `Areas/Area (0)` オブジェクトのScaleを変更したり、オブジェクトを複製して Area (1), 2, と増やすことでコライダーの形をある程度作れます このとき、出たり入ったりの計算を簡単にするため実際のColliderは使用していません 付いているBoxColliderは範囲の確認用で、実際の判定には使われません View Point height 1.8m までの対応なんていらないよ~、必要なのはせいぜい1.2m程度 というパターンのために1.2m版までは作れるようになっています ## 前提 * VRChat Creator Companion "UdonSharp" テンプレート ## ライセンス CC0 ## Special Thanks * 進捗どうですか集会の参加者の皆様 * 手動調節プリセットボタンの影絵のアバター - バター - Space Robot Kyle - オリジナル3Dモデル『キッシュ』https://booth.pm/ja/items/954376 - オリジナル3Dモデル「ミーシェ」https://booth.pm/ja/items/1256087 - ロポリこん https://booth.pm/ja/items/1415037 - リコルー&ティオール https://booth.pm/ja/items/2230144 - オリジナル3Dモデル【muff-マフ-】https://booth.pm/ja/items/2559931
CC0
¥0
¥0
¥500
¥200
¥0~600
¥100