TGStat
TGStat
Qidiruv uchun matnni kiriting
Ilg‘or kanal qidiruvi
  • flag Uzbek
    Sayt tili
    flag Russian flag English flag Uzbek
  • Saytga kirish
  • Katalog
    Kanal va guruhlar katalogi Hududiy to‘plamlar Tematik to‘plamlar Платные каналы Kanallar qidiruvi
    Kanal/guruh qo‘shish
  • Reytinglar
    Kanallar reytingi Guruhlar reytingi Postlar reytingi
    Brendlar va shaxslar reytingi
  • Analitika
  • Postlarda qidiruv
  • Telegram'ni kuzatish
  • Targ‘ibot
    Yandex Business orqali reklama TGStat Agency orqali kanallarda reklama TGStat.ru saytida reklama
GameDev HACK

9 Mar, 22:04

Telegram'da ochish Ulashish Shikoyat qilish

Procedural Grass в Ghost of Tsushima

Здесь трава — это не набор расставленных мешей. По сути это GPU-driven procedural pipeline, который генерирует, фильтрует и рендерит растительность почти полностью на стороне GPU.

Цели у системы довольно практичные:

• минимальная нагрузка на CPU
• масштабируемость для большого open world
• высокая визуальная плотность
• правдоподобное поведение на ветру

😡Procedural placement

Растительность не хранится как тысячи объектов сцены. Вместо этого на поверхности генерируются seed points — компактные записи, описывающие будущую траву. В них обычно лежат:

• тип растения
• вариация формы
• плотность
• параметры анимации

Распределение сидов учитывает особенности поверхности:

• угол наклона (slope)
• высоту
• тип материала
• контекст окружения (дороги, тропинки и т.п.)

За счёт этого данных хранится немного, а плотность растительности можно менять динамически.

⚡️ GPU-driven pipeline

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
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 of individual blades of grass look l...

70 0 2 2
Katalog
Kanal va guruhlar katalogi Kanallar to‘plamlari Kanallar qidiruvi Kanal/guruh qo‘shish
Reytinglar
Telegram-kanallar reytingi Telegram-guruhlar reytingi Postlar reytingi Brendlar va shaxslar reytingi
API
Statistika API'si Postlar qidiruvi API'si API Callback
Kanallarimiz
@TGStat @TGStat_Chat @telepulse @TGStatAPI
O‘qish
Академия TGStat Telegram tadqiqoti 2019 Telegram tadqiqoti 2021 Telegram tadqiqoti 2023
Kontaktlar
Справочный центр Qo‘llab-quvvatlash Email Vakansiyalar
Har xil narsalar
Foydalanuvchi shartnomasi Maxfiylik siyosati Ommaviy oferta
Botlarimiz
@TGStat_Bot @SearcheeBot @TGAlertsBot @tg_analytics_bot @TGStatChatBot