【無料】VRChatでピックアップしたとき、VRとPCでオブジェクトの向きを補正する
- ダウンロード商品¥ 0

VRChatでピックアップしたとき、VRとPCでオブジェクトの向きを補正するUDON#スクリプトです。 【内容】 unitypackage 【詳細】 ピックアップするとGripの向きはPCの場合は腕を前に伸ばした向きになり、VRではコントローラーの柄の向きになります。(Meta Questでテストしています) PCかVRかを判定して同じように向きになるようにGripを回転させています わからないことがあれば・・・VRChatで逢いましょう [yukichan.jpにフレンドリクエストしてね] ここまで書いたんですけど、コードが短いのでこの文の最後にコピペ用のコードを記載します。 ダウンロード~インポートまで省けます。U#名はReGripです。じゃ、またね! 【動作確認環境】 Windows 11 Unity 2022.3.22f1 VRChat SDK-world 3.6.1 【注意事項】 ・本ソフトの使用による不利益・トラブル等に関して作者は一切の責任を負いません ・本ソフトにバグ等の不具合がなく完全な挙動をすることを作者は本ソフトに瑕疵・不具合がなく完全動作することを保証しません ・作者は本ソフトを現状のままでの再配布及び再販売を禁止します。他の作品に含めた状態での配布および商業利用は許可します ・本ソフトを他の作品に含めて公開する場合は下記クレジット表記を希望します ●アマグラマーゆきちゃん https://yukichan-jp.booth.pm/ using UdonSharp; using UnityEngine; using VRC.SDKBase; using VRC.Udon; public class ReGrip : UdonSharpBehaviour { public Vector3 trim = new Vector3(-90.0f, 0.0f, 0.0f); void Start() { VRC_Pickup pickup; VRCPlayerApi player; Transform grip; if (!(pickup = (VRC_Pickup)GetComponent(typeof(VRC_Pickup)))) return; if (pickup.orientation != VRC.SDK3.Components.VRCPickup.PickupOrientation.Grip) return; if (!(grip = pickup.ExactGrip)) return; player = Networking.LocalPlayer; if (!player.IsUserInVR()) return; grip.transform.localRotation = Quaternion.Euler(grip.transform.localRotation.eulerAngles.x + trim.x, grip.transform.localRotation.eulerAngles.y + trim.y, grip.transform.localRotation.eulerAngles.z + trim.z); } }