четверг, 30 января 2020 г.

Кратко о Reforged (нет)

Недавно зарелизился Reforged  и у многих как-то неслабо полыхает в силу объективных её недостатков. Нет, защищать я ничего не буду, скорее наоборот - жалко как-то в что в могилу и без того мертвого жанра RTS вбивают очередные гвозди.

В связи с этим, единственное, на что пока остаётся надежда - это разработчик MARS 2000 который какой год уже пилит свою RTS. Надеюсь, у него всё получится, хотя конечно пока это далековато от готовой игры.

Моды на старые игры вроде бы тоже пилятся, если вы как и я безумный любитель всякого старья,  MO для старого Red Alert 2: Yuri's Revenge (русская группа здесь) может вам зайти.

Наконец карты под старый Warcraft III делаются и, к моему удивлению, до сих пор выходят.

Ну а если у вас титаническое количество свободного времени и, желательно, денег , можно попытать счастья с каким-нибудь Spring RTS , благо он опенсурсный и его можно допиливать. Под Unity и Unreal также есть гора ассетов для запила своего убийцы варика. Найти бы только под это время, деньги, моделлеров, композиторов, художников, сценаристов,  труппу артистов и немножко программистов :) 

суббота, 4 января 2020 г.

Небольшие итоги года 2019

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

В первую очередь, этот год для меня знаменателен тем, что я наконец перестал возиться с PHP и Bitrix (ура-ура) и начал разбираться в геймдеве. На поверку особо крутых ощущений, я пока не испытал, но это дало мне толчок в правильном направлении Я успел познакомиться со многими интересными людьми,  и в целом, это оказалось хорошим решением. 

Кроме того, приятнее разбираться в C++ и UE4, чем в кодовой базе сами-знаете-чего. Тут ничего не поделать. Меня успела позабавить серия постов явного хейта на хабре в адрес битрикса в сентябре-октябре этого года, но, как я и ожидал, ни к чему это не привело.  Новой документации не появилось, проблемы как и были так и есть. Впрочем, где их нет?

Успел позаниматься вебом на Java, это оказалось даже лучще, чем я ожидал да и абстракции серьёзно приятнее PHP-фреймворков. Наверное это потому что в тех проектах, которыми я занимался не было страшного легаси и в целом, была сносная документация. 

Много занимался saddy, начал его переводить на свежий OpenGL (Vulkan пока не рассматривал в виду того, что процент видеокарт его поддерживающих довольно мал и у меня таковой пока не водится). Переделал в нём демку многопоточности, теперь это небольшая ActionRPG с управлением из двух окон на  основе ассетов с kenney.nl и других. А ещё можно скачать её отсюда, если кому интересно . 

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

Скорее всего, если будут какие-то результаты, буду писать их сюда, но пока особо ничего не предвидится.

Ещё судорожно пытался научить себя хоть немного рисовать - но увы, как только хоть что-то начало получаться в дверь постучалась жизнь и ничего не вышло. Ещё параллельно, в силу тонких моментов пришлось осваивать Blender по второму кругу. Мне понравилось, на самом деле, интересное занятие. Надеюсь в новом году смогу этим заниматься  этим гораздо больше, ибо  программирование порядком надоело и его стало слишком много вокруг.

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

Скорее всего этот год пройдёт так же, во внезапных задачах и заботах.

Такие дела.



пятница, 3 января 2020 г.

MSVC очень сильно изменилась за лето

Буквально вчера потребовалось попрофилировать код небольшой демки на C++ и как-то так вышло, что горячо любимый мной VerySleepy плохо работает со свежими многопоточными приложениями,  особенно собранными через MSVC2017. Т.е. часть данных он собрал и часть он потерял, при этом потерял нужную часть, которая шла после загрузки проекта. Почему это вышло - неясно, запуск из-под администратора, игры с ключами компиляции не помогли.

Однако, оказалось, что в Community версии MSVC есть  профилирование и настраивается оно просто, буквально за пару минут. Из того, что зашло - возможность выделить интересующий промежуток работы программы и  собрать данные с него. Оказалось достаточно выделить время непосредственно после загрузки ресурсов программы и оно строит удобную таблицу разбиения функций с возможностью посмотреть логику вызовов. В отличие от VerySleepy особого пенальти по производительности при этом я не заметил. Пока, пожалуй, остановлюсь на нём.