Так как в оригинале предполагалось, что всё же движок сможет работать и на очень старых машинах, попробовал портировать игру на Windows XP. Было немного жутковато (ибо пересел на C++14, было ощущение, что придётся избавляться от новых конструкций) . Но нет: благодаря TDM-GCC всё получилось:
Опишу вкратце основные проблемы, которые возникли, помимо обычных правок при переносе на более ранние версии компилятора (остальное - в описании к видео):
1. TDM-GCC 10.3.0 из-за проблем у Windows XP с HTTPS и общей старости нормально не ставится инсталлятором. Я тупо поставил его на "десятку" и просто копированием перенёс, он при этом отлично работает. В остальном - всё отлично, сам компилятор работает неплохо. Ощутимо медленнее, чем старые версии, но поддержка относительно свежего стандарта того стоит.
2. std::random_device НЕ создаётся. Какой ты ему токен не дай - падает с исключением. Решилось созданием своего "подвирающего" random_device на базе rand/srand. Ни о какой криптографической устойчивости речи не идёт при этом, но в игре это как по мне, никого не волнует и волновать не будет.
3. Почему-то встроенный Intel GMA 3150 не любит текстуры 4096х4096 . Это странно, если бы ему не хватало памяти - они бы падали на закачке, но здесь они закачиваются но не отображаются. Впрочем, разбить текстуры было легко, а в остальном проблем не возникло.
Отняло это на самом деле - ну, 3-4 часа, движок собирался куда дольше.
В остальном я результатом доволен. Такие дела.
Комментариев нет:
Отправить комментарий