Теперь TileMaker DOT полностью бесплатен для всех.
Забудьте о необходимости управлять десятками слоев в стиле Photoshop, чтобы просто построить дерево перед домом. TileMaker DOT использует автоматическую визуальную сортировку по глубине . Анализируя самые нижние непрозрачные пиксели ваших объектов, редактор автоматически обрабатывает логику рендеринга «спереди назад».
Скачать полную версию можно здесь: crytek22.itch.io/tilemakerdot
Краткое руководство: www.youtube.com/watch?v=3fiajGU32Jg
Забудьте о необходимости управлять десятками слоев в стиле Photoshop, чтобы просто построить дерево перед домом. TileMaker DOT использует автоматическую визуальную сортировку по глубине . Анализируя самые нижние непрозрачные пиксели ваших объектов, редактор автоматически обрабатывает логику рендеринга «спереди назад».
Скачать полную версию можно здесь: crytek22.itch.io/tilemakerdot
Краткое руководство: www.youtube.com/watch?v=3fiajGU32Jg
👍2
Пользовательская воксельная симуляция жидкости методом LBM со 100% адвекцией на GPU. 180 FPS на 4070ti
В отличие от традиционных конвейеров обработки частиц или VFX Graph, здесь все работает в рамках одной плоской области
В настоящее время на видеокарте RTX 4070ti с объемом сетки 192³ мне удается получить около 180 FPS. Мои ближайшие задачи — динамическое распространение света и термодинамика материалов.
В отличие от традиционных конвейеров обработки частиц или VFX Graph, здесь все работает в рамках одной плоской области
StructuredBuffer<uint4>непосредственно на графическом процессоре. Моделирование жидкости основано на собственном методе решеточной Больцмана (LBM).В настоящее время на видеокарте RTX 4070ti с объемом сетки 192³ мне удается получить около 180 FPS. Мои ближайшие задачи — динамическое распространение света и термодинамика материалов.
🔥13
Про 10x программистов
Есть такая старая и немного протухшая дискуссия про 10x программистов. То ли они существуют, то ли это миф стартаперов, то ли это просто мечтания менеджеров про «давайте наймем одного волшебника вместо команды». В презентациях, постах и разговорах эта тема всплывала регулярно, обычно где-то рядом с «нам нужны сильные люди», «у нас маленькая команда» и «дедлайн вчера», а уж на фоне AI-агентов, так и вовсе расцвела опять буйным цветом.
Меня в этой теме всегда смущало, что под 10x часто пытаются запихнуть вообще всё: скорость написания кода, умение чинить баги, знание проекта, способность не делать больно проекту, опыт коммуникации с менеджментом, архитектурный вкус и опытный опыт, готовность сидеть ночью и баф на везение. А потом из этого делают красивую легенду про человека, который работает в десять раз быстрее остальных.
Есть такая старая и немного протухшая дискуссия про 10x программистов. То ли они существуют, то ли это миф стартаперов, то ли это просто мечтания менеджеров про «давайте наймем одного волшебника вместо команды». В презентациях, постах и разговорах эта тема всплывала регулярно, обычно где-то рядом с «нам нужны сильные люди», «у нас маленькая команда» и «дедлайн вчера», а уж на фоне AI-агентов, так и вовсе расцвела опять буйным цветом.
Меня в этой теме всегда смущало, что под 10x часто пытаются запихнуть вообще всё: скорость написания кода, умение чинить баги, знание проекта, способность не делать больно проекту, опыт коммуникации с менеджментом, архитектурный вкус и опытный опыт, готовность сидеть ночью и баф на везение. А потом из этого делают красивую легенду про человека, который работает в десять раз быстрее остальных.
👍5
Анимация персонажей в реальном времени с помощью машинного обучения: обзор PFNN, MANN и LMM
Нейросети способны учиться на больших наборах данных захвата движения, предсказывать движение для следующих кадров, синтезировать переходы между позами, управлять походкой, балансом, реакциями на препятствия и даже мимикой, синхронизированной с голосом. В результате мы получаем анимацию, которая выглядит естественно, но при этом генерируется на лету — без заранее подготовленных клипов. Тем не менее вместе с новыми возможностями приходят и новые вызовы: производительность, стабильность, контроль над результатом, требования к качеству данных и интеграция в существующие пайплайны.
В этой статье я приведу некоторые решения для анимации персонажей, основанные на машинном обучении, которые имеются на данный момент. Поскольку рассматриваемые далее решения довольно тесно связаны с технологией motion matching, то в начале приведу по ней небольшую справку.
Нейросети способны учиться на больших наборах данных захвата движения, предсказывать движение для следующих кадров, синтезировать переходы между позами, управлять походкой, балансом, реакциями на препятствия и даже мимикой, синхронизированной с голосом. В результате мы получаем анимацию, которая выглядит естественно, но при этом генерируется на лету — без заранее подготовленных клипов. Тем не менее вместе с новыми возможностями приходят и новые вызовы: производительность, стабильность, контроль над результатом, требования к качеству данных и интеграция в существующие пайплайны.
В этой статье я приведу некоторые решения для анимации персонажей, основанные на машинном обучении, которые имеются на данный момент. Поскольку рассматриваемые далее решения довольно тесно связаны с технологией motion matching, то в начале приведу по ней небольшую справку.
Повышение производительности Android с помощью оптимизации LTO в Unity 6.5
Когда компилятор C++ создает нативную библиотеку, он оптимизирует каждый исходный файл изолированно. Оптимизация на этапе компоновки меняет это: она переносит часть работы по оптимизации на этап компоновки, где компоновщик имеет полное представление о всей программе и может принимать более разумные решения, такие как встраивание функций через границы единиц компиляции, более агрессивное удаление мертвого кода и улучшение распределения регистров между местами вызовов.
ThinLTO — это масштабируемый вариант, разработанный LLVM. Вместо загрузки всей программы в память сразу (как это делает Full LTO), ThinLTO работает с облегченными сводками модулей и распараллеливает оптимизацию между модулями. Это позволяет поддерживать время компоновки на приемлемом уровне, одновременно обеспечивая большую часть реальных преимуществ в производительности.
Основное внимание мы уделили двум параметрам производительности: времени запуска (как быстро приложение переходит в рабочее состояние после запуска) и производительности на кадр (насколько эффективно основной поток выполняет каждый кадр после запуска игры). Именно эти показатели наиболее непосредственно влияют на пользовательский опыт на Android, и именно здесь встраивание кода в различные модули LTO оказывает наибольшее влияние.
Когда компилятор C++ создает нативную библиотеку, он оптимизирует каждый исходный файл изолированно. Оптимизация на этапе компоновки меняет это: она переносит часть работы по оптимизации на этап компоновки, где компоновщик имеет полное представление о всей программе и может принимать более разумные решения, такие как встраивание функций через границы единиц компиляции, более агрессивное удаление мертвого кода и улучшение распределения регистров между местами вызовов.
ThinLTO — это масштабируемый вариант, разработанный LLVM. Вместо загрузки всей программы в память сразу (как это делает Full LTO), ThinLTO работает с облегченными сводками модулей и распараллеливает оптимизацию между модулями. Это позволяет поддерживать время компоновки на приемлемом уровне, одновременно обеспечивая большую часть реальных преимуществ в производительности.
Основное внимание мы уделили двум параметрам производительности: времени запуска (как быстро приложение переходит в рабочее состояние после запуска) и производительности на кадр (насколько эффективно основной поток выполняет каждый кадр после запуска игры). Именно эти показатели наиболее непосредственно влияют на пользовательский опыт на Android, и именно здесь встраивание кода в различные модули LTO оказывает наибольшее влияние.
🔥5
Нам нужен был ветер для нашей игры, поэтому мы создали эту облегченную систему в Unity.
Мы недавно работали над игрой и нам нужен был простой способ оживить окружение 🌿
Поэтому мы создали в Unity облегченную систему ветрозащиты для растительности и декораций.
Это довольно простая схема: шейдер смещения вершин на графическом процессоре, управляемый глобальным контроллером ветра. Ничего слишком сложного, просто цель — получить что-то, что хорошо ощущается в движении и легко дорабатывается при создании уровней.
Мы используем шумы в мировом пространстве, чтобы близлежащие объекты двигались согласованно, и накапливаем время на контроллере, чтобы изменения скорости ветра не ощущались резко. Движение основано на круговом изгибе, а не на простых линейных смещениях, а направление ветра полностью определяется контроллером, поэтому оно остается предсказуемым в игре и легко настраивается.
Мы недавно работали над игрой и нам нужен был простой способ оживить окружение 🌿
Поэтому мы создали в Unity облегченную систему ветрозащиты для растительности и декораций.
Это довольно простая схема: шейдер смещения вершин на графическом процессоре, управляемый глобальным контроллером ветра. Ничего слишком сложного, просто цель — получить что-то, что хорошо ощущается в движении и легко дорабатывается при создании уровней.
Мы используем шумы в мировом пространстве, чтобы близлежащие объекты двигались согласованно, и накапливаем время на контроллере, чтобы изменения скорости ветра не ощущались резко. Движение основано на круговом изгибе, а не на простых линейных смещениях, а направление ветра полностью определяется контроллером, поэтому оно остается предсказуемым в игре и легко настраивается.
🔥5❤1
Симуляция огня + Симуляция скульптинга жидкости + Пользовательский рендерер трассировки лучей
В данный момент я работаю над игрой в жанре «физическая песочница».
Даже не знаю, каким будет игровой процесс, так как меня полностью захватило создание собственной системы симуляций.
Моделирование огня довольно сложное и основано на вычислительных шейдерах. Оно работает на основе воспламенения, адвекции, скорости, тепловой диффузии, радиационного охлаждения и т. д. Оно также поддерживает различные типы топлива и материалов. Я использую решатель давления RBGS на разреженной воксельной сетке 256^3. Визуализация осуществляется с помощью шейдера трассировки лучей.
Даже без учета нагрузки от других систем, производительность игры оказалась на удивление высокой: даже во время мощных взрывов частота кадров не опускалась ниже ~250 fps. На видео всё работает на уровне ~70 fps.
В симуляции жидкости используется разреженная воксельная сетка (разве всё в жизни сейчас не представляет собой разреженную воксельную сетку?), частицы управляются графическим процессором (в видео мы видим около 15 тысяч активных частиц), а для построения сетки самой жидкости используются поверхностные сетки.
Я специально выбрал поверхностные сетки, а не трассировку лучей, потому что, поскольку я хотел, чтобы жидкость «застывала» и сохранялась в игровом мире, мне нужен был более простой способ взаимодействия с существующим стеком света/тени/отражения.
В данный момент я работаю над игрой в жанре «физическая песочница».
Даже не знаю, каким будет игровой процесс, так как меня полностью захватило создание собственной системы симуляций.
Моделирование огня довольно сложное и основано на вычислительных шейдерах. Оно работает на основе воспламенения, адвекции, скорости, тепловой диффузии, радиационного охлаждения и т. д. Оно также поддерживает различные типы топлива и материалов. Я использую решатель давления RBGS на разреженной воксельной сетке 256^3. Визуализация осуществляется с помощью шейдера трассировки лучей.
Даже без учета нагрузки от других систем, производительность игры оказалась на удивление высокой: даже во время мощных взрывов частота кадров не опускалась ниже ~250 fps. На видео всё работает на уровне ~70 fps.
В симуляции жидкости используется разреженная воксельная сетка (разве всё в жизни сейчас не представляет собой разреженную воксельную сетку?), частицы управляются графическим процессором (в видео мы видим около 15 тысяч активных частиц), а для построения сетки самой жидкости используются поверхностные сетки.
Я специально выбрал поверхностные сетки, а не трассировку лучей, потому что, поскольку я хотел, чтобы жидкость «застывала» и сохранялась в игровом мире, мне нужен был более простой способ взаимодействия с существующим стеком света/тени/отражения.
❤5🔥3
6000.3.16f1
https://unity.com/releases/editor/whats-new/6000.3.16f1
https://beta.unity3d.com/download/a56f230f6470/download.html
unityhub://6000.3.16f1/a56f230f6470
#releases #lts
https://unity.com/releases/editor/whats-new/6000.3.16f1
https://beta.unity3d.com/download/a56f230f6470/download.html
unityhub://6000.3.16f1/a56f230f6470
#releases #lts
❤2
Представляем Android Performance Analyzer: следующий этап развития профилирования для Android.
Сегодня в открытой бета-версии доступен новый инструмент APA System Profiler, который позволяет анализировать использование ЦП, ГП, памяти и энергопотребление вашего приложения или игры, а также наблюдать за тем, как это взаимодействует с поведением системы.
Автономный профилировщик: developer.android.com/android- Performance-analyzer
Сборка Android Studio Canary (для Panda 4 и более поздних версий): developer.android.com/studio/preview
Сегодня в открытой бета-версии доступен новый инструмент 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 месяцев.
Odin Inspector выпустил масштабное обновление, добавив удобный визуальный конструктор, который делает создание пользовательских инспекторов Unity еще проще благодаря функции перетаскивания и отсутствию лишнего кода! В этом видео я покажу, что нового, почему это здорово и как вы можете попробовать его БЕСПЛАТНО в течение 3 месяцев.
YouTube
The BEST Unity tool got EVEN BETTER! (and FREE - Odin Inspector Visual Designer Review)
🌍 Try Odin for FREE! https://cmonkey.co/odin
✅ Make AWESOME games FASTER with this excellent tool!
Sponsored by Odin
🌍 FREE Complete Courses! https://cmonkey.co/freecourses
✅ FREE Game Dev Insights! https://cmonkey.co/gamedevreportnewsletter
👍 Weekly Game…
✅ Make AWESOME games FASTER with this excellent tool!
Sponsored by Odin
🌍 FREE Complete Courses! https://cmonkey.co/freecourses
✅ FREE Game Dev Insights! https://cmonkey.co/gamedevreportnewsletter
👍 Weekly Game…
❤2
Настройки интерфейса атрибутов и характеристик здания (Unity) | Система прогресса | Эпизод 01
В этом первом эпизоде мы создаём элементы пользовательского интерфейса, которые будут лежать в основе всего остального в этой серии. Вместо того чтобы сразу переходить к коду, мы сосредоточимся на правильной структуре пользовательского интерфейса с самого начала, чтобы он оставался чистым, гибким и легко расширяемым в дальнейшем. Многие системы прогресса разваливаются, потому что пользовательский интерфейс не рассчитан на масштабирование. Поэтому здесь мы используем другой подход — инструменты компоновки Unity и многоразовые компоненты для создания чего-то, что просто работает по мере роста системы. В этом видео вы узнаете, как:
- Создавайте аккуратные, структурированные макеты, используя группы сетки и горизонтальные группы макета.
- Используйте CanvasGroup для управления видимостью и взаимодействием без сложной логики включения/отключения.
- Создавайте многократно используемые элементы пользовательского интерфейса с помощью префабов для строк атрибутов и статистики.
- Создайте основу для пользовательского интерфейса, готовую к обновлениям в реальном времени в следующих эпизодах.
В этом первом эпизоде мы создаём элементы пользовательского интерфейса, которые будут лежать в основе всего остального в этой серии. Вместо того чтобы сразу переходить к коду, мы сосредоточимся на правильной структуре пользовательского интерфейса с самого начала, чтобы он оставался чистым, гибким и легко расширяемым в дальнейшем. Многие системы прогресса разваливаются, потому что пользовательский интерфейс не рассчитан на масштабирование. Поэтому здесь мы используем другой подход — инструменты компоновки Unity и многоразовые компоненты для создания чего-то, что просто работает по мере роста системы. В этом видео вы узнаете, как:
- Создавайте аккуратные, структурированные макеты, используя группы сетки и горизонтальные группы макета.
- Используйте CanvasGroup для управления видимостью и взаимодействием без сложной логики включения/отключения.
- Создавайте многократно используемые элементы пользовательского интерфейса с помощью префабов для строк атрибутов и статистики.
- Создайте основу для пользовательского интерфейса, готовую к обновлениям в реальном времени в следующих эпизодах.
YouTube
Building Attributes and Stats UI (Unity) | Progression System | Episode 01
In this first episode, we're creating that UI elements that will power everything else in this series. Instead of jumping straight into code, we focus on getting the UI structure right from the beginning so it stays clean, flexible, and easy to expand later.…
👍4🔥2
6000.5.0b9
https://unity.com/releases/editor/beta/6000.5.0b9
https://beta.unity3d.com/download/342347f1f18f/download.html
unityhub://6000.5.0b9/342347f1f18f
#releases #beta
https://unity.com/releases/editor/beta/6000.5.0b9
https://beta.unity3d.com/download/342347f1f18f/download.html
unityhub://6000.5.0b9/342347f1f18f
#releases #beta
❤4
6000.4.8f1
https://unity.com/releases/editor/whats-new/6000.4.8f1
https://beta.unity3d.com/download/f8b72d3d7343/download.html
unityhub://6000.4.8f1/f8b72d3d7343
#releases #supported
https://unity.com/releases/editor/whats-new/6000.4.8f1
https://beta.unity3d.com/download/f8b72d3d7343/download.html
unityhub://6000.4.8f1/f8b72d3d7343
#releases #supported
❤2