Я ищу что-то вроде альтернативы XNA - мне все равно, будет ли это 2D или 3D движок. Это не потому, что мне не нравится Windows или я против Microsoft; это потому, что я люблю запускать Linux, код на Linux полностью (для C # я использую Mono, очевидно), и ни в коем случае не имею никакого аппаратного обеспечения для поддержки программирования в XNA, просто потому что моей видеокарте 6 лет. У меня также нет компакт-диска Windows 7 / Vista для DirectX 10.
Таким образом, для разработки игр я застрял в каменном веке. Тем не менее, я очень люблю C # и не хотел бы, чтобы из-за этого пришлось отказаться от него как от языка.
Что я могу сделать?
Ответы:
Боюсь, что в мире кроссплатформенных фреймворков на основе C # не существует полной альтернативы XNA. Monoxna давно умерла, и очень немногие другие кроссплатформенные инструменты используют C # в качестве языка выбора.
Однако этот перспективный порт XNA для iOS и Android выглядит очень многообещающе: ExEn . Не знаю о требованиях, хотя.
Поскольку вы использовали слово «движок», вы можете захотеть что-то более сложное. Я могу вспомнить только один дешевый полноценный движок C #, который может работать на Linux и имеет довольно прощающие требования к оборудованию: NeoAxis .
Однако, если ваша основная цель - 2D-игры, вы можете проверить эту небольшую библиотеку кроссплатформенных игр: AgateLib . Два года назад было приятно использовать еще несколько глючно, может быть, теперь все стало лучше.
В любом случае, если что-то не получится , вы всегда можете использовать OpenGL с SDL через OpenTK или SDL.Net .
источник
Зачем искать альтернативу, когда вы можете использовать порт?
«MonoGame является бесплатной реализацией OpenGL платформы XNA 4.0. Она основана на превосходном диапазоне компиляторов Mono и совместима с MonoTouch (iOS), Mono для Android (Android), MonoMac (Mac OS X), Mono для Windows и теперь линукс!
Наша цель - позволить разработчикам XNA на Windows & Windows Phone 7 перенести свои игры на iOS / Android / Mac OS X / Windows / Linux и наоборот, с минимальными трудностями ».
http://monogame.codeplex.com
https://github.com/mono/MonoGame
источник
2 библиотеки для рендеринга программного обеспечения:
Я считаю Allegro более мощным с точки зрения подталкивания пикселей, но я не думаю, что он видит тот же уровень активности, что и SDL, и хотя SDL поддерживается его автором в актуальном состоянии, я думаю, что это намного меньше, чем в случае с Allegro.
источник
Вы можете проверить ANX:
ANX.Framework - это фреймворк, совместимый с исходным кодом Microsoft XNA framework 4.0. Совместимость с исходным кодом означает, что вы можете «перевести» игровой проект XNA в игровой проект ANX, просто заменив все пространства имен из Microsoft.XNA.Framework на ANX.Framework. Преимущество ANX в том, что вы можете поменять местами RenderSystem, InputSystem и AudioSystem. Переключая эти системы, вы больше не ограничены для запуска своей игры с использованием DirectX9, который использует XNA. ANX поставляется с DirectX10 RenderSystem по умолчанию. DirectX 11, DirectX 11.1 и OpenGL 3 RenderSystem находятся в стадии разработки. Это позволит запускать ваши игры на Linux и других платформах, которые поддерживаются OpenGL и т. Д., Просто меняя пространства имен.
Сайт Codeplex: http://anxframework.codeplex.com/
Он все еще находится в стадии разработки, но большинство основных функций XNA реализованы.
источник