Каково же было мое удивление, разочарование, смущение, ярость и досада, когда утром, облачившись в свои романтические доспехи, я спустился в холл и попал с общество остальных специалистов, приехавших на семинар. Стоит ли упоминать, что все они были одеты в любимые футболки и архетипичные джинсы. Я клял Гришу, Джона и себя за лубочный образ мысли, мчась по коридору и срывая с себя чужеродные покровы. Хорошо хоть нормальная одежда была благоразумно захвачена с собой, и скоро я уже чувствовал себя в своей тарелке, поскрипывая старыми коссовками. Волосы, правда, пришлось отращивать целый год.
Да, кстати, о Париже.
В Париже мне более всего запомнилась компания Borland: умопомрачительные рестораны, прогулки по Сене на корабле с логотипом компании, фантастическое шоу в варьете -Парадиз Латин», где на головы посетителям из-под купола планировал целый космический корабль с надписью Borland, из которого выскакивали изумительные девушки, олицетворяющие, очевидно, высокое качество программных продуктов компании.
Сам же Париж произвел на меня впечатление тягостное, если не сказать отвратительное. Грязь, вонь, многослойные собачьи продукты жизнедеятельности. Метро, описать которое возможно, только угодив в полицию за неполиткорректность. Снобизм и хамство, конкурирующее с московским. Побывав там еще раз через пять лет, я не обнаружил особых изменений и понял, что первое впечатление не было обманчивым.
С тех пор меня совершенно не тянет в Париж. А также в парикмахерскую. Ну, и на Новый Арбат…
Paint Effects
Рисовальные эффекты
Именно так зачастую переводят название модуля Paint Effects.
Сразу уточню - это не программа трехмерного рисования на поверхности объектов, и использовать Paint Effects в этом качестве, вообще говоря, неудобно. Это отдельный, довольно нетрадиционный, инструмент с изящной парадигмой.
В основе Paint Effects лежит понятие штриха (Stroke), который можно нарисовать на любой поверхности, на обычной двумерной плоскости или просто в произвольной области трехмерного пространства. В первом и последнем случаях это кривая на поверхности или в 30-пространстве, обладающая набором свойств, определяющих, как этот штрих будет выглядеть и как будет вести себя в сцене. Если это штрих, из которого должны расти деревья или волосы, то при любом положении камеры это будут настоящие деревья или волосы, которые еще и развеваются на ветру и имеют набор динамических характеристик, таких, как упругость или плотность. Трюк заключается в том, что трехмерные поверхности в данном случае не используются, а в каждый момент времени с чудовищной скоростью генерируется плоское изображение процедурного трехмерного объекта, каким он должен быть в этом месте - с учетом положения камеры, источников света, анимации, динамики и пр. Если сделать облет такого объекта, скажем дерева, то получится совершенно корректная картина, с трехмерным объектом в центре.
В понятие “кисть” (brush) в данном случае входит набор свойств, которыми обладают оставляемые ею штрихи. Кроме упомянутых деревьев и волос, рисовать можно огнем, молниями, различными растениями, жирными трехмерными мазками масляных красок, макаронами (да-да!), водой, снегом и много еще чем. Это лишь часть кистей, уже имеющихся в Paint Effects, но ведь кисти можно модифицировать, делать новые, можно смешивать их между собой и, естественно, сохранять, создавая свои библиотеки. Рисовать можно и текстурами, которые накладываются вдоль штриха различными способами. Коль скоро вид штриха определяется набором его атрибутов, то различные кисти - это просто MEL-скрипты, заполняющие атрибуты определенными значениями. Для удобства атрибуты разбиты на функциональные группы, отвечающие за размер кисти, цвет и текстурирование, тени, иллюминацию, свечение, топологию создания и анимацию роста при рисовании, поведение и силы взаимодействия, скручивание, жесткость и множество других параметров. Естественно, что для штрихов определяется чувствительность к нажатию - в случае использования пера. Созданные таким образом объекты могут отбрасывать тени на себя и окружающие поверхности, могут деформироваться при помощи обычных сплайновых кривых, способны конвертироваться в полигоны и обладают массой удивительных свойств.