Я недавно начал изучать XNA, и мне это очень нравится, и это управляемый код. Однако после некоторого чтения кажется, что для телефонов с Windows 8 и Windows 8 XNA не будет обновляться для работы с этими новыми функциями, и именно Directx11 будет использоваться.
Так кто-нибудь знает, правда ли это? Я не знаю никакого c ++, но я довольно уверен в c #, поэтому я хотел бы придерживаться XNA, но если в будущем будут использоваться c ++ и Directx, может быть, мне стоит перейти сейчас? Кроме того, насколько сложнее изучать c ++, если я знаю c #?
если дело в том, что directX — это путь в будущее, я мог бы просто пойти с единицей, чтобы я мог продолжать использовать c #.
Любая помощь с этой темой высоко ценится, спасибо большое
На прошлогодней конференции Build и других местах Херб Саттер из MS говорил об этом так (перефразировано):
За последнее десятилетие аппаратное обеспечение стало настолько мощным, что мы смогли позволить себе дополнительные издержки на таких продуктивных языках, как .net. Если бы мы раздвинули пределы возможностей, ну и что, в следующие годы компьютеры не справятся с этим. стоимость создания программного обеспечения на управляемом языке была меньше, чем на родном языке, и у нас было достаточно аппаратных средств для уменьшения управляемых издержек.
В ближайшее десятилетие оборудование, используемое для достижения цели, становится все меньше, мобильнее, менее мощным и более энергоэффективным. Внезапно эффективность кода и производительность в программном обеспечении становятся все более важными. Пока у родного есть это преимущество.
Я полагаю, поскольку графическое программное обеспечение (игры) может быть областью разработки, которая быстро выходит за пределы возможностей, понятно, что это может быть одним из первых, кто претерпит это изменение.
Насколько я знаю (и из информации, найденной в сети), окна будут удаляться от XNA, хотя технически это должно быть обратно совместимо. Если вы ищете статью для чтения о будущем XNA:
Я бы придерживался C #, вы быстрее в разработке, и разница в производительности не слишком велика, поэтому вам не нужно жаловаться на это.
Если вы не хотите ориентироваться и на мобильные платформы, я бы посоветовал использовать OpenGL, начинать с него сложнее, но вы должны иметь возможность разработать платформу, которая поддерживает мобильные и настольные платформы (используя MonoTouch и Monodroid).
Для тех, кто кричит сейчас, что DirectX лучше: Я знаю, что в целом вы правы, но DirectX не поддерживается на мобильных платформах, таких как iOS и Android. Eсть клон XNA для всех платформ, которые могут работать, но я не знаю, будет ли он поддерживать новые функции DirectX / OpenGL.