Видео из разряда "прикольно": про не частый кейс оправданной "микро-оптимизации"

Для игровых разработчиков не сказать, что напрямую есть прикладная ценность, но для "шарпистов" косвенно — полезно.
Затрагивается много тегов: стэк, куча, аллокации, хэш-функции, Span, ArrayPool, stackalloc, ValueStringBuilder, MemoryStream, S3.
Да и для общей насмотренности и формирования инженерного майндсета лишним не будет.

Почему-то у игровых начинающих разработчиков бытует представление, что геймдев – это что-то стоящее отдельно. Хотя это такая же разработка ПО — просто свой контекст вносит свои особенности. Как и в других направлениях разработки есть свои контексты. Но дело то делаем мы все одно и проблемы решаем схожие: утечки памяти, долгий рендер, вылеты, ошибки и пр.

☝ Работа с движком — это ведь ещё не игра, а только игровой клиент. А есть ещё хостинги, бэкенд, инфраструктура, CI/CD. Со всем этим тоже приходится иметь дело.

Поэтому не стоит загонять себя в рамки чисто геймдев специализации. За "соседями" подглядывать тоже полезно. Здесь как с естественными языками: чем больше языков знаешь, тем больше информации становится доступно.

—————————————

22
11
6 комментариев

Комментарий недоступен

2

Полностью согласен 💯

1

За деталями в отношении аллокаций лучше все таки идти в:
1) оф дока (про clr)
2) книга Pro .Net memory management. В этом году выйдет 2е издание
3) есть дядька на NDC, который неплохо за перфоманс говорит и показывает (надо гуглить)

В отношении ArrayPool также недавно вышел видос на офф канале .Net со Стивеном и Скотом.

Книгу в 1 очередь рекомендовал бы.

А так у вас же рантайм другой в Юнити не?

1

Unity сейчас посажена на .NET Frameowk 4. Последние несколько лет пытаются обуздать CoreCLR, но по этому фронту пока всё тихо

Не все из этого доступно юнитистам, но в общем то non-alloc подход, это как бы база в геймдеве.

1