Никита Шаченко

+930
с 2017

Automation QA Engineer @ Redhill Games

39 подписчиков
40 подписок

В таком случае уже можно ThreadSafeArray выносить в отдельный класс у которого этот bool будет внутреннем полем, тогда

ArrayWrite(int index, T value)
{
while(!available)
{
wait();
}
available = false;
WriteInternal(index, value);
available = true;
}

Такое на главном потоке, правда лучше не вызывать из-за wait();
Форматирование в комментариях не работает :(

1
Ответить

Можно ввести какой-нибудь bool который будет отвечать за то, кто может изменять список сейчас - worker или game
В целом как и любой многопоточность ю нужно сильного осторожнее обращаться с ресурсами, но профит перевешивает, если с умом подходить

1
Ответить

Для такого лучше гуглить editor utilities, это специально для автоматизации работы с движком
Если есть скилл в питоне можно подружить его с UE, получится удобнее и быстрее чем с плюсами/блюпррнтами
Обычные курсы больше про создание геймплейной логики, там пересечений с автоматизацией не очень много

Ответить

Как раз недавно искал такие, чтобы подтянуть скилы qa команды на работе, остановился на вот этих двух

https://www.udemy.com/course/unrealblueprint/
Мы в итоге взяли этот потому что больше про геймплей и меньше про арт. Те кто проходил остались довольны, единственное там нужно провернуть пару приседаний для адаптации под ue5, т.к. курс под 4 версию

https://www.udemy.com/course/unreale4/
По запросу "для художника" этот наверное лучше подойдет, но за качество контента ничего не могу сказать

И никогда не стоит покупать курсы на Udemy за фулпрайс, там все время 'индивидуальные" скидки с "последним" шансом и т.д.

1
Ответить

Может быть эпики просто настолько придерживаются мнения, что лучшая документация это сам код
Или программисты все такие жадные и гордые, что сидят как драконы на своих знаниях и делиться не хотят
И только китайские товарищи готовы разбираться в experimental/beta/early access фичах и делиться безвозмездно. Жаль только гугл переводчик не всегда справляется с их инструкциями

2
Ответить

Немного потерял на самом деле, первые часы исследования самые классные, дальше плотность интересного сильно падает
А главный сюжет нужен разве что для смены времён года, на красивости посмотреть

2
Ответить

Тогда вообще хз как они умудрились столько копий продать с такими проблемами
Хотя честно говоря ни сюжет ни геймплей особо не завлекают, а вот атмосфера классная. Может фанаты просто по замку и окрестностям разбежались, а квесты не трогали)

Ответить

Воу, похоже пофиксили или просто везёт, большую часть уже прошел, функциональных проблем не было
Хорошо проходить игры не на релизе, что тут скажешь

Ответить

Как раз сейчас прохожу, столько бед с оптимизацией, LOD'ами, подгрузками, эх
Производительность нынче не в моде среди разработчиков 🤷‍♂️

2
Ответить

Получил, тысяча благодарностей!

Ответить

Это уже и так почти "из коробки", сложно представить, куда дальше
С большой силой приходит и ответсвенность, не получится просто так направо и налево автоматически раздавать исполнение по потокам
Равно как не получится автоматически понять, какой код подойдет для вынесения, а какой - не очень

В целом эпики много чего постоянно завозят, проблема больше в том, что ни поддержи толковой, ни документации от них обычно не дождешься.
Взять тот же UBA, Unreal Build Accelerator. В 5.3 только и разговоров было про него, во всех профильных и не очень изданиях в патчноутах написали, как зажимем-то теперь с ускорением. А по факту как им пользоваться можно было найти только на каком-то рандомном китайском сайте только :D

3
Ответить

Нет, т.к. почти все, что есть в блюпринтах исполняется на основном потоке
numthreads только определяет количество доступных worker потоков, сами по себе они ничего делать не будут

1
Ответить

69612340
Заранее спасибо!🤞

Ответить

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

Ответить

Думаю, стоит отдельным постом оформить или на почту написать, тут навряд ли смотрят

1
Ответить

Прислали новый токен, все работает, спасибо!

Ответить

Все ещё тишина :(

Ответить

До старшей школы вообще не было идей
Потом появилась информатика, понравилось кодить, решил что буду программистом
В универе увидел объявление о стажировке в геймдев студии, офигел с того что делать игры это профессия, подался на QA, взяли

Прошло 7 лет, живу в Финляндии, работаю Automation QA в Redhill Games, помогаем делать Overwatch 2, life is good

1
Ответить

С таким характером - я бы не удивился!
Но вообще долгий ковид вполне себе факт, симптомы могут длиться годами

Ответить

Письма выходят каждый месяц, дед бухтит, жалуется на прошлое, все еще болеет ковидом, вот в принципе и все)
По игре появляются только новые концепты с описаниями юнитов, почти на все вопросы ответ только "будет как в HoMM3"

Можно посмотреть на картинки тут:
https://www.fanstratics.com/gallery

Ответить

Так в комментарии как раз речь про оптимизацию - ecs позволяет использовать кучу одинаковых объектов со своей логикой "дешевле", чтобы на low-end мобилках тянуло

А насчёт процесса разработки жёсткие ограничения с архитектурной стороны могут сделать процесс более детерминированным. Если уж не с написанием, так с дебагом кода точно помогает
При условии, конечно, что разработчики понимают суть архитектуры

Ответить

Не та ветка, сорян :(

Ответить

Ознакомлюсь обязательно, спасибо!
А кто у вас занимается непосредственной реализацией тестов - QA, automation QA или разработчики?
И как сложно было обучить инструментарию и поставить на поток?

Ответить

Круто! А можно поподробнее - ваш фреймворк это часть билда или отдельная программа, которая совершает действия "над" билдом?
И если второе - каким образом она манипулирует билдом?

Ответить

Спасибо за статью! А как часто и по какому принципу запускаются тесты?

1
Ответить

Ох, ну тут в двух словах и правда не особо объяснить, даже если есть какое-то понимание.
Мне очень помог все разложить курс на Udemy. На мой взгляд автор немного перегибает в сторону кода и старается лишний раз в блюпринты не залезать.
С другой стороны если есть бэкграунд в разработке, так должно быть понятнее.
https://www.udemy.com/course/unrealengine/

1
Ответить

Мне кажется, тут уже у каждого свой sweet spot в соотношении кода и блюпринтов. Я обычно первые итерации делаю нодами, потому что быстрее и проверять можно на месте. А когда уже работает - переношу в код.
Ещё популярный подход - "бизнес логика" в коде, а все что касается отображения - в блюпринтах

1
Ответить

Я не автор и тут не совсем про примеры, но объясняют хорошо.
https://youtu.be/VMZftEVDuCE

3
Ответить