все.
Мы являемся компанией по разработке игр и разрабатываем казуальные игры для ПК / MAC / iOS / Android с собственным движком, написанным на C ++ (90-100%), и мы довольны этим!
Теперь мы хотим нацелиться на XNA / WP7 и прошить.
Каков наилучший способ сделать это?
Конечно, нам придется переписать некоторые вещи низкого уровня, такие как рендеринг спрайтов / поддержка синхронизации / аудио, но мы хотим приложить как можно меньше усилий при переносе самого игрового кода.
A. Мы не хотим переписывать игровой код в два раза больше
B. В идеале даже еще один раз:)
Для flash мы будем использовать Haxe вместе с этой библиотекой .
Было бы здорово иметь поддержку C # target в Haxe. Он был объявлен, но не выпущен, и я думаю, что он не будет выпущен в ближайшем будущем Но я думаю, он выйдет через 1-2 года. Так что в переносе различных компонентов двигателя на Haxe возможны большие инвестиции.
До этого мы должны решить, как встретить А и Б.
Возможные варианты решения этой проблемы:
Использование mokey . Однако язык кажется настолько примитивным и настолько отличным от C ++ / AS3 / C # / etc, что мы решили его не использовать.
Прежде всего, разработайте порт XNA с помощью мозгов и конвертер C ++ в C # . Затем используйте C # для преобразования Haxe . Этот подход кажется наилучшим на данный момент, но я понятия не имею, сколько времени сэкономят преобразователи по сравнению с простым переписыванием кода. Тем не менее, я думаю, что они помогут.
Также возможно использовать Adobe Alchemy для поддержки флэш-памяти. Однако нам придется разработать новую архитектуру для разделения рендеринга / аудио и логики на разные языки, и мы хотим избежать этого - это кажется более сложным, чем перенос кода.
Так что вы думаете о 1-3 и знаете ли вы лучшие варианты для достижения A и B?
Может быть, другие мета языки / подходы / технологии?
Большое спасибо!