UdonSharpを書いているときにローカル環境ではビルドが通るのにアップロードしようとするとan exception occurred during extern to 'vrcsdkbasevrcplayerapi.__getposition__unityenginevector3'というエラーが出てビルドできなかったときの対処法
実行環境
項目 | バージョン |
---|---|
Unity | 2019.4.31f1 |
VRCSDK3-WORLD | 021.11.08.14.28 |
UdonSharp | v0.20.3 |
解決方法
ネットで検索するとこちらのようなツイートが.
エラーは
— あとちゃん@VRC (@atras_chan_VRC) September 21, 2021
「[UdonSharp] Assets/Kinel/VideoPlayer/Scripts/InformationManager.cs(51,55): Udon runtime exception detected!
An exception occurred during EXTERN to 'VRCSDKBaseVRCPlayerApiArray.__Get__SystemInt32__VRCSDKBaseVRCPlayerApi'.
」 pic.twitter.com/nrANgCS6yq
こちらの方は配列を利用しているが、要はヌル判定をすればよい。
VRCPlayerApi localPlayer; Transform trans; void Start() { localPlayer = Networking.LocalPlayer; trans = transform; } void Update() { // transposition = localPlayer.GetPosition() をnull判定なしで使うとエラー if(localPlayer != null){ trans.position = localPlayer.GetPosition(); } }
null安全確認ヨシッ