0

少し前に XNA でゲームを書きましたが、ゲームとライブラリの 2 つのプロジェクトしかありません。それはうまくいきました、そして今私はそれをMonogameに移植しています。

MonoGame ゲーム プロジェクトとクラス ライブラリを作成し、古い XNA プロジェクトのすべてのファイルをそれらに配置しました。クラス ライブラリは、問題やエラーなしでビルドされます。ただし、他の (ゲーム) プロジェクトから参照を追加することはできません。

「[MyLibrary] への参照を追加できません」と表示されるだけです。

1つは.netをターゲットにし、もう1つは「.net CORE」をターゲットにしていますが、これが当てはまるかどうか、またはそれを修正する方法はわかりません。

私が何をすべきかについて誰かが私にアドバイスできますか?

4

2 に答える 2

1

あなたはおそらくフレームワークターゲティングの問題について正しいでしょう。

これに対処する方法はいくつかあります。最初の方法は、ライブラリをポータブルクラスライブラリに変更することです。これらは、MonoGameがサポートするさまざまなフレームワークを含むさまざまなフレームワークをターゲットにできるように設計されています。 http://msdn.microsoft.com/en-au/library/gg597391.aspx

ポータブルクラスライブラリの欠点は、完全な.NETFrameworkのサブセットのみをサポートすることです。その場合は、ライブラリをMono for Android Libraryプロジェクト(またはターゲットとするフレームワーク)に変更してみてください。

複数のターゲットフレームワーク用にビルドし、各プロジェクトで重複するコードの量を最小限に抑える必要がある場合は、ファイルを各プロジェクトへの「リンク」として追加するのが最善の策だと思います。少しメンテナンスが追加されますが、1つのプロジェクトでファイルを編集し、すべてのプロジェクトで変更を加えることができます。

于 2013-01-25T00:31:11.830 に答える
1

私があなただったら、@craftworkgames が指定する理由と、Windows 8 アプリを開発した私自身の経験から、Portable Class Library を避けます。クラスを独自のライブラリに分離することは設計原則からは良いことですが、私はそれらすべてを開発プロジェクトに追加します (世界が使用できるようにする API を作成している場合を除きます)。

于 2013-01-25T22:56:11.133 に答える