Как песок стал похож на воду

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

Такой приём не превращает песок в набор крошечных частиц. Он создаёт впечатление материала через то, как меняются оттенки и блики на больших участках поверхности. Знакомая разработчикам система расчёта воды дала удобную основу, но её пришлось приспособить к сухому ландшафту: здесь важны не прозрачность и ощущение глубины, а тёплый цвет и световые переливы на склонах.

Иллюзия вместо бесчисленных деталей

В Journey песчаные дюны поэтому воспринимаются не как плоские жёлтые холмы, а как поверхность, по которой будто проходят волны. Это выразительный компромисс: игра не изображает миллионы отдельных зёрен, а заставляет свет убедительно описывать их совместную форму.

Секрет эффекта — не в том, что песок буквально ведёт себя как вода, а в повторном использовании подходящего инструмента для другой задачи. Благодаря этому огромная пустыня может выглядеть живой, не требуя от компьютера рисовать каждую песчинку.