Forwarded from Hipnc Club
А теперь про Gamedev. На сегодняшнем стриме Алексей Калинин покажет, как создавались пропсы для игры Populus Run. Будет много процедурного моделинга, Houdini Engine, Unity3D, а заодно обсудим плюсы и минусы использования Гудини в инди-разработке. Приходите!
Начало, как всегда, в 22:00 по Московскому времени.
https://www.youtube.com/watch?v=MLD7XSjHm8Y
Начало, как всегда, в 22:00 по Московскому времени.
https://www.youtube.com/watch?v=MLD7XSjHm8Y
YouTube
Стрим: Гудини для инди (Алексей Калинин)
Донаты: https://donatty.com/houdinirus
https://www.donationalerts.com/r/houdinirus
Поддержка канала:
Из России: https://boosty.to/houdini
Из других стран: https://www.patreon.com/hipnc
Телеграм-канал и чат: https://t.me/hipnc
Houdini FAQ: http://hipnc.club/houdini…
https://www.donationalerts.com/r/houdinirus
Поддержка канала:
Из России: https://boosty.to/houdini
Из других стран: https://www.patreon.com/hipnc
Телеграм-канал и чат: https://t.me/hipnc
Houdini FAQ: http://hipnc.club/houdini…
🫡3
Кратко об асинхронных механизмах
https://discussions.unity.com/t/introducing-asynchronous-programming-in-unity/1693772
https://discussions.unity.com/t/introducing-asynchronous-programming-in-unity/1693772
🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Несколько видео с выдержками из "чистого кода", которые, в том числе, визуально показывают их влияние на общую работу в команде.
Мне кажется, это всё про сокращение "времени координации" при обсуждениях и чтении кода и сокращение размера изменений в PR/MR.
Я не приверженец безукоризненно соблюдать всё, что написано в "чистом коде", но многие вещи оттуда реально работают и проверены временем и работой в разного размера командах. Важно расставлять приоритеты, что важно для каждой команды в данный момент времени и договариваться о общих правилах.
Мне кажется, это всё про сокращение "времени координации" при обсуждениях и чтении кода и сокращение размера изменений в PR/MR.
Я не приверженец безукоризненно соблюдать всё, что написано в "чистом коде", но многие вещи оттуда реально работают и проверены временем и работой в разного размера командах. Важно расставлять приоритеты, что важно для каждой команды в данный момент времени и договариваться о общих правилах.
❤1
Когда-то около 8 лет назад я пристально следил за блогом разработки компании CampoSanto - разработчиков прекрасной Firewatch . По их проекту было много интересных докладов на GDC. Там явно собралась в то время очень талантливая команда из около 10 человек.
- Аниматор James Benson (youtube, x.com), который делал также анимации и для серии игр Ori.
- Matthew Wilde - vfx разработчик (https://x.com/skilful) уже автор шейдеров для воды в CS2.
- Paolo Surrichio - графический программист http://www.paolosurricchio.com - теперь уже работает в Respawn Entertainment
и многие другие были очень талантливые разработчики. В какой-то момент студия начала новый проект In The Valley of Gods, но студию купила Valve - проект был отложен и многие из той команды сейчас работают там над текущими проектами компании.
Мне было и радостно за ребят и грустно от того что дев блог CampoSanto закончился.
https://blog.camposanto.com/
А самыми интересными для меня постами в то время были:
Про GDC доклад об арте Firewatch
О том как реализовать афро причёску вашему персонажу
О новом шейдере воды (выглядит супер реалистично)
О шейдере с процедурным эффектом гало для неба
О способе протестировать коллизии главного персонажа с террейном для ограничения передвижения
- Аниматор James Benson (youtube, x.com), который делал также анимации и для серии игр Ori.
- Matthew Wilde - vfx разработчик (https://x.com/skilful) уже автор шейдеров для воды в CS2.
- Paolo Surrichio - графический программист http://www.paolosurricchio.com - теперь уже работает в Respawn Entertainment
и многие другие были очень талантливые разработчики. В какой-то момент студия начала новый проект In The Valley of Gods, но студию купила Valve - проект был отложен и многие из той команды сейчас работают там над текущими проектами компании.
Мне было и радостно за ребят и грустно от того что дев блог CampoSanto закончился.
https://blog.camposanto.com/
А самыми интересными для меня постами в то время были:
Про GDC доклад об арте Firewatch
О том как реализовать афро причёску вашему персонажу
О новом шейдере воды (выглядит супер реалистично)
О шейдере с процедурным эффектом гало для неба
О способе протестировать коллизии главного персонажа с террейном для ограничения передвижения
🔥3🤝1
GameDev HACK
Decision Making от чувака, который прочувствовал боль на Hitman Absolution и Batman Arkham Knight. slides: https://docs.google.com/presentation/d/13po2s6tJXeDm0TqFsu5l6q_QzTck9f1P/edit#slide=id.p1 https://www.youtube.com/watch?v=5ZXfDFb4dzc #ai #gameai…
Хочу Вам поподробнее рассказать про разработчика Бобби из предыдущего поста. Бобби многое повидал: занимался AI ещё в 2008 году, когда это ещё не было мейнстримом, а я ещё в школу под стол ходил.
Так вот у этого мужика есть отличный набор стримов, где сосредоточена такая крутая кристаллизованная выжимка информации об архитектуре, которая, явно видно, прошла огонь, воду и медные трубы. Считаю это одними из лучших "докладов" что я видел за всё время по темам, которых он касается в них.
Decision Making
slides: https://docs.google.com/presentation/d/13po2s6tJXeDm0TqFsu5l6q_QzTck9f1P
https://www.youtube.com/watch?v=5ZXfDFb4dzc
Game AI Basics
slides: https://docs.google.com/presentation/d/1nYTzpkAomu2FWro3rytWbxJnCayY5erd/
https://www.youtube.com/watch?v=G5A0-_4dFLg
Animation Programming Basics
https://www.youtube.com/watch?v=Jkv0pbp0ckQ
Animation Graphs
https://www.youtube.com/watch?v=R-T3Mk5oDHI
Entity / Object models
pt1 https://www.youtube.com/watch?v=jjEsB611kxs
pt2 https://www.youtube.com/watch?v=fuiNOWEUnJ8
Также разработчик Бобби время зря не терял:
- написал и выложил в open source свой движок для прототипирования https://www.esotericaengine.com/ (в нём, кстати, внутри использованы по сути все концепции из докладов)
- а также ведёт свой бложик в твиттере https://x.com/Bobby_Anguelov и на своём сайте https://takinginitiative.net/
а, ну и на сдачу работает в Valve на данный момент, а до этого в IO Interactive, Ubisoft и WB Games.
Так вот у этого мужика есть отличный набор стримов, где сосредоточена такая крутая кристаллизованная выжимка информации об архитектуре, которая, явно видно, прошла огонь, воду и медные трубы. Считаю это одними из лучших "докладов" что я видел за всё время по темам, которых он касается в них.
Decision Making
slides: https://docs.google.com/presentation/d/13po2s6tJXeDm0TqFsu5l6q_QzTck9f1P
https://www.youtube.com/watch?v=5ZXfDFb4dzc
Game AI Basics
slides: https://docs.google.com/presentation/d/1nYTzpkAomu2FWro3rytWbxJnCayY5erd/
https://www.youtube.com/watch?v=G5A0-_4dFLg
Animation Programming Basics
https://www.youtube.com/watch?v=Jkv0pbp0ckQ
Animation Graphs
https://www.youtube.com/watch?v=R-T3Mk5oDHI
Entity / Object models
pt1 https://www.youtube.com/watch?v=jjEsB611kxs
pt2 https://www.youtube.com/watch?v=fuiNOWEUnJ8
Также разработчик Бобби время зря не терял:
- написал и выложил в open source свой движок для прототипирования https://www.esotericaengine.com/ (в нём, кстати, внутри использованы по сути все концепции из докладов)
- а также ведёт свой бложик в твиттере https://x.com/Bobby_Anguelov и на своём сайте https://takinginitiative.net/
а, ну и на сдачу работает в Valve на данный момент, а до этого в IO Interactive, Ubisoft и WB Games.
👍3
This media is not supported in your browser
VIEW IN TELEGRAM
Алгоритм Грэхема — алгоритм построения выпуклой оболочки в двумерном пространстве. В этом алгоритме задача о выпуклой оболочке решается с помощью стека, сформированного из точек-кандидатов. Все точки входного множества заносятся в стек, а потом точки, не являющиеся вершинами выпуклой оболочки, со временем удаляются из него. По завершении работы алгоритма в стеке остаются только вершины оболочки в порядке их обхода против часовой стрелки.
🔥4🤔1
Вы когда Unity запускаете на исполнение, GameView ставьте на конкретное разрешение, а то кто его знает, сколько пикселей будет, когда вы ставите на Aspect. Часто бывает так что GameView с FullHD достаточно по визуалу и по производительности сильно лучше.
🤝3
Procedural Grass в Ghost of Tsushima
Здесь трава — это не набор расставленных мешей. По сути это GPU-driven procedural pipeline, который генерирует, фильтрует и рендерит растительность почти полностью на стороне GPU.
Цели у системы довольно практичные:
• минимальная нагрузка на CPU
• масштабируемость для большого open world
• высокая визуальная плотность
• правдоподобное поведение на ветру
😡 Procedural placement
Растительность не хранится как тысячи объектов сцены. Вместо этого на поверхности генерируются seed points — компактные записи, описывающие будущую траву. В них обычно лежат:
• тип растения
• вариация формы
• плотность
• параметры анимации
Распределение сидов учитывает особенности поверхности:
• угол наклона (slope)
• высоту
• тип материала
• контекст окружения (дороги, тропинки и т.п.)
За счёт этого данных хранится немного, а плотность растительности можно менять динамически.
⚡️ GPU-driven pipeline
CPU здесь в основном задаёт правила. Основная работа происходит на GPU.
Упрощённо пайплайн выглядит так:
Используются:
• compute shaders для подготовки instance buffer
• GPU frustum и distance culling
• indirect draw calls
CPU не управляет миллионами объектов — он лишь передаёт исходные данные и параметры.
LOD управляет не только геометрией
LOD здесь работает не просто как «меньше полигонов дальше от камеры». Меняется и геометрия, и плотность растительности:
• рядом с камерой — полноценные blades
• на средней дистанции — grass cards
• вдали — impostor-поля
Так удаётся сохранить ощущение плотного травяного покрытия без перегрузки GPU.
Система ветра
Фирменный “Wind of Tsushima” — важная часть визуального стиля игры. Для движения травы используется vector field. Он задаёт направление и силу ветра в пространстве.
Поверх этого комбинируются:
• крупные порывы ветра
• мелкие высокочастотные колебания
• локальная деформация от персонажа
Реакция травы задаётся кривыми (curve parameters), поэтому движение выглядит естественно и не синхронно.
Оптимизации
Несколько вещей, которые делают систему дешёвой:
• секторный procedural culling
• очень компактные instance-данные
• многоступенчатые GPU-буферы
pipeline буферов выглядит примерно так:
В результате одна травинка описывается буквально несколькими байтами данных.
Почему эта система интересна
Ghost of Tsushima хорошо показывает современный подход к растительности:
• data-driven
• GPU-centric
• процедурная генерация
• масштабируемость для open worlds
Трава здесь — не просто декор. Это часть динамической системы окружения, которая реагирует на ветер, камеру и игрока.
🎥 Доклад от разработчиков:
https://www.youtube.com/watch?v=Ibe1JBF5i5Y
Здесь трава — это не набор расставленных мешей. По сути это GPU-driven procedural pipeline, который генерирует, фильтрует и рендерит растительность почти полностью на стороне GPU.
Цели у системы довольно практичные:
• минимальная нагрузка на CPU
• масштабируемость для большого open world
• высокая визуальная плотность
• правдоподобное поведение на ветру
Растительность не хранится как тысячи объектов сцены. Вместо этого на поверхности генерируются seed points — компактные записи, описывающие будущую траву. В них обычно лежат:
• тип растения
• вариация формы
• плотность
• параметры анимации
Распределение сидов учитывает особенности поверхности:
• угол наклона (slope)
• высоту
• тип материала
• контекст окружения (дороги, тропинки и т.п.)
За счёт этого данных хранится немного, а плотность растительности можно менять динамически.
CPU здесь в основном задаёт правила. Основная работа происходит на GPU.
Упрощённо пайплайн выглядит так:
seed data → visibility pass → LOD selection → instance buffer → indirect draw
Используются:
• compute shaders для подготовки instance buffer
• GPU frustum и distance culling
• indirect draw calls
CPU не управляет миллионами объектов — он лишь передаёт исходные данные и параметры.
LOD управляет не только геометрией
LOD здесь работает не просто как «меньше полигонов дальше от камеры». Меняется и геометрия, и плотность растительности:
• рядом с камерой — полноценные blades
• на средней дистанции — grass cards
• вдали — impostor-поля
Так удаётся сохранить ощущение плотного травяного покрытия без перегрузки GPU.
Система ветра
Фирменный “Wind of Tsushima” — важная часть визуального стиля игры. Для движения травы используется vector field. Он задаёт направление и силу ветра в пространстве.
Поверх этого комбинируются:
• крупные порывы ветра
• мелкие высокочастотные колебания
• локальная деформация от персонажа
Реакция травы задаётся кривыми (curve parameters), поэтому движение выглядит естественно и не синхронно.
Оптимизации
Несколько вещей, которые делают систему дешёвой:
• секторный procedural culling
• очень компактные instance-данные
• многоступенчатые GPU-буферы
pipeline буферов выглядит примерно так:
visibility → LOD → final draw buffer
В результате одна травинка описывается буквально несколькими байтами данных.
Почему эта система интересна
Ghost of Tsushima хорошо показывает современный подход к растительности:
• data-driven
• GPU-centric
• процедурная генерация
• масштабируемость для open worlds
Трава здесь — не просто декор. Это часть динамической системы окружения, которая реагирует на ветер, камеру и игрока.
🎥 Доклад от разработчиков:
https://www.youtube.com/watch?v=Ibe1JBF5i5Y
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
Procedural Grass in 'Ghost of Tsushima'
In this 2021 Advanced Graphics Summit talk, graphics programmer Eric Wohllaib will discuss how they generate acres of grass within reasonable memory and performance limits, techniques for rendering and animating individual blades, and methods for making thousands…
🔥2❤1🤝1
best practices for character navigation
architecting for ААА performance and robustness
Неплохой обзорный доклад лучших практик для навигации персонажей с GDC 2026 от Tech lead, Havok Navigation Ben Sunshine-Hill
#AI #navigation
architecting for ААА performance and robustness
Неплохой обзорный доклад лучших практик для навигации персонажей с GDC 2026 от Tech lead, Havok Navigation Ben Sunshine-Hill
#AI #navigation
🤝2
Forwarded from Norlin Games
YouTube
SILKSONG SOURCE CODE Deep Dive: Optimization, Movement Logic & Architecture
A full deep-dive into the reverse-engineered C# code of Silksong.
Movement logic analysis, implementation architecture, C# code optimization, "god object" in the code, remnants of the previous game .. and much, much more!
🆇 LINKS 🆇
1) My Patreon - http…
Movement logic analysis, implementation architecture, C# code optimization, "god object" in the code, remnants of the previous game .. and much, much more!
🆇 LINKS 🆇
1) My Patreon - http…
🔥2👎1🤔1
Наткнулся на мощный доклад с AI and Games Conference от Пьеро (CEO Studio Talico). Ребята делают то, о чем многие мечтали: переносят полностью автономных ИИ-персонажей прямо на наши компьютеры и смартфоны.
Помните знаменитый эксперимент Стэнфорда из 2023 года, где 25 нейросетевых жителей деревни сами планировали день, сплетничали и даже организовывали вечеринки? Проблема была в том, что это стоило авторам $1000 в день на API от OpenAI. В играх такое использовать нереально.
Пьеро и его команда это исправили. Они создали прототип GARP, где боты ведут себя так же реалистично, но работают локально.
Скоро сможем настраивать уровень интеллекта игрового ИИ просто ползунком в настройках как и обычные настройки графики.
https://www.youtube.com/watch?v=Rt_f9XXYJyc
Помните знаменитый эксперимент Стэнфорда из 2023 года, где 25 нейросетевых жителей деревни сами планировали день, сплетничали и даже организовывали вечеринки? Проблема была в том, что это стоило авторам $1000 в день на API от OpenAI. В играх такое использовать нереально.
Пьеро и его команда это исправили. Они создали прототип GARP, где боты ведут себя так же реалистично, но работают локально.
Скоро сможем настраивать уровень интеллекта игрового ИИ просто ползунком в настройках как и обычные настройки графики.
https://www.youtube.com/watch?v=Rt_f9XXYJyc
👏2