Напишу про SIGGRAPH 2010. Буду стараться быть менее многословным, чем в прошлом году. Потому что.
И все же от лирики во вступлении не удержусь. Ибо.
Как всегда, визит начался с разговора с проницательной служащей на пограничном контроле, интересовавшейся целью прошлого визита. Услышав вялый бубнеж о конференции и ее тематике, дама не нашла ничего лучше, как рассмеяться в лицо и порекомендовать «get a life and come here for vacation». Зачем ви тгавите? Ну да ладно, все лучше, чем стерильные перчатки и ОСОБЫЙ досмотр. Дальше по делу.
Сигграф проходил в LA, про который, конечно, напишу ниже.
Как водится, пейперы все уже давно в
онлайне, и лично у меня больший интерес к talks/courses и прочим бонусам, которых в основном и коснусь.
Как мне показалось, снова приличная часть обсуждений была посвящена real-time и GPGPU. Виден тренд, что эта тема все больше интересует людей за пределами геймдева. Начиная от previsualization (preproduction, виртуальная камера на площадке) и заканчивая полноценными фермами для offline рендера финальной картинки. Особо тут отличились товарищи из Weta Digital, скооперировавшиеся с NVIDIA. Аватара было много. Говорили про разное, но чаще прочего речь заходила о
PantaRay. Там про распараллеливание, варьирование нагрузки, масштабируемость, какие-то мудреные кеши с лодами, чтобы все не умерло на миллиарде полигонов. Интересно, что рендер чем-то похож на deferred. PantaRay на вход поступают микрополигоны от RenderMan. На GPU ферме быстро считаются параметры необходимые для дальнейших расчетов (SH, reflection, в каком-то видео AO/GI и пр.), а на последнем проходе уже RenderMan использует эту информацию и считает конечный результат. Выходит добротная гибридная модель, которая, по словам докладчиков, сэкономила им пару десятков лет расчетов. Были и интересные цифры про персонажей на 2М полигонов, растения со схожей детализацией и миллиарды полигонов в сцене со средним временем рендера кадра в 20 часов - такого при Сталине не было! Еще от Weta были доклады про физичные мускулы персонажей, особенности превиза (про виртуальную камеру и до этого уже много говорили, остальное вроде было не так интересно), финального рендера и еще чего-то, но как-то хватило и предыдущего потока информации.
Посетил интересный круглый стол про будущие направления исследования в CG. В Штатах обеспокоены, что NSF, выделяющий большинство грантов на все виды научной деятельности, решил сильно порезать бюджет computer graphics. Как я понял из разговоров, по плану не более 3% общего бюджета будет поступать на тематику CG. Проблема в том, что графика заняла какую-то непонятную нишу. Куча исследований находят применение только в индустрии развлечений. Потому было решено, что та самая индустрия и должна выделять основную массу деньги, а государство будет, как и положено, вкладываться в, например, военные разработки. Сложилось впечатление, что большинство пришедших на круглый стол ожидали услышать про hot-topics, за которыми большое будущее и остатки денег. Думалось, что сейчас большие дяди покажут, куда всем бежать. А вышло что-то вроде: «We are here not to share our ideas, but to steal yours». Каждый из участников попиарил свое направление без особых деталей. Вышло примерно следующее:
1. Виртуальная модель человека. Имеется в виду полноценная off-the-shelf модель со скелетом, органами, кожей, готовая для симуляции в динамической системе. Идея применять это для робототехники, медицины и иных областей.
2. Работа с огромными массивами данных. Тут больше речь не столько про сами алгоритмы обработки, сколько про возможное упрощение работы, используя различные новые способы визуализации. Упоминались приближающиеся миллиарды пользователей соц. сетей, теаррабайты объемных данных сканированных частей мозга и все то, чем сейчас начинают нагружать cloud computing.
3. Интерактивные взаимодействия. Был разговор о новых интерфейсах общения человек-машина, отказе от старых парадигм ввода данных, больше про распознавание образов и жестов, и тут же про collaborative manipulations.
4. Образование. В общем, более-менее понятно, что наглядная подача материала может быть куда более эффективна и доступна. Инновации в этой области, например, могут существенно снизить стоимость образования за счет уменьшения срока его получения. Там же прозвучало мнение в необходимости новых средств работы с графикой, более доступных для более широкой аудитории. Кто-то упомянул новые очень высокоуровневые DSL ориентированные чисто на графику, но опять ничего более конкретного.
5. Контекстное моделирование. Что-то такое туманное про теорию всего. Т.е. унификация различных моделей на базе одной. Например, не только вычислять течение процесса и его визуальное представление, но и звук, сопровождающий данный процесс. В итоге возможность по нажатию одной кнопочки вычислить все параметры моделируемого явления.
6. Productivity boosting. Необходимость новых подходов к созданию контента и удешевлению производства. Были рассуждения про растущие мощности и возможности, но бюджеты и сроки растут еще быстрее. Вроде всем понятно, что тенденцию надо ломать, но как именно пока непонятно. Там же кинули камень в сторону академических исследований, которые оторваны от реального production, что давно известно.
В общем, необходимо больше уходить в задачи прикладных областей и помогать им решать их проблемы, выходя из своей маргинальной ниши. Особенно порадовал сильно по(седевший, лысевший) профессор пенсионного возраста, заметивший, что в его-то времена деньги были, а что молодняк будет делать ему не очень понятно.
Раз уж о бывалых речь. Стоит упомянуть интересное обсуждение в другом зале. Ed Catmul вспоминал суровые 80ые, показывая отрывки лекции как с собственным участием, так и с Jim Blinn (жаль, что и он не сидел рядом). Здорово посмотреть, как все зарождалось. В сущности проблемы все те же, только масштабы поменялись. Уже в те далекие годы они рассуждали про особенности реализаций gpu, cpu/gpu balance и о пути развития железок в целом. Внешне Catmul с тех пор мало изменился.
Еще из старой гвардии ILM/Lucas Arts была ностальгическая презентация от Jim Morris (ныне исполнительный вице-президент Pixar-a). Начинал он в 70ые с трешачка какого-то. И там он научился такой истине: «No one sets out to make a bad film - it just happens». Похоже на русский геймдев, ыхыхы. Потом его карьера пошла вверх: первые эксперименты с CG, Abyss, Terminator 2, Jurassic Park, Forrest Gump и т.д (чуть было не пустил слезу, ностальжи же). Под конец Jim заметил, что многие жалуются на поток никчемных фильмов, в которых помимо эффектов ничего и нет. Пообещал, что треш будет всегда. Однако есть надежда, что приличное кино таки будет не слишком большой редкостью. В общем, он укрепил меня в мысли, что можно продолжать ходить в кино не чаще раз в год.
Дальше блиц по некоторым из посещенных курсов.
Стоящий
курс про цветокоррекцию. Много уже не раз жеваного про гаммы, контрасты, динамические диапазоны, отображения между цветовыми пространствами, нелинейные искажения и пр. Немало относится только к кино и большому экрану, но от того не менее интересно. Похоже на страшилки, которые слышал и раньше. Например, про то, как некие полнометражные анимации фиксили в последний момент какие-то дико дорогие люди, поскольку на предварительных просмотрах выяснилось, что доминирующий в палитре цвет невероятно искажается на большинстве проекторов в кинотеатрах. Та же история с мониторами. Потому люди, серьезно работающие с цветом, остаются на CRT по сей день. Хуже того: для коррекции цвета на пленке используют оптическую систему с заданием параметров на перфокартах. Ага, используют до сих пор уже более 50 лет.
Конечно, сходил на ставший уже классическим сборник про «Advances in Real-Time Rendering in 3D Graphics and Games». Вновь за жизнь говорила Наталья Татарчук. Истины про написание игр, а не тека. Про тяжелые итерации и интеграцию (30% времени на работающий прототип, 70% на интеграцию для реального использования). Про важность графики, самой по себе не являющейся самоцелью. Очень советую доклад про игру по Toy Story 3. Как лучше реализовывать SSAO: какими выборками не стоит пренебрегать, как учитывать разницу глубины + еще всяческие рекомендации и пояснения. В динамике, правда, не показывали, но статичная картинка очень приличная. Вторая часть доклада про light rigs - как аккуратно переходить между зонами с разными источниками света. Идея в том, что артисты ставят ограничивающие объемы в зонах перехода. При рендере в буфер пишется расстояния до центра сферы или параллелепипеда, которое далее используется для смешения цветов на границе зон. Особенно подходит для low-spec конфигураций, где нельзя сразу. Неплохой доклад от Crytek (Антон Капланян) про реализацию новых фич в их движке (в основном про deferred pipeline). Там же был подробный доклад от Naughty Dog про очень специфические тонкости рендеринга некоторых материалов (кожа, волосы и такнь) в Uncharted2. Все довольно серьезно - SSS, хитрые BRDF и куча чтений из текстур. Как я понял, многие толстые шейдеры используются только в cut scenes. Запомнился и доклад Alex Valchos. Решили сделать потоки воды в Left 4 Dead 2 по-простому и чтобы дешево (целевая платформа-то не пс3). Интересно вышло. В Houdini импортируется уровень, и индус в нем рисует векторное поле с учетом геометрии. Поле уходит в normal map, который в движке делает distortion текстуры воды и прочей слизи. Сверху на это еще несколько затайленных detail normal map со сдвигами и шумом, чтобы были высокочастотные детали без заметных повторений - в итоге очень реалистичные потоки жижи. Спросил, не пробовали ли автоматом строить градиентное поле по 2d distance transform от геометрии, спроецированной на воду. Пробовали, но индус круче делал руками. В общем, понравилось, как из простых блоков соорудили довольно сложный эффект.
«Stylized Rendering in Games» был больше для художников, но для общего развития полезно. Интересно было посмотреть на разные итерации Prince of Persia и как менялись визуальный стиль по ходу работы и откликов фокус-групп. Про решения Mirror’s Edge с очень жесткими световыми пятнами и малой вариацией палитры. Докладчик постоянно напоминал, что сейчас такие трюки с EA не проходят, т.к. слишком рисково. Еще из забавного: доклад про командный шутер Monday Night Combat a-la TF2. Оказалось, что аниматором у них работает
виденный ранее на ютюбах ниндзя (многие из мало-реалистичных движений в игре он может воспроизвести).
С одной стороны «Beyond Programmable Shading» в этом году был похож на прошлогодний, с другой же какие-то совсем космические темы присутствовали. Отдельные обсуждаемые проблемы с трудом понимал. Споры про fixed-pipeline vs. fully programmable pipeline. Пока вроде больше всего людям не хватает programmable blending block, но еще зачем-то требуют совсем убить все fixed части.
Как водится, на все попасть нет никакой возможности. В этом году добрые люди с RTR пытаются выкладывать все материалы в одном месте. В общем, если кто еще не:
SIGGRAPH 2010 COURSES AND TALKS По ходу пообщался и с некоторыми соотечественниками.
Сотрудники Intel-а рассказали про особенности работы и обещали, что у них на подходе карточки, которые, наконец, не будут так сильно ругать (orly?). Там новый процесс, меньший упор на энергосбережение и вообще сплошные няшки. Также делились ужасами производства своих «вафель». Если вкратце, то уже почти никто не понимает, что там происходит внутри и какие параметры влияют на процент брака в выходном потоке. Пытаются максимально воспроизводить условия успешных производств.
Грусть в Disney, потому как на этапе препродакшена завернули новый проект и кучу народа увольняют до лучших времен сразу после сдачи Tangled. При этом Дисней активно хедхантил и снаружи признаков проблем заметно не было. Ситуация странная, то ли там бардак из-за продолжения реструктуризации после слияния с Пиксаром, то ли какие-то хитрые игры с акциями.
В отличие от прошлого года получилось немного поговорить и с Антоном Капланяном из Crytek. Правда, коротко очень. Подтвердил, что у них соотношение схоже с тем, о котором ранее говорила Наталия.
Быстро повидал Диму Андреева, который рассказывал про тяжкий путь джедая к
60 FPS. Очень интересная идея, использовать velocity buffer для интерполяции промежуточных кадров. Главное препятствие - артефакты от динамических объектов (которые приходится прятать, смещая буфер и складывая/сглаживая результаты) и abstraction ограничения DirectX на XBox360 (были обойдены полу-хаком, нарушая TCR!). К сожалению, в Star Wars: Force Unleashed II технология не попала, потому как контент и геймплей были заточены под 30 FPS. Как я понял, эта техника опробован Дмитрием уже давно еще на forward render, где нет таких проблем с чисткой динамических объектов, т.к. их можно просто не рисовать.
Встретил Андрея Шпагина, который уже несколько лет в одиночку пишет убийцу ZBrush-а. Только у него настоящий volume sculpting с вокселями, полигонизацией и отсутствием кучи проблем BRep моделей. За последний год пользовательское сообщество очень прилично разрослось, что неудивительно, учитывая кучу фич и низкую цену. Забавно, что изначально тул планировалось использовать для игры, до которой, полагаю, ему теперь особо дела нет. Андрей, кстати, был одним из первых программистов в GSC (еще во времена Warcraft 2000).
3D Coat FTW!
Недалеко от стенда 3D Coat-а продавали редактор процедурных текстур и run-time к нему за $1-2K+. Вспомнив свой редактор 5-летней давности для 64к демок и планов его перевода на GPU, вновь все понял про полимеры.
Кстати, о химии: слышал много ругани от разных людей в адрес Шварцнегера, душащего простых смертных неподъемными налогами.
В этот раз выделил время побродить по выставке достижений народного хозяйства.
Понравилась идея с «дисплеем», устанавливаемым на колеса велосипеда. На спицы крепится линейка светодиодов и гироскоп. С помощью гироскопа определяется угловая скорость, по которой контроллер вычисляет соответствие диода на спице с позицией каждого «пикселя» на плоскости. В итоге получается экран небольшого разрешения с варьируемой частотой развертки. В ROM можно класть картинки или даже мини-анимации.
Еще было традиционно много японского сумасшествия, описывать которое мало смысла (например, печеньки с меняющимся вкусом, которые надо есть с VR-шлемом на голове; какие-то проекции тараканов и прочих насекомых, взаимодействующих с реальной песчаной насыпью; неньютоновские жидкости для рисования на поверхности; ну вы поняли). Про симулятор special olympics пусть тут полежит.
Посмотрел живьем на карточку для HW raytracing со своими шейдерами (OpenRL) от Caustic Graphics. Интересно, но 1.5 кбакса за базовый вариант при относительно ограниченных возможностях рендеринга пока не очень впечатлили.
Про animation festival писать смысла нет. Надо было смотреть, как они:
Запомнилось русское имя автора веселого ролика:
You can watch this video on www.livejournal.com
И всем смотреть демо с Breakpoint 2010, не забывая что это real-time:
Click to view
Многие работы собраны тут.
Дни шли. Не шли из головы воспоминания о жестоком издевательстве представителя власти, имевшем место на пограничном контроле. Клин клином. Надо немного проветриться:
Больше вечерами никуда не ходил.
LA - город большой. Есть на что посмотреть, но было мало времени. Не доехал до Getty, но сходил в Museum of Contemporary Art, который был весьма близок.
Половина залов посвящена Arshile Gorky, который, оказывается, одно время был наставником Rothko. Хотя Ротко ушел в куда более суровые абстракции. Даже не очень удивительно, что оба не стали дожидаться естественной смерти. На экскурсии про армянского художника (Горький на само деле Адоян), как я понял, были только армяне. Как мне сказал грузинский таксист, в LA достаточно знать один из 3х языков: английский, испанский или армянский. Про испанский у меня не осталось ни малейших сомнений уже в первый же день. В вечернем даунтауне мучачо в сомбреро готовят такито и бурито прям на улице. Все это происходит в таких условиях, что шаверма начинает казаться фуа гра с белыми трюфелями. Грингос натурально не говорят на американском, и глупые вопросы об указании пути им задавать не стоит.
Про окрестности голливуда ничего интересного не напишу. В паре кварталов от главного бульвара:
Внутри обычно натуральное сельпо с запахом колбасы и злобными тетками за прилавками. Пирожные за 10 баксов ооок.
В автобусе, как и в маршрутках «транспортное ТВ» (с).
Know your enemy:
И ответ
Думаю, некоторые виды рекламы в общественном транспорте должны быть очень эффективны. Целевая аудитория как-никак.
Как и после прошлой поездки сложилось впечатление, что в штатах sky is the limit, но если падаешь, соломы никто не постелет. И чтобы не завершать на минорной ноте: редкий самолет долетит до середины Атлантики без ребута линукса
Самолет долетел, но стриминг перезагружали 3 раза.