Windows Phone 7 - Холст против XNA - PullRequest
0 голосов
/ 11 ноября 2011

Есть ли существенная разница в производительности между Canvas и XNA?

Что я имею в виду: я решил создать 2D-игру и знаю о двух возможных способах ее реализации: использование Silverlight и отображение материала наCanvas или использование XNA и рисование текстур.

Первый вариант, на мой взгляд, будет проще, поскольку он позволяет мне использовать сенсорные элементы управления и пользовательские элементы управления по умолчанию, тогда как в XNA, насколько я знаю, текстуры не позволяют.есть события Tap, связанные и проверяющие, какая текстура была нажата при каждом прикосновении пользователя к экрану ... ну, мне это не нравится.

Итак, любой из вас знает, есть ли разница в производительностимежду игрой с XNA и игрой на Canvas?

Ответы [ 2 ]

4 голосов
/ 13 ноября 2011

Чтение Платформа Silverlight и XNA для Windows Phone . Первый раздел, Когда использовать Silverlight или XNA Framework , прост и понятен и включает в себя этот совет.

  • Используйте Silverlight, если вам нужна основанная на XAML основанная на событиях среда приложения.
  • Используйте XNA Framework, если вам нужна высокопроизводительная игровая среда.

Существует огромная разница в производительности XNA и Silverlight.

В WP OS 7.1 теперь вы можете комбинировать Silverlight и XNA Frameworks, но я бы предостерег от перехода на этот дополнительный уровень сложности, если у вас нет явной необходимости.

2 голосов
/ 16 ноября 2011

XNA имеет гораздо лучшую производительность, чем HTML 5 canvas.Все нативное имеет лучшую производительность, чем холст HTML 5.

, в то время как в XNA, насколько я знаю, текстуры не имеют связанных событий Tap и проверяют, какая текстура была нажата при каждом прикосновении пользователя к экрану.... ну, мне это не нравится.

Вы можете сделать это за 10 минут с 10 строками кода.В целом у XNA есть лучший API, и хотя он не держит вас в руках по некоторым вопросам, реализовать эти области тривиально.

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