1

XNAに相当するモノゲームはありModelProcessorますか?

AnimatorProcessorから派生したカスタム クラスを使用しています。これは、 「より良いスキンのサンプル」ModelProcessorで行われていることと似ています。

[ContentProcessor(DisplayName = "Animation Processor")]
public class AnimationProcessor : ModelProcessor
{
    // custom stuff
}

私は現在、このコードを MonoGame に移植しようとしていますが、(MonoGame は最近独自のパイプラインを取得しましたが) ModelProcessorMonoGame パイプライン プロジェクトにはクラスがないようです。

XNA パイプラインを使用できますが、問題は、すべてのモデル コンテンツ クラスが実際の XNA クラス/構造体 (ベクトル、クォータニオン) を使用することです。これは、MonoGame のものとまったく同じ名前空間にあり、メイン プロジェクトでコンパイル時の競合が発生します。これらのクラスを 1 つのアセンブリ (XNA) から別のアセンブリ (MonoGame) にマップする必要があることを意味します

(アップデート)

MonoGame には実際にModelProcessorそのアセンブリの内部があることに気付きMonoGame.Framework.Content.Pipelineましたが、追加のMonoGame.ContentPipelineアセンブリがあります (それが廃止されているのか、それともパイプライン内で使用する必要があるのか​​はわかりません)。

しかしAnimationProcessor、MonoGame の を使用するようにリビルドするModelProcessorと、Visual Studio はそれを使用して fbx ファイルをインポート/処理できません。コンテンツ プロジェクトのビルドは で失敗し"Cannot find content processor 'AnimationProcessor'"、.fbx ファイルのドロップダウン ボックスのオプションとして提供されません (おそらく、Visual Studio が XNA のプロセッサから派生したクラスを探し、MonoGame を気にしないためです)。

カスタム プロセッサを使用して fbx コンテンツをインポートし、XNA の代わりに MonoGame クラスを使用する方法を知っている人はいますか?

4

1 に答える 1

2

現在、MonoGame には独自のコンテンツ パイプラインがあります。したがって、実際に行う必要があるのは、カスタム プロセッサを、MonoGame.Framework.Content.Pipeline アセンブリを参照する新しいライブラリに移植することです。このライブラリは、Pipeline ツールと互換性があります。

これに関するドキュメントはhttp://www.monogame.net/documentation/?page=Using_The_Pipeline_Toolにあります。具体的には、カスタム コンテンツ プロセッサのセクションをご覧ください。

于 2015-11-20T11:24:13.020 に答える