TGViewer
Григорий Дядиченко Григорий Дядиченко @dev_game · 2.66K subscribers
Post #1817 1.4K
Абсурдная оптимизация: Падающий песок
https://www.youtube.com/watch?v=HrrJxkRlRfk

Видео по сути про использование компьют шейдеров при моделировании каких-то процессов клеточными автоматами. Клеточный автомат - это в целом достаточно забавный и удобный класс математических моделей. Если кто не изучал, это дискретные математические модели, где состояние каждой ячейки в сетке меняется по простым правилам, зависящим только от её соседей.

Достаточно простая концепция позволяет моделировать довольно сложные процессы. Основное преимущество по сути возможность строить сложные границы. Представим задачу что мы хотим посмотреть распространение дыма по локации. Логику этого можно базово задать клеточным автоматом, как и у автора в примере с песком. И что удобно, так как вычисления зависят только от ячейки и данных в её соседях, то такие вычисления довольно просто переносятся на GPU.

Кстати, если говорить про математическое моделирование каких-то процессов. Потому что автор там берёт какое-то выдуманное правило. Допустим взяв для примера задачу распространения тепла по материалу. Можно прикидывать такое грубо, что подходит для задач в играх. Просто каждый такт тепература усредняется между соседями с какой-то дельтой. И окажется, что это довольно близко к уравнению теплопроводности (Лапласа). И при правильном шаге, параметрах теплопроводности, размере ячеек сетки и небольшому усложнению уравнения среднего можно получить довольно точную математическую модель.

И вообще так работает со многими дискретными методами. Клеточные автоматы и тот же метод конечных элементов, при правильно заданных уравнениях и достаточно мелкой дискретизации (мелкая сетка и так далее) дают значения близкие к нашим математическим представлениям об устройстве реальности. Этим они и прикольны. И благодаря дискретности и отсуствию сложной условной логики, как и необходимости знать много информации, вычисления на эту тему довольно легко переносятся на GPU. Хотя конечно сейчас есть и более современные и модные методы, вроде того на чём базируется Nvidia Flux (сопоставление потоков). Но что важно понимать про нейросетевые методы. Просто человечество условно когда-то решило: "Память не проблема, у нас её много. Зачем нам что-то решать и моделировать в реальном времени, если мы можем просто подставлять ответы? Пусть грубо и не супер точно, но для продакшена годится."

#новости
YouTube Optimizing a Falling Sand Simulation To an Unreasonable Degree Source code for this project - https://github.com/NivMiz0/GPU-Sand-Sim-Unity Been a while! Sorry it took me so long to post this time, I've been really busy with life and paused work on this video for a good couple months. I had a lot of fun making this…
  • 🔥 8
More from @dev_game
  1. Sep 29, 2026И тут продублирую раз прилетело несколько вопросов. Доступ к дневнику можно будет получить…
  2. Sep 29, 2026Да, чет не анонсировал. Остановил сбор. Ну в целом донаты показывают классические для меня…
  3. Sep 25, 2026Meta VR Glasses Посмотрел кратко о чём речь. Вспомнил скупой слезой свой концепт. Будем по…
  4. Sep 23, 2026Чисто магия, что я теперь самостоятельно могу сделать такой пак + ролик к нему :) И мне нр…
  5. Sep 22, 2026🚀 Как запустить игровой стартап и применить бизнес-опыт в геймдеве? 🚀 Высшая школа бизне…
  6. Sep 21, 2026Эмоциональный окрас голоса Задумался над юмористическими форматами контента помимо познава…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →