Смысл моих эмоциональных и субъективных эскалад, сводится к тому, что единственное скромное преимущество полигонов перед сплайнами (а именно, возможность поверхности иметь произвольную внутреннюю топологию) не может быть скомпенсировано никакими изощреннейшими сплайновыми инструментами.
И тут появились сабдивы…
Терминологичекий комментарий. Если с полигонами все понятно, и даже военнопатриотический термин «многоугольники» практически не путает пользователей, то в отношениий сплайнового моделирования в народе употребляется масса терминов: «нурбсы» (NURBS), «сплайны», «Безье», «патчи», кто-то слышал даже про формы Эрмита и кубические параболы. Термин «сплайны» означает параметрические кривые и поверхности, которые бывают разных типов. Самый сложный и гибкий класс называется NURBS (non-uniform rational b-splines).
«Би-сплайны» означает, «базовые сплайны», здесь буква b означает basic.Это специальный тип сплайнов, которые могут быть быстро вычислены как сумма базовых функций. Он был придуман еще в 1946 году, однако методы быстрого рекурсивного вычисления би-сплайнов появились только 1972 году.
Слово «неравномерные» (non-uniform) означает возможность неравномерной параметризации вдоль протяженности поверхности, хотя в основном работа ведется с равномерными (uniform) сплайнами.
«Рациональные» (rational), означает, что котрольные точки могут иметь разные веса и притягивать к себе поверхность по-разному, хотя опять же, по умолчанию работа в MAYA ведется с нерациональными поверхностями и кривыми, веса точек у которых одинаковы.
Кривые и патчи Безье - более примитивный подкласс NURBS, в котором возможно редактировать объекты только в конкретных узловых (knot) точках. BMAYA этот, более простой тип сплайнов не используется для моделирования. Таким образом, термины «сплайновые объекты» и «NURBS-объекты» являются синонимами (по крайней мере, в этой книге).
Термин «патчи» применительно к MAfA имеет двоякое значение. Во-первых, это просто NURBS-поверхности, как правило с гладко сшитыми краями, лоскутно составляющие модель. Отсюда и термин «патчевое моделирование». Во-вторых, патчами формально называются компоненты сплайновых поверхностей, представляющие собой ячейки в сетке изопарм. Практическое применение патчей-компонентов мне лично неизвестно, разве что для экспорта в спецпрограммы, работающие с такими лоскутами.
Термин «сабдивы» окончательно прижился для обозначения subdivision surfaces, или «поверхностей разбиения» (это, правда, довольно неуклюжий термин: лучше уж было их назвать «поверхности сглаживания»). На сабдивах мы как раз и остановились перед этим, развернутым комментарием.
Несмотря на то, что реально сабдивы впервые появились в застенках секретных лабораторий и в работах Кэтмулла и Кларка еще в 1976 году, рассекретили их лишь несколько лет назад. Почему так и - что же такое сабдивы?
Представьте себе полигональный кубик (можете даже создать его в MAYA). Примените к нему мысленно или на практике полигональную операцию Smooth (сглаживание). Затем примените ее еще несколько раз. На десятой попытке, в паузе между операциями Smooth, можно без особой спешки попить чайку, на одинадцатой - сбегать в ближайшие кассы за билетом в Феодосию, а вот на двенадцатой паузе можно уже прекрасно провести время на море и, вернувшись после отпуска, обнаружить на экране гладкую сферу с некоторым количеством вершин. А теперь представьте, что будет после применения беконечного количества операций smooth. Результатом и будет subdivision surface, или сабдив.