Оптическое моделирование и расчёт освещённости — важнейшие механизмы познания мира, а процесс создания реалистичной компьютерной графики — это сложный процесс, результаты которого могут быть применены на практике в различных направлениях: от архитектуры, светотехники, рекламы, кино, мультипликации до проектов дополненной и виртуальной реальности, индустрии развлечений, компьютерных игр и промышленности.
Трудновычислимые феномены освещённости, возникающие при моделировании распространения света, приводят к необходимости вычисления интеграла от сложной функции в многомерном пространстве (порядка 100 измерений). В этом случае перед программистами возникает фундаментальная проблема — как решить данную задачу за конечное время (причём, на практике оно должно быть небольшим) на компьютере с ограниченными ресурсами.
Для решения проблемы учёные МГУ выбрали семейство методов Монте-Карло по схеме Марковских Цепей. Для повышения производительности они использовали графические процессоры (Graphics Processing Units, GPU) и одновременный расчёт на многих GPU. «Реализованные в процессе работы над проектом алгоритмы были интегрированы в свободно распространяемую отечественную программную систему расчёта освещённости на GPU Hydra Renderer с открытым исходным кодом, что позволило на практике в 5−6 раз повысить точность при том же времени расчёта (что в задаче расчёта освещённости эквивалентно ускорению в 25−30 раз) по сравнению с другими алгоритмами, реализованными в этой системе», — рассказал к.ф.-м.н., научный сотрудник лаборатории компьютерной графики и мультимедиа кафедры интеллектуальных информационных технологий факультета ВМК МГУ Владимир Фролов.
Автор считает, что «за эффективность методов нужно платить ограничениями или сложностью реализации. Нет лучшего и универсального алгоритма. Если это допускает постановка задачи, следует всегда принимать во внимание специфику типичных сцен, для которых создается рендер-система. Это позволит сделать разработку дешевле, а полученную программную систему эффективнее».
Сотрудники факультета ВМК реализовывали существующие методы и на их основе разработали новые. Ученых особенно интересовало исследование эффективности продвинутых методов на основе марковских цепей (MCMC) на графических процессорах.
Данная статья является в некоторой степени интегральной работой по многим проектам и аккумулирует опыт многих лет. «Конечно, существуют и другие подобные работы, однако они не делают акцент на практической стороне использования методов. В результате мы видим из года в год одни и те же методы, которые выдаются за новые, но по сути таковыми не являются», — подчеркнул Владимир Фролов.
Авторы убеждены, что на основе выводов, сделанных в работе, можно строить новые эффективные программные комплексы для рендеринга и расчёта освещения в различных прикладных областях.