Можем ли мы обернуть отдельные 2D-игры, разработанные в XNA, в dll? - PullRequest
2 голосов
/ 21 января 2010

Мы должны разработать 5-10 отдельных 2D игровых модулей с использованием XNA. Можно ли обернуть эти отдельные игры в dll и использовать их на одной консоли (Exe)? Если да, как мы можем прочитать пользовательский ввод (используя устройства ввода, такие как клавиатура, мышь, джойстик) из DLL?

Нужен вклад экспертов XNA. Я новичок в технологии XNA.

Спасибо заранее.

1 Ответ

1 голос
/ 21 января 2010

Я бы сказал, да. .Net позволяет вам иметь один exe, который ссылается на внешние библиотеки для загрузки функциональности. Существует множество библиотек (на ум приходит MEF ), основанных на этом факте для включения архитектур плагинов.

Игры XNA - это, прежде всего, сборки .Net. Поэтому вы должны быть в состоянии создать "оболочку" exe, которую можно настроить для загрузки игровых модулей из выбранных внешних библиотек.

То, что вы должны иметь в виду, это то, как обрабатывается Контент. Поскольку файлы контента хранятся отдельно от двоичных файлов, вам потребуется схема для того, как контент «связывается» с вашей DLL.

Вы должны прочитать механизм GameComponent , возможно, ваши игровые модули должны быть реализованы как GameComponents.

Что касается ввода: вы можете обрабатывать ввод как в оболочке, так и в отдельных модулях. В любом случае вам нужно определить интерфейс между ними, чтобы при необходимости можно было делегировать управление оболочке, например, для перехода к общему меню настроек.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...