Подтвердить что ты не робот

Насколько хорошо WPF сочетается с XNA в реальной жизни?

Я понимаю, что есть несколько способов сочетания XNA и WPF в одном приложении. Мне кажется, что мне нравится использовать WPF для всего GUI и HUD в моих играх XNA. Кто-нибудь имеет практический опыт в отношении того, насколько этот подход работает в реальной жизни с использованием .NET 3.5 SP1? Любые подводные камни (например, проблема воздушного пространства)? Любой намек на то, что appoach работает лучше всего?

4b9b3361

Ответ 1

В 3.5 SP1 есть дополнение, которое позволяет лучше взаимодействовать между DirectX и WPF (D3DImage), и один из способов получить это через XNA.

Вот несколько деталей:

http://jmorrill.hjtcentral.com/Default.aspx?tabid=428&EntryID=259

Ответ 2

Интеграция XNA высока в нашем списке вещей, которые нужно добавить в WPF, поэтому мы ищем это для будущих версий. Оставайтесь с нами (в блоге GregSc), чтобы узнать, как они станут доступны.

Ян Эллисон-Тейлор

Подробнее об этом здесь

Ответ 3

Thamir Khason представил отличную сессию о WPF/XNA/Silverlight в Tech-ed... Вот его слайды: http://blogs.microsoft.co.il/blogs/tamir/archive/2008/04/14/my-teched-08-presentation-slides-download.aspx

PS. Это было довольно впечатляюще, чтобы увидеть... у него была игра, которая бегала на xbox. На своем рабочем столе, используя WPF для размещения XNA и его мобильного телефона, используя silverlight, все играют друг против друга.

Ответ 4

Вы хотите использовать D3DImage, но D3DImage работает по-разному в Windows XP и Windows Vista или 7.

В Vista или 7 вы создаете NON-lockable renderTarget для использования с D3DImage, и вы используете устройство Direct3D9EX. В XP вы создаете блокируемый renderTarget для использования с D3DImage и используете обычное устройство Direct3D9.

Также, используя XNA, было бы лучше использовать SlimDX, если бы вы просто сделали это для ПК. SlimDX не испытывает недостатка в функциях Direct3D и поддерживает Direct3D 9, 10 и 11.

http://slimdx.org/

Ответ 5

Я лично советовал бы не пытаться сделать эту интеграцию. Я знаю, для чего вы идете... легкость определения элементов GUI/HUD в WPF значительно перевешивает попытку сделать то же самое в простой старой XNA. Однако подумайте реалистично о времени, которое вы потратите, пытаясь включить этот сценарий, в зависимости от того, сколько вы сэкономите, если бы вы просто сделали все "изначально" в XNA. Также (и это может и не быть проблемой для вас), WPF не поддерживается на xbox или zune... поэтому вы бы ограничили себя: -)

Ответ 6

Эй, я знаю, что это уже после публикации, но если вы все еще ищете WPF-решение для XNA, вы можете следить за http://red-badger.com/product. Раствор XPF помещает wpf в XNA. SO смотрят, на данный момент он свободен, так как он находится в бета-версии, но это будет меняться по мере добавления дополнительных компонентов