Новые алгоритмы сделают виртуальные тени реалистичнее
Тени — такая простая и незамысловатая, можно сказать, вездесущая вещь в реальном мире, нечто само собой разумеющееся и потому не слишком обращающее на себя внимание. Но для тех, кто занимается компьютерной анимацией, — это вечная головная боль.
Всё дело в реализме.
С точки зрения математики, любая тень — очень сложное явление. Помимо размеров и формы предмета, а также расстояния от поверхности, на которую он отбрасывает тень, необходимо учитывать, как падает свет, какова его интенсивность — ну и так далее, и так далее.
А в случае с анимацией, когда всё пребывает в движении, добиться реализма в сто раз сложнее.
Для создания реалистичных теней в компьютерной анимации Голливуд расходует колоссальные вычислительные мощности — и огромное количество времени.
Между тем в университете штата Огайо (Ohio State University) разработаны алгоритмы, которые, будучи не слишком ресурсоёмкими, позволяют достигнуть почти голливудского уровня реалистичности при создании теней от сложных и полупрозрачных объектов и жидкостей.
Йай-Ся Чжан, создательница новых алгоритмов.
Главными действующими лицами выступили профессор Роджер Кроуфис (Roger Crawfis) и докторант вышеупомянутого университета Цай-Ся Чжан (Caixia Zhang). Собственно, визуализация теней объёмных полупрозрачных объектов — это была её тема диссертации.
Результаты работы и описание разработанных ими алгоритмов были опубликованы в номере журнала IEEE Transactions on Visualization and Computer Graphics за апрель-июнь.
Уникальность алгоритмов, по словам самой Чжан, состоит в том, что при их небольшой ресурсоёмкости, они позволяют визуализировать мягкие тени, учитывая такие факторы, как, например, снижение интенсивности света при его прохождении через полупрозрачный объект.
Любое изображение объёмного предмета на экране — это именно изображение, его проекция. На компьютерном экране мы видим только плоские «имитации» объёмных предметов.
Обычный метод для создания такой имитации — это отслеживание предполагаемой линии взгляда зрителя на объект с последующим формированием соответствующего изображения.
Алгоритмы Чжан базируются на другом методе, называемом сплаттингом (splatting). Это вычисление формы «отпечатка» точки на плоскости экрана.
Профессор Роджер Кроуфис.
Название «Splatting» (от splat — звук шлепка), придумали программисты, которым показалось, что такой метод напоминает швыряние снежками в какую-нибудь доску.
Объёмный объект условно разделяется на «воксели» — трёхмерные точки (пиксели), и плоский отпечаток каждой из них на плоскости экрана именуется «сплатом».
Благодаря этому системе необходимо высчитывать только те точки, которые обращены к экрану, благодаря чему ресурсоёмкость созданных Чжан алгоритмов окажется значительно меньшей.
Со своей стороны, профессор Кроуфис охарактеризовал эти алгоритмы как промежуточное звено между дешёвыми анимационными программами и профессиональными пакетами, вроде тех, которыми пользуются в Голливуде.
Образец высококачественной компьютерной анимации — фильм «Корпорация Монстров» студии Pixar.
Голливуд тратит по часу на обработку каждого кадра, утверждает Кроуфис.
«Конечной целью являются сверхточные, сверхбыстрые системы рендеринга, потребляющие небольшое количество памяти», — заявил Кроуфис, добавив, что работа Чжан — шаг именно в этом направлении.
По его словам, Голливуд тратит по часу на каждый кадр, в то время, как эти кадры в итоге мелькают со скоростью 30 штук в секунду. Алгоритмы Чжан помогли бы и время сэкономить, и силы поберечь, и в итоге получить не менее реалистичные изображения.
Кстати, алгоритмы эти можно было бы использовать не только для создания анимации. Ещё одной сферой применения могли бы стать программы — симуляторы для хирургов, или средства визуализации массивов данных для других учёных.
Например, моделирование климата.
Один из сложных объектов, использовавшийся для обкатки алгоритмов Чжан.
Алгоритмы Чжан можно использовать для расчёта количества солнечного излучения, попадающего на поверхность Земли. Понадобится учитывать температуру воздуха, скорость ветра и плотность водяного пара в атмосфере.
Кроме того, эти алгоритмы могли бы взять на вооружение создатели компьютерных игр.
Простой 3д рисунок за 20 минут! Нарисовать сможет каждый.