unityでCS0246とCS0234エラーが出たので対処法メモ(UniVRMインポート時)

unity err CS0246 error CS0234 Unity
※記事内に広告が含まれています。

バーチャル3Dクリエイター神部まゆみです(*^_^*)

この記事はunityでCS0246とCS0234エラーが出たので対処法をメモしておきます。

CS0234とCS0246エラーはMathematicsがないことが原因でも起きたので、↓の記事も参考になるかもしれません。

動作させた環境はunity2022.3.22、UniVRM v1.28.0です。

アーカイブをダウンロード
アーカイブをダウンロード
Release v0.128.0 · vrm-c/UniVRM
Release Notes日本語EnglishWarningfrom v0.125.0.com.vrmc.vrmshaders is removed.com.vrmc.vrmshaders is no longer required in ...

※追記:その後UniVRM v1.29.3でも同様のエラーが出たため、バージョンはあんまり関係ないかもしれません。

●PRスペース●

〇まゆみマート|BOOTH

BOOTHでVRoidテクスチャやVRChat向けオブジェクトなどを販売しています。いいねしてくれると励みになります(*^-^*)

エラー名 Assets\VRM\Runtime\FastSpringBone\Components\FastSpringBoneScheduler.cs(10,26): error CS0246 などその他多数

こんな感じのエラーが36個も並んでおり、「消去」を押しても消えません。

unity err cs0246

Assets\VRM\Runtime\FastSpringBone\Components\FastSpringBoneScheduler.cs(10,26): error CS0246: The type or namespace name ‘FastSpringBoneBufferCombiner’ could not be found (are you missing a using directive or an assembly reference?)

みたいなCS0246エラーがほとんどですが、

Assets\UniGLTF\Runtime\SpringBoneJobs\FastSpringBoneConbinedBuffer.cs(8,30): error CS0234: The type or namespace name ‘Blittables’ does not exist in the namespace ‘UniGLTF.SpringBoneJobs’ (are you missing an assembly reference?)

というCS0234エラーも混じっています。

UniVRMをインポートした直後にエラーが出たからそれが原因?

UniVRMを入れた直後にエラーが出たので、まぁそれが原因だと思いますね…。

Releases · vrm-c/UniVRM
UniVRM is a gltf-based VRM format implementation for Unity. English is here . 日本語 はこちら - vrm-c/UniVRM

解決策:UniVRMのフォルダを消して入れ直す

どうもUniVRMが既に入れてある状態で重複してUniVRMを入れようとするとこのエラーが出るみたいで、いったんUniVRMのフォルダを削除して入れ直せば大丈夫でした。

消すフォルダは↓だけど、まぁ事前にバックアップをとっておいたほうが良いかもしれません。私はいつも見切り発車で消してしまうが…。

unity err CS0246 error CS0234
  • UniGLTF
  • VRM
  • VRM10

VRM0.0向けのUniVRMを入れてあるプロジェクトだとVRMShadersとかいうフォルダもあったので、これもあったら消します。

unity err CS0246 error CS0234

ちなみに重複と言ってもUniVRM1.0とUniVRM0.0の重複ではなく、UniVRM1.0同士の重複でした。

↓1.0と0.0は共存できるみたいなので大丈夫です。

univrm vrm1

注意点 マテリアルエラーになったらMTOONを設定し直すか、VRMモデルをunityにインポートするところからやり直したほうが良いかも?

これUniVRMのバージョンによって挙動が違うのかな?

だいたいUniVRMを入れ直すと自動でMTOONが再設定されるんだけど、UniVRMを入れ直しても今回はマテリアルエラーになってしまった。

unity err CS0246 error CS0234

↓マテリアルをMTOONに設定し直しても見た目が変わってしまったので、あきらめてVRMモデルをunityにインポートするところからやり直しました。

unityで作りこんでからこうなると悲惨なことになるので、まぁバックアップは日ごろからとっておいた方が良いですね…。

もしくは良い感じのができたらUnityPackageにして保存しておいたり、オリジナルのモデルならいっそバックアップがてらBOOTHに出しておくのも良いかもしれないです。

おわりに

案外簡単に直って良かった。

まぁこういうエラーはよくあるのでバックアップはこまめにとっておいたほうが良いですね。

また何かあれば追記します(*^_^*)

タイトルとURLをコピーしました