MonoGame ModelProcessor

Есть ли у MonoGame аналог XNA? ModelProcessor?

Я использую кастом AnimatorProcessor класс, производный от ModelProcessor, аналогично тому, что сделано в "образце с лучшей кожей":

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

Сейчас я пытаюсь перенести этот код в MonoGame, но кажется, что (хотя MonoGame недавно получил свой собственный конвейер) нет ModelProcessor класс в проектах трубопровода MonoGame.

Я мог бы использовать конвейер XNA, но проблема в том, что все классы содержимого модели используют фактические классы / структуры XNA (векторы, кватернионы), которые находятся в том же пространстве имен, что и MonoGame, создавая конфликты времени компиляции в моем основном проекте. Это означает, что я должен отобразить эти классы из одной сборки (XNA) в другую (MonoGame), что довольно неуклюже.

(Обновить)

Я понял, что MonoGame действительно имеет ModelProcessor внутри его MonoGame.Framework.Content.Pipeline сборка, но тут есть дополнительный MonoGame.ContentPipeline сборка (для которой я не уверен, является ли она устаревшей, или все еще должна использоваться в конвейере).

Но если я восстановлю AnimationProcessor использовать MonoGame's ModelProcessor Visual Studio не может использовать его для импорта / обработки моего файла fbx. Построение проекта контента не удается с "Cannot find content processor 'AnimationProcessor'" и даже не предлагается в качестве опции в выпадающем списке для файла.fbx (возможно, потому что Visual Studio ищет классы, производные от процессоров XNA, и не заботится о MonoGame).

Кто-нибудь знает, как я должен импортировать контент fbx, используя пользовательский процессор, и все еще иметь классы MonoGame вместо XNA?

1 ответ

MonoGame теперь имеет свой собственный конвейер контента. Итак, что вам действительно нужно сделать, это перенести ваши пользовательские процессоры в новую библиотеку, которая ссылается на сборку MonoGame.Framework.Content.Pipeline. Эта библиотека будет совместима с инструментом Pipeline.

Документацию по этому вопросу можно найти по адресу http://www.monogame.net/documentation/?page=Using_The_Pipeline_Tool. В частности, посмотрите на раздел для пользовательских процессоров контента.

Другие вопросы по тегам