Gamedev suffering
9.54K subscribers
1K photos
90 videos
13 files
2.42K links
Авторский блог Андрея Апанасика о разработке игр и индустрии.

Разрабытываю сервис для оперирования LiveOps: https://balancy.co

Мысли про другие вещи мне интересные: @apanasik_jobless

Реклама: https://t.me/gamedev_suffering/2202
Download Telegram
Вот за такие решения нужно по рукам бить.

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

#unity
🔥82😱49👍15💩11😎4
Вот эта тема в целом много где вымораживает на самом деле. Но, скажем на беке у меня есть инкрементальные сборки, на фронте хот-релоад, а в Юнити вот множество моментов, которые просто сжирают время на ожидания: перекомпиляция, реимпорт ассетов, билд шейдеров, да даже банально запуск редактора куда медленнее того же UE.

Грущу немного. Ведь эти вещи не просто тратят время на ожидание, они ещё и из потока выкидывают.

#unity
👍54😢24🫡6👀3🌚2
Unity снова увольняет людей (6 раз за последний год?). Как минимум, уже несколько сообщений на линкедине, разработчики Behavior package, судя по всему, тоже на мороз отправлены.

Кого-то уволили тупо по почте, даже без созвона.

#unity
😢64🫡9🎉6🤡6👍3
Думали новости про сокращения в Unity закончились? Нет. Треш продолжается.
- Команда, которая работала над новым террейном World Building, распущена. Кого-то уволили, кого-то в другие отделы перевели. Можно глянуть шоурил.
- Alexandre Mutel, батя Burst и переезда на CoreCLR, тоже уходит. Насчёт остальной команды не знаю, но уже это большой удар по направлению. У него был отличный доклад по теме.

Шутки-шутками, но такими темпами только рекламные сервисы скоро и останутся.

#unity
😢75👍10😱6🌚3🤔1
Что-то никто не пишет, а ведь Unity сделала то, что её всегда просили — сама (ну, почти, при партнёрстве с KONAMI) сделала игру!

Будет доступна сразу на релизе Nintendo Switch 2.

Есть мнение и надежда (не смейтесь 🌚), что это поможет разработчикам Unity двигать движок в нужном направлении.

#unity
🌚29🤯16👍11🤔5🫡1
Плохие новости, шарписты... 😴

Но если без шуток, то выглядит интересно. LINQ по памяти такой себе был, либа вроде как решает многие проблемы с выделением памяти. Лежит всё на Гитхабе. Работает под netstandard2.0, 2.1, net8, net9, Unity и Godot.

В статье расписаны многие технические вещи. Там помимо снижения аллокаций ещё и ускорение порой достигается хорошее, за счёт поддержки SIMD и т. п.

Для геймдева и юнитишников может быть весьма полезно 🤔

#gamedev #unity
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥34🤣12👍2
Пост на Реддите про будни работы с Unity. Понятно, что такое с любым софтом/либой может быть, но забавно.

У разработчика не работали addressables. Только на Android.
1. Покопался в логах юнитишного пакета. Оказалось, что почему-то Юнька в пути к бандлам выдаёт com.gamepoint.hashgo вместо com.gamepoint.bingo.
2. Всё дело оказалось в вызове .Replace(), который должен (по задумке) заменять расширение в пути.
3. Но в название игрового бандла было .bing**, поэтому метод и заменил не то, что надо.

Урок: если вам нужно что-то заменять в строках, и вы знаете, примерную позицию (в данном случае в конце строки), то не вызывайте Replace на всей строке, а сузьте зону. В данном случае, думаю, вполне можно было лишь на строке после последнего слеша.

#unity
🤡39🫡17🤣8👎1😎1
This media is not supported in your browser
VIEW IN TELEGRAM
Интересная тулза для Unity, позволяющая одежде «впиваться» в кожу.

Ребятам, пилящим игры для Nutaku, на заметку 🌚

#unity
🌚117🔥40👀12🤡5💩1
Подкаст с инди-разработчиком, создавшим «A Difficult Game About Climbing», заработавшую более 1 миллиона.

Рассказывает и показывает прям в Unity вживую различные трюки и реализацию отдельных аспектов игры.

#unity
🔥32
После новостей и статей про UE5...читать вот такие новости про то, что «Unity делает свою первую игру и выпускает её на Nintendo Switch 2», как-то...мда.

Круто, что они, всё же, сами начинают использовать свой движок, но хотелось бы видеть что-то типа их демки Time Ghost или прошлой The Heretic, а не вот такое =/

#unity
🫡47🤣27👎5🌚3👍2
Кстати, по части ИИ...Думаю, про Кейджиро большинство юнитишников в курсе. Он провёл эксперимент с агентами. Задача была в том, чтоб разработать оптимизированную под Burst библиотеку с нулевым выделением мусора с помощью Claude Code.

Если кратко: смог создать хорошо оптимизированный пакет для Unity. Задачи поставленные выполнены, а поверх ещё и модульными тестами покрыл. Но это всё равно требует надлежащего человеческого контроля. Агенты очень помогают/ускоряют разработку, но про автоматизацию совсем рано говорить.

#Unity #нейронки
🤔27🔥5👍4
Разработчик The Last General рассказал как утроил производительность своей игры на #Unity.

Многие оптимизации крутятся вокруг ECS/DOTS и батчинга.
🔥27👍8🤔2
Во дела...В Unity нашлась уязвимость, которой подвержены версии движка, начиная с версии 2017.1. Рейтинг у CVE 7.4 из 10, даже не смотря на то, что команда Unity пишет, что нет никаких свидетельств эксплуатации этой уязвимости. Но, например, Obsidian временно сняла с продажи кучу своих игр из-за этой уязвимости. А Marvel Snap, No Rest for the Wicked, Ingress, Fate/Grand Order уже выпустили обновление.

Уязвимость базируется на возможности передавать доп. аргументы командной строки, позволяющие загружать и выполнять произвольный код.

Что делать:
- Если есть исходники, то пересобрать игру на новой версии движка.
- Если нет исходников, то с помощью Unity Application Patcher.

Valve, в свою очередь, уже выпустила обновление Steam'а. Windows Defender тоже получил обновление.

Чуток подробностей о том, как это на различных платформах может использоваться:
- На Android уязвимость может позволить другим приложениям на устройстве запускать ваше приложение и внедрять вредоносную нативную библиотеку с помощью аргумента xrsdk-pre-init-library или overrideMonoSearchPath для 32-разрядных приложений, созданных с помощью Mono.
- На Windows, если приложение зарегано как кастомный URL schema handler, уязвимость может быть использована для повышения привилегий процесса.
- На macOS, если игра собрана с Hardened Runtime, и включены определённые исключения времени выполнения, которые ослабляют защиту от внедрения кода, необходимо принять меры.
- На Linux в окружениях AppArmor, bubblewrap, Firejail, SELinux методы LD_PRELOAD, ptrace могут позволить запустить приложуху с произвольными аргументами.

Обновляемся и патчимся, котята! 🧐

#Unity
Please open Telegram to view this post
VIEW IN TELEGRAM
👍40😱20🤣9🍌2🔥1