RのWeb制作

Webサービス制作のための技術情報を。データ分析(Python、機械学習コンペ他)や自作野球ゲームMeisyoのこと中心。

モバイル制作 Unity(C#)

Unityで”Class” is missing the class attribute ‘ExtensionOfNativeClass’が発生する原因がわからない ⇒ Easy Save3でした

投稿日:

はじめに

通常、”Class” is missing the class attribute ‘ExtensionOfNativeClass’というエラーが出る場合は、【Unity】’【クラス名】’ is missing the class attribute ‘ExtensionOfNativeClass’!が発生するで解決できます。

ただ、Easy Save3が入ったプロジェクトであると原因がわからない。
「関連するスクリプトがアタッチされていないのに、なぜか当該エラーが発生する…」と。

原因

シーンにあるES3 ManagerのReferencesの中に、”Class”に関するデータが残る。

Editorから、当該SceneのES3 ManagerをRefreshしてもOptimizeしても何も変化がありません。これも原因といえばそう。私のイメージするRefreshは削除→再作成しないとできません。

対処方法

当該シーンにあるES3 Managerを削除し、再度作成します。

エラーの起こし方(例)

1. ES3 Managerを導入

2. Log(当該クラス)にScriptableObjectを継承して、test.Scene(当該シーン)のGameObjectにアタッチしたスクリプト(XXX.cs)にアタッチする。

Log.cs

public Log : ScriptableObject {
    ...
}

XXX.cs

public Log myLog;

3. ES3 ManagerにXXX.csをアタッチしたGameObjectが(勝手に)保存される

4. 設計変更をして、LogからScriptableObjectを外す。当然、XXX.csからもLogの記載を削除する。

Log.cs

public Log {
    ...
}

test.Scene(当該シーン)で、ES3 Manager内のReferencesにXXX.csのLogクラスの記載が残っているのでエラーが出る

“Log” is missing the class attribute ‘ExtensionOfNativeClass’

感想

Refreshって言ったらRefreshだと思うじゃん!!
意味わからんやろこれ…(´Д⊂ヽ

-モバイル制作, Unity(C#)

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

【Flutter】ToDoアプリの作成

StatefullWidgetの状態管理、データの受け渡し、デバイスへのToDoリスト保存の解説がなかったので例となるアプリを作成しました。 こちらのアプリを応用すれば、大体のアプリが作れるのではない …

UnityでiOS版をリリースする際に、Firebaseを使っていると起こるビルドエラー「Undefined symbols for architecture arm64」への対応

起こること 「Undefined symbols for architecture arm64」がでて、XCodeのビルドができない。 原因と対策 Firebase等がインストールできていない。 Fi …

ゲームアプリ運営の分析ノウハウ vol.2 新規登録者編

はじめに アプリ開発者によくある悩み・・・登録者がゲームを続けてくれません!!。 続けてくれないをより細かく言うと、(1)コンテンツを一通りプレイしてもらいたいのか、(2)毎日プレイしてほしいのかによ …

ゲームアプリ運営の分析ノウハウ vol.1 概要編

はじめに 以前から、Twitterなどでこんな悩みを見聞きしていました。 「ゲームアプリを運営する際に、どのような視点で、どのような指標を分析すべきかわからない」というものです。今回はそちらのお悩みに …

監督たちの甲子園 世紀の逆転劇 公式サイト

2年越しの会心のゲームができました。ぜひお楽しみください。 ユーザーの方々のコメントを元に、必死に調整中です(´Д⊂ヽ ゲーム説明 伝統、戦略、想いが交錯する甲子園へ ――あなたの采配で一球のドラマを …