LINUX.ORG.RU

Как автоматизировать миграцию сотни диалогов с MFC?

 , ,


0

1

Есть исходники игры Rowan's Battle of Britain. https://github.com/xor2003/bob-flight-sim

Как автоматизировать миграцию сотни диалогов с MFC? Там формы .rc, код.

Как проще уйти с DirectX? Что лучше SFML, Allegro 5?

Физика там слабая. Графика тоже старовата немного. Была группа которая занималась доработкой, накрутили туда highres текстуры, т.п. Или лучше портировать карты и бои на другой симулятор?


Не имею ничего против winelib (хотя это костыль и гораздо лучше нативный порт), наверное многие игры доступные в Steam/Linux те что не имели портабельного движка были портированы при помощи winelib или подобных либ, в том числе коммерческих. Не беда, главное чтобы было протестировано разработчиком и если что апдейты шли.

I-Love-Microsoft ★★★★★
()
Ответ на: комментарий от I-Love-Microsoft

Да, конечно - для начала winelib. Но там с MFC все сложно. Основная идея покрыть все тестами и портировать/Заменять все части по очереди.

xor2003
() автор топика

Переписать на wxWidgets наверное проще всего.

invy ★★★★★
()

Как автоматизировать миграцию сотни диалогов с MFC? Там формы .rc, код.

Ну путь настоящего джедая - сварганить перл-скрипт, который будет исправлять все исходники и заодно переводить .rc в .ui.

Для одной игры - трудоёмко, весьма трудоёмко. Зато если войдёшь во вкус и начнёшь портировать и другие программы - пригодится.

Кстати, насчёт сотни диалогов - имеется в виду именно сотня диалоговых окон с разной логикой? Если да - то для игры это несколько... хм... необычно. Или окна однотипные, только текст в них разный?

hobbit ★★★★★
()

Посмотрел, проще заново переписать всё наверное.

invy ★★★★★
()
Ответ на: комментарий от Turbid

Нет Ил-2 конечно лучше, но где на него исходники?

xor2003
() автор топика

MFC => WxWindows

anonymous
()

Что лучше SFML, Allegro 5?

Первое полуразложившееся, второе гвоздями к иксам прибитое и малопопулярное.

Лучше всего SDL2. Там и платформ больше и их поддержка лучше, вроде iOS/Android/OS X. А если куча «стандартных» MFC-шных диалогов в игре, то тогда может стоит задуматься о Qt?

Как автоматизировать миграцию сотни диалогов с MFC? Там формы .rc, код.

Наверное только ручками.

Преобразовать MFC формы -> QT .ui?

Там есть даже HOWTO по переводу проекта на Qt с внятными стадиями от подключения Qt в MFC-шный event loop до выбрасывания mfc. Вот конвертера форм и ресурсов я не видел.

https://sites.google.com/site/nttrungmtwiki/home/it/programming/gui-programmi...

EXL ★★★★★
()
Последнее исправление: EXL (всего исправлений: 2)
Ответ на: комментарий от mystery

Согласен, голимые позорники, не могли такую прогу на Qt5 кроссплатформой освоить.

Вот недавно обновление для Viber сделали на Linux до 6-й версии, так там на базе Qt5 и вообще смотреть приятно, всё удобно и красиво.

I-Love-Microsoft ★★★★★
()
Ответ на: комментарий от xor2003

Там частично стратегия поэтому столько диалогов.

И для каждого из них делали свой класс диалогового окна? Или только текст из ресурсов подгружали? Если второе, вероятно, стоит задуматься о парсинге текста, это проще...

Задача «Чем и как заменить DirectX» более сложная, IMHO...

hobbit ★★★★★
()
Ответ на: комментарий от mystery

Так вайнлиб и сам вайн - это две сильно разные вещи.
Я, кстати, навскидку и не вспомню софта, портированного именно с помощью winelib. Может подскажет кто?

NeverLoved ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.