РЕДАКТИРОВАТЬ: Это официально, Microsoft убила XNA . Я опечален этим, но это не было неожиданным, это то, что я предсказывал, произойдет, но надеюсь, что я ошибся. Все, что ниже этого пункта - мой оригинальный пост с начала 2012 года.
Что еще нужно учитывать, так это то, что Microsoft, вероятно, выпустит новую консоль в середине-конце 2013 года. Будут ли они продолжать пытаться заставить что-то вроде XNA работать на своей консоли? Если они хотят, чтобы люди делали игры на новом Xbox, им что-то понадобится, и было бы расточительно отбрасывать XNA и начинать заново с чего-то другого. Кроме того, Windows 8 будет работать на планшетах с процессорами ARM, и мы все знаем, насколько велик рынок для приложений для телефонов и планшетов, для Microsoft это большая возможность иметь API для создания приложений на этих устройствах, но это будет XNA или только .NET?
Я вижу пару потенциальных путей:
XNA не была особенно успешной с нынешним Xbox, в основном из-за того, что на рынке представлено мало игр XNA, а также из-за плохой настройки магазина для игр XNA в Xbox Live. Поэтому Microsoft может решить полностью отключиться, оставив нам XNA 4.0, совместимую с DX10, и станет достойной платформой для людей, на которых можно будет создавать простые игры для ПК в течение следующих нескольких лет, прежде чем она исчезнет.
Microsoft может увидеть огромные возможности с домашними приложениями, такие вещи, как Apple App Store, приносят огромные деньги, и если Microsoft может упростить создание игр и их перенос на планшеты Xbox Live и Windows 8, то у них есть шанс сделать их большими. на рынке консольных приложений. Если Microsoft пойдет по этому пути, я увижу новую XNA, поддерживающую DX11.1 с его следующей версией, и продолжающую поддержку XNA еще как минимум 5 лет.
Некоторые вещи для рассмотрения:
В настоящее время с XNA вы должны заплатить 100 долларов, если вы хотите разработать свою игру для Xbox 360, это 100 долларов, чтобы просто попробовать и посмотреть, сможете ли вы заработать какие-либо деньги, и даже тогда MS получает часть прибыли от вашей игры. Если Microsoft возьмет гонорар в 100 долларов и просто возьмет на себя большую часть прибыли, они могут в конечном итоге увидеть намного больше игр и заработать больше денег на сделке.
Игры XNA имеют проблемы с производительностью на Xbox 360. Microsoft не хотела, чтобы игры XNA представляли угрозу безопасности, когда они запускались на Xbox-ах других людей, поэтому они в основном запускали игры XNA в песочнице с ограниченным доступом к процессору, графическому процессору и памяти. В дополнение к ограниченному доступу игры, запрограммированные в полном пакете Xbox SDK, не написаны на C # и не требуют таких вещей, как сборка мусора, но XNA работает на собственном C # от Microsoft, поэтому Microsoft пришлось написать оболочку, чтобы XNA могла работать на Xbox, и эта обертка немного замедляет работу. Такие вещи, как производительность с плавающей запятой, могут быть в 10 раз медленнее, чем игры для Xbox, написанные через полный SDK. Эти проблемы с производительностью означают, что игры для Xbox, разработанные через XNA, не могут в полной мере использовать весь потенциал Xbox, что только ухудшает качество игр, которые Microsoft может получить от сообщества. Microsoft будет хорошо подумать об этом, если они продолжат работу с XNA, чтобы их следующая консоль позволила разработчикам XNA использовать систему в полной мере.
Насколько я знаю, XNA не будет поддерживать стиль Metro в Windows 8, поэтому разработчики не смогут писать игры, чтобы воспользоваться этим. XNA также не будет работать на процессорах ARM, поэтому вы не можете использовать XNA для написания приложений для планшетов с Windows 8, которые скоро появятся. Является ли это признаком того, что XNA может не поддерживаться в будущем?
Microsoft использует XNA для игр прямо сейчас, но если немного поработать, ее можно использовать и для создания некоторых интересных приложений. Если Microsoft распространит XNA в сообществах, отличных от разработчиков игр, то он может привыкнуть чаще, и у Microsoft будет больше оснований продолжать поддерживать его.
Форумы XNA немного иссякли, людям требуется больше времени, чтобы получить ответы, и я редко вижу какого-либо члена команды XNA на форумах, кроме Шона Харгривза, поэтому они могут просто быть в роли поддержки в это время.
Я создал и поддерживаю игровой движок с открытым исходным кодом для XNA, за последние 2 года количество скачиваний движка упало примерно до половины того, с чего они начинали, даже несмотря на то, что движок намного лучше, чем раньше. Это сигнализирует мне, что намного меньше людей используют XNA, чем раньше. Вот график количества посещений моего сайта. Вы можете увидеть, что интерес к XNA достиг своего пика примерно с конца 2007 года до середины 2008 года.
Вот длинная дискуссия, в которой участвуют некоторые члены команды XNA. Конечно, они не хотят много комментировать, потому что Microsoft мало говорит о вещах до того, как их объявят:
http://xboxforums.create.msdn.com/forums/t/91616.aspx
Также интересны такие цитаты:
Создавайте иммерсивные игры, используя возможности DirectX. Новый графический стек Windows 8 лучше интегрирован, что упрощает совместное использование компонентов Direct2D, Direct3D и DirectCompute и требует меньше дублированных ресурсов, чем раньше. Возможности, ранее доступные только в XNA, такие как DirectXMath, XAudio2 и XInput, теперь доступны. Чтобы получить максимальное удовольствие от игр и видео, используйте DirectX 11.1 для создания стереоскопического 3D в своих приложениях.
http://download.microsoft.com/download/1/E/4/1E455D53-C382-4A39-BA73-55413F183333/Windows_Developer_Preview-Windows8_guide.pdf
В настоящее время я поддерживаю игровой движок с открытым исходным кодом для XNA, поэтому я бы предпочел, чтобы в будущем его поддерживали, однако, даже если XNA 4.0 является последней XNA, она все еще является достойной платформой для быстрого и простого создания игр для Windows, а также отличный API для тех, кто хочет научиться делать видеоигры.
Мое честное мнение, что XNA 4.0 будет последним, но я искренне надеюсь, что ошибаюсь.