Unity Новости
5.68K subscribers
122 photos
6 videos
5 files
14.9K links
Новости Unity, GameDev
Groups: @unity3d_ru (@unity_flood)
Tags: #releases #fix
Contact: @dm0mb
Download Telegram
​​Теперь TileMaker DOT полностью бесплатен для всех.
Забудьте о необходимости управлять десятками слоев в стиле Photoshop, чтобы просто построить дерево перед домом. TileMaker DOT использует  автоматическую визуальную сортировку по глубине . Анализируя самые нижние непрозрачные пиксели ваших объектов, редактор автоматически обрабатывает логику рендеринга «спереди назад».
Скачать полную версию можно здесь: crytek22.itch.io/tilemakerdot
Краткое руководство: www.youtube.com/watch?v=3fiajGU32Jg
👍2
​​Пользовательская воксельная симуляция жидкости методом LBM со 100% адвекцией на GPU. 180 FPS на 4070ti
В отличие от традиционных конвейеров обработки частиц или VFX Graph, здесь все работает в рамках одной плоской области StructuredBuffer<uint4>непосредственно на графическом процессоре. Моделирование жидкости основано на собственном методе решеточной Больцмана (LBM).
В настоящее время на видеокарте RTX 4070ti с объемом сетки 192³ мне удается получить около 180 FPS. Мои ближайшие задачи — динамическое распространение света и термодинамика материалов.
🔥13
​​Про 10x программистов
Есть такая старая и немного протухшая дискуссия про 10x программистов. То ли они существуют, то ли это миф стартаперов, то ли это просто мечтания менеджеров про «давайте наймем одного волшебника вместо команды». В презентациях, постах и разговорах эта тема всплывала регулярно, обычно где-то рядом с «нам нужны сильные люди», «у нас маленькая команда» и «дедлайн вчера», а уж на фоне AI-агентов, так и вовсе расцвела опять буйным цветом.
Меня в этой теме всегда смущало, что под 10x часто пытаются запихнуть вообще всё: скорость написания кода, умение чинить баги, знание проекта, способность не делать больно проекту, опыт коммуникации с менеджментом, архитектурный вкус и опытный опыт, готовность сидеть ночью и баф на везение. А потом из этого делают красивую легенду про человека, который работает в десять раз быстрее остальных.
👍5
​​Анимация персонажей в реальном времени с помощью машинного обучения: обзор PFNN, MANN и LMM
Нейросети способны учиться на больших наборах данных захвата движения, предсказывать движение для следующих кадров, синтезировать переходы между позами, управлять походкой, балансом, реакциями на препятствия и даже мимикой, синхронизированной с голосом. В результате мы получаем анимацию, которая выглядит естественно, но при этом генерируется на лету — без заранее подготовленных клипов. Тем не менее вместе с новыми возможностями приходят и новые вызовы: производительность, стабильность, контроль над результатом, требования к качеству данных и интеграция в существующие пайплайны.
В этой статье я приведу некоторые решения для анимации персонажей, основанные на машинном обучении, которые имеются на данный момент. Поскольку рассматриваемые далее решения довольно тесно связаны с технологией motion matching, то в начале приведу по ней небольшую справку.
​​Повышение производительности Android с помощью оптимизации LTO в Unity 6.5
Когда компилятор C++ создает нативную библиотеку, он оптимизирует каждый исходный файл изолированно. Оптимизация на этапе компоновки меняет это: она переносит часть работы по оптимизации на этап компоновки, где компоновщик имеет полное представление о всей программе и может принимать более разумные решения, такие как встраивание функций через границы единиц компиляции, более агрессивное удаление мертвого кода и улучшение распределения регистров между местами вызовов.
ThinLTO — это масштабируемый вариант, разработанный LLVM. Вместо загрузки всей программы в память сразу (как это делает Full LTO), ThinLTO работает с облегченными сводками модулей и распараллеливает оптимизацию между модулями. Это позволяет поддерживать время компоновки на приемлемом уровне, одновременно обеспечивая большую часть реальных преимуществ в производительности.
Основное внимание мы уделили двум параметрам производительности: времени запуска (как быстро приложение переходит в рабочее состояние после запуска) и производительности на кадр (насколько эффективно основной поток выполняет каждый кадр после запуска игры). Именно эти показатели наиболее непосредственно влияют на пользовательский опыт на Android, и именно здесь встраивание кода в различные модули LTO оказывает наибольшее влияние.
🔥5
​​Нам нужен был ветер для нашей игры, поэтому мы создали эту облегченную систему в Unity.
Мы недавно работали над игрой и нам нужен был простой способ оживить окружение 🌿
Поэтому мы создали в Unity облегченную систему ветрозащиты для растительности и декораций.
Это довольно простая схема: шейдер смещения вершин на графическом процессоре, управляемый глобальным контроллером ветра. Ничего слишком сложного, просто цель — получить что-то, что хорошо ощущается в движении и легко дорабатывается при создании уровней.
Мы используем шумы в мировом пространстве, чтобы близлежащие объекты двигались согласованно, и накапливаем время на контроллере, чтобы изменения скорости ветра не ощущались резко. Движение основано на круговом изгибе, а не на простых линейных смещениях, а направление ветра полностью определяется контроллером, поэтому оно остается предсказуемым в игре и легко настраивается.
🔥5❤1
​​Симуляция огня + Симуляция скульптинга жидкости + Пользовательский рендерер трассировки лучей
В данный момент я работаю над игрой в жанре «физическая песочница».
Даже не знаю, каким будет игровой процесс, так как меня полностью захватило создание собственной системы симуляций.
Моделирование огня довольно сложное и основано на вычислительных шейдерах. Оно работает на основе воспламенения, адвекции, скорости, тепловой диффузии, радиационного охлаждения и т. д. Оно также поддерживает различные типы топлива и материалов. Я использую решатель давления RBGS на разреженной воксельной сетке 256^3. Визуализация осуществляется с помощью шейдера трассировки лучей.
Даже без учета нагрузки от других систем, производительность игры оказалась на удивление высокой: даже во время мощных взрывов частота кадров не опускалась ниже ~250 fps. На видео всё работает на уровне ~70 fps.
В симуляции жидкости используется разреженная воксельная сетка (разве всё в жизни сейчас не представляет собой разреженную воксельную сетку?), частицы управляются графическим процессором (в видео мы видим около 15 тысяч активных частиц), а для построения сетки самой жидкости используются поверхностные сетки.
Я специально выбрал поверхностные сетки, а не трассировку лучей, потому что, поскольку я хотел, чтобы жидкость «застывала» и сохранялась в игровом мире, мне нужен был более простой способ взаимодействия с существующим стеком света/тени/отражения.
❤5🔥3
​​Представляем Android Performance Analyzer: следующий этап развития профилирования для Android.
Сегодня в открытой бета-версии доступен новый инструмент APA System Profiler, который позволяет анализировать использование ЦП, ГП, памяти и энергопотребление вашего приложения или игры, а также наблюдать за тем, как это взаимодействует с поведением системы.
Автономный профилировщик: developer.android.com/android- Performance-analyzer
Сборка Android Studio Canary (для Panda 4 и более поздних версий): developer.android.com/studio/preview
🔥5
Попробуйте ЛУЧШИЙ инструмент для Unity БЕСПЛАТНО!
Odin Inspector выпустил масштабное обновление, добавив удобный визуальный конструктор, который делает создание пользовательских инспекторов Unity еще проще благодаря функции перетаскивания и отсутствию лишнего кода! В этом видео я покажу, что нового, почему это здорово и как вы можете попробовать его БЕСПЛАТНО в течение 3 месяцев.
❤2
Настройки интерфейса атрибутов и характеристик здания (Unity) | Система прогресса | Эпизод 01
В этом первом эпизоде ​​мы создаём элементы пользовательского интерфейса, которые будут лежать в основе всего остального в этой серии. Вместо того чтобы сразу переходить к коду, мы сосредоточимся на правильной структуре пользовательского интерфейса с самого начала, чтобы он оставался чистым, гибким и легко расширяемым в дальнейшем. Многие системы прогресса разваливаются, потому что пользовательский интерфейс не рассчитан на масштабирование. Поэтому здесь мы используем другой подход — инструменты компоновки Unity и многоразовые компоненты для создания чего-то, что просто работает по мере роста системы. В этом видео вы узнаете, как:
- Создавайте аккуратные, структурированные макеты, используя группы сетки и горизонтальные группы макета.
- Используйте CanvasGroup для управления видимостью и взаимодействием без сложной логики включения/отключения.
- Создавайте многократно используемые элементы пользовательского интерфейса с помощью префабов для строк атрибутов и статистики.
- Создайте основу для пользовательского интерфейса, готовую к обновлениям в реальном времени в следующих эпизодах.
👍4🔥2