воскресенье, 26 декабря 2021 г.

Мои итоги года 2021

У меня наметилась тенденция каждые два года делать небольшой пост-итоги года, в котором писать, в основном, про программирование и всякое такое.  В этот раз программирование тоже будет, но не только.

воскресенье, 12 декабря 2021 г.

Про C++ в GameDev

 Недавно набрёл на дискуссию:


И мне страшно зашло и понравилось. В кои-то веки обсуждались релевантные мне проблемы, было видно, что люди имеют колоссальный опыт и их есть смысл послушать. Побольше бы таких дискуссий.

Правда с некоторыми тезисами участников я умудрился в процессе сильно не согласиться. Но это даже обрадовало - я давно с чем-то серьёзно не соглашаЛся, да так чтобы это как-то волновало. 

Пример таких тезисов - утверждения Кирилла Шабордина о том, что т.к. вузы учат студентов C++, то плюсовиков просто полно и нанять их проще чем программистов на JS. Дело в том, что я успел понаблюдать за проблемами найма любителей C++ и геймдева в родном городе, и даже сравнить его, имея подобный опыт с PHP. И знаете что? PHPшников неожиданно в моём родном городе на несколько порядков больше чем плюсовиков. Да, хороших мало. Их всегда мало. Но опять же - плюсам в местных вузах учат. Но неглупый народ уходит с плюсов по многим причинам: сложный язык, сложная инфраструктура, пакетные менеджеры и.т.п.  Так что ситуация противоположная.

Ну и фразы о засилье C++ в геймдеве мне тоже кажутся натянутыми - впору говорить о тотальном засилье Unity/С#, хотя, если подумать, оно и нормально.

Но дискуссия ужасно интересная, если скучно, то я бы рекомендовал к просмотру. Однозначно лучше огромной доли докладов по плюсам в этом году.


Boost 1.78.0 и MinGW-w64 x32 GCC 10+

На днях попытался собрать компилятором MinGW GCC 10.3.0 x32 Boost 1.77 и я упёрся в issue наподобие https://github.com/boostorg/build/issues/724 . Собственно, я сначала подумал, что и пожалуйста, не нужно и забил. Но потом вышел новый Boost 1.78 и я снова упёрся в эту проблему.

Внимательный читатель сразу заметит - зачем я вообще собираю x32 приложения в 2021 году? На то две причины: у меня есть небольшой парк старых машин на которые иногда хочется собраться, а вторая - историческая, как-то привычно и удобно на нём сидеть, программировать под него всё ещё можно. Но в этот раз, всё пошло немного наперекосяк.

Тем кому лень читать дальше, сообщу сразу - всё можно легко собрать, если вместо обычного "b2 toolset=gcc" использовать

b2 toolset=gcc address-model=32

Но это, правда странно и этот способ мне подсказали в самих репозиториях.