Кто не хочет читать ONLINE, можете скачать доступные части книги:

Скачать часть1 (1.1 Мб) - Ознакомление с программой 3ds MAX

Скачать часть2 (1.4 Мб) - Объекты произвольной формы

Скачать часть3 (2.2 Мб) (не завершена) - Текстурирование

Глава 15. Сплайновые формы (shape)

Сплайновые формы - это так или иначе различного рода линии. Круги, квадраты, спирали, другие замкнутые и не замкнутые контуры, просло линии, плавные и изогнутые. Сами по себе, сплайновые формы не визуализируются (если не включена соответствующая опция и не настроены соответствующие параметры).

Ведь стоит вспомнить школьный курс геометрии: "прямая - это длина без ширины". Так же и линии, это нечто нематериально-математическое, не имеющее ширины, их можно обозначить схематически, чтобы мы их видели в окнах проекций, но визуально они, сами по себе, ничего не значат.

Тем не менее, сплайновые формы - это во, первых, мощнейший арсенал вспомогательных объектов для анимации и других целей. Во-вторых, это один из инструментов моделирования вполне ощутимых геометрических примитивов, которые могут быть визуализированы. При помощи различных модификаторов на основе сплайновых форм можно получать по заданным законам разные объекты, имеющие визуализируемую поверхность. В том числе, можно создать визуализируемые объекты, такие как Editable Patch. В-третьих, сплайновые формы всё-таки имеют и свою собственную возможность для визуализации. Вокруг линии создаётся поверхность в виде трубы заданной толщины. Для неё так же надо указать число сторон и число шагов интерполяции.

В общем, сплайновые формы - вещь в хозяйстве очень нужная, поэтому мы просто обязаны с ними познакомиться.

Создание и редактирование

Формы создаются во вкладке Create, в подвкладке shape . Здесь можно выбрать множество примитивов, состоящих из линий, в том числе, самая универсальная линия - Line. Линия создаётся по вершинам, каждая вершина создаётся по клику мыши. Если удерживать правую кнопку мыши нажатой, можно задать кривизну линии (фактически, при нажатой кнопке мыши создаётся касательная). Создание линии заканчивается при нажатии правой кнопки мыши. Редактировать линию можно во вкладке Modify. У сплайновых форм так же, как и у всех объектов есть стек, и к ним тоже можно применять модификаторы. Существуют модификаторы, которые специально предназначены только для сплайновых форм и работают только с ними.

Любой примитив из группы Shape может быть без проблем преобразован в сплайновую форму.

Среди примитивов у нас имеются:

Формы Text и Donut содержат в себе несколько линий. Форма Section так же может содержать несколько линий, в зависимости от того, что пересекает плоскость. Форма генерируется из всех объектов, которые пересекаются созданным сечением.

Ещё формы можно создать из рёбер объектов типа Editable Poly, Editable Mesh и других, с которыми мы ещё не познакомились. У всех таких объектов есть в режиме работы с соответствующими подобъектами есть кнопочки Create Shape From Selection, по нажатию которых из выделенных рёбер или, в случае других объектов - других контуров, генерируется самостоятельный объект - сплайновая форма. В случае Mesh и Poly это будет ломаная линия, поскольку у них рёбра прямые.

Все формы имеют параметры, которыми можно управлять. Форма Line - является самой универсальной, и является редактируемым, а не параметрическим объектом, то есть управлять её внешним видом можно не при помощи параметров, а при помощи работы с подобъектами.

 

Управлять формой линии можно в группе параметров Selection, где сразу под заголовком находятся три кнопки:

Vertex, Segment и Spline - это так подобъекты (sub-objects) объекта Line.

Доступ к подобъектам можно так же получить через стек, развернув плюсик объекта Line. Если его развернуть, можно увидеть все подобъекты, и выбрать один из них.

Редактировать вершины можно в режиме Vertex . Если выделить одну или несколько вершин и кликнуть правой кнопкой миши в окне проекции, то вокруг курсора появятся четыре меню. В верхнем левом меню можно управлять параметрами вершины. Первые три пункта относятся к разным подобъектам.

Если форма будет использоваться для создания траектории движения, она должна содержать только один сплайн. Сплайном считается непрерывная линия.

Примечание: любая форма может быть преобразована в объект типа Editable Spline, который по всем своим свойствам аналогичен объекту типа Line, и редактируется так же. Если вы преобразовали в Editable Spline какую-нибудь параметрическую форму, например Circle, то вы больше не можете легко и просто управлять радиусом круга, но можете менять форму круга оперируя точками, сегментами и сплайнами. Форму Editable Spline можно получить из любой другой формы, если в стеке выбрать тип объекта (когда нет модификаторов), и кликнуть правой кнопкой мыши. В появившемся меню, в списке Convert to: выбрать Editable Spline.

Если уже применены модификаторы, то преобразовать форму в Editable Spline можно только применив модификатор Edit Spline. Он действует несколько не так, как Turn To Mesh и Turn To Poly. Он больше похож на Edit Mesh и Edit Poly, которые превращают исходный объект в новый тип, и при этом дают инструменты для редактирования в режиме работы с этими модификаторами. То есть, когда применён модификатор Edit Mesh, Edit Poly, Edit Spline, Edit Patch (патчи пока не рассматривали), у нас как бы появляется возможность сохранить исходник, но поверх исходника внести ещё какие-то изменения. Есть ещё Edit Normals, который появился в шестой версии 3ds MAX, так чтобы не путать, хоть модификатор и начинается со слова Edit, он из другой оперы, он переводится на русский как "Редактировать Нормали". Объектов типа Editable Normals нету, нормали - это нечто вроде подобъекта Editable Poly и Editable Mesh, к которому нет доступа через стандартные инструменты.

Чтобы сама исходная форма превратилась в Editable Spline, надо выполнить Collapse To.

И всё-таки, не стоит путать ещё две вещи: объект Editable Spline и Spline как подобъект сплайновой формы, в том числе Line и того же Editable Spline.

Если у вас в пределах одной сплайновой формы имеется две линии, конец одной из которых совпадает с началом следующей, но всё-таки это две разные точки, то у вас два сплайна-подобъекта. К тому же, оба сплайна могут являться разными частями двух разных сплайновых форм, тут важно ориентироваться, как мы их создали. Для того, чтобы оба сплайна являлись одним объектом, один из них надо создавать при нажатой кнопке Line, находящейся во вкладке создания форм, а второй - при нажатой кнопке Create Line, находящейся уже в параметрах самой формы Line или формы Editable Spline.

Если ваши сплайны являются двумя разными объектами, то объеденить их в один объект можно при помощи кнопки Attach (присоединить), которая так же находится в группе Geometry в параметрах формы Line или Editable Spline. Соединить два сплайна в один можно двумя способами.

  1.  В режиме редактирования вершин (нажатая кнопка , либо выделенный пункт Vertex в стеке). В группе Geometry надо найти кнопку Connect, нажать её и соединить две крайние точки на обоих сплайнах (выбрать одну точку, потом, не отпуская левой кнопки мыши переместиться во вторую).
  2. Объединить два конца разных сплайнов. Для этого надо выделить два конца, которые мы хотим соединить. В той же группе Geometry найти кнопку Fuse (сплавить). Две вершины переместятся в одну точку пространства. Вообще, кнопка Fuse перемещает в одну точку пространства все выделенные вершины не зависимо от того, находятся ли они на концах сплайна, на разных сплайнах или на одном и том же. Но Fuse не соединяет все вершины в одну. Чтобы соединить две близкорасположенные вершины, применяется кнопка Weld (объединить). Напротив команды Weld находится графа с числом - это пороговое значение. Все точки, находящиеся друг к другу на расстоянии, ближе чем это значение, соединяются в одну, если они являются соседними вершинами на одном и том же сплайне, либо если эти вершины лежат на концах одного и того же или двух разных сплайнов.

Параметры сплайновых форм

Чётко и однозначно разделить объекты на параметрические и редактируемые, как ни крути, не получится. Есть однозначно параметрические - в основном это стандартные и расширенные примитивы, а так же многие фигуры из группы сплайновых форм. Но даже у редактируемых объектов некоторые свойства по прежнему задаются при помощи параметров. У всех сплайновых форм в режиме исходного объекта есть такие группы меню, как Rendering и Interpolation.

Rendering - группа меню, отвечающая за визуализацию. Здесь можно определить, будет ли сплайновая форма визуализироваться. Внизу группы есть флажок Rendrable. Он, фактически, дублирует такой же флажок в менюшке, которую можно открыть, если правой кнопкой кликнуть по нашему объекту и в развернувшихся окнах выбрать Properties. Если у объекта отключена рендерабельность, он не будет визуализироваться в конечном изображении. Для прочих объектов рендерабельность можно включить и выключить только в Properties, вызываемом по правому клику мыши на объект, а у сплайновых форм он продублирован в инструментах.

 

Здесь же выбираются параметры, как создавать поверхность вокруг сплайна. В частности: толшина: Thickness, Sides - число сторон трубы, Generate Mapping Coordinates - создать координаты наложения текстуры. О них подробнее узнаем в разделе "текстурирование". Просто если флажок поставить, координаты наложения создадутся, если нет - не создадуться. Без них далеко не всякую текстуру можно будет наложить на наши трубы.

Display Render Mesh - показать поверхность для визуализации. Вообще, хотя поверхность и визуализируется, без этого флажка в окнах проекций она отображаться не будет, вместо неё можно будет видеть просто линию.

Cтоит так же заглянуть в группу Interpolation. По умолчанию кливые аппроксимируются ломаной линией, и параметр Steps (шаги), определяет число отрезков ломаной. Optimize - используется для оптимизации формы визуализируемых сплайнов. Главным образом, он делает более приятными переходы на углах. Параметр Steps отвечает так же за число сегментов визуализируемой поверхности, каждый сегмент соответствует одному шагу Step интерполяции сплайна при помощи ломаной линии. То есть, если у нас имеется сплайн с n сегментами, и мы поставим число шагов интерполяции равное m, то каждый сегмент будет представлен в виде ломаной из m+1 отрезков, а весь сплайн будет состоять из n&mipot;(m+1) отрезков ломаной. Визуализируемая поверхность в виде трубы, будет представлена состыкованными друг с другом прямыми трубами, число которых будет равно числу отрезков на сплайне.

Adaptive - включает плавную аппроксимацию кривой, если вы поставите этот флажок, кривая станет гладкой. Особенно это будет заметно, если у вас стоит небольшое число Steps. Adaptive действует только на сам сплайн, и не влияет на визуализируемую поверхность. Гладкие сплайны с интерполяцией Adaptive очень хороши для создания движения по траекториям (траекторией служит сам сплайн). Если вы хотите получить гладкую визуализируемую трубу, просто поставьте побольше Steps, только не ставьте больше, чем это действительно надо, всё-таки лишние интерполяционные сегменты занимают память и увеличивают время рендеринга.

Для визуализируемой поверхности есть так же параметры Material ID (или просто ID), который находится так же в группе меню Surface Properties. Он может быть присвоен каждому сегменту сплайна свой собственный и будет влиять на свойства визуализируемой поверхности, которая образуется вокруг каждого сегмента. Групп сглаживания нету.

Модификаторы для сплайновых форм

Для сплайновых форм существуют специальные модификаторы, которые работают только с ними. Одни из таких модификаторов меняют свойства сплайновых форм, другие - превращают сплайновые формы в другие объекты.

Edit Spline

Этот модификатор даёт возможность редактирования сплайновой формы. Если его применить поверх другого модификатора, или поверх сплайнового параметрического примитива, то он даёт инструменты редактирования, при том сохраняется всё, что имелось ниже по стеку. Правда, после применения Edit Spline, при всякой попытке спуститься вниз по стеку, будет выдаваться сообщение, суть которого такова: если вы внесёте изменения на нижних уровнях, они отразяться на резельтате, полученном при применении модификатора Edit Spline. В общем, если на нижнем уровне вы добавите или удалите какие-нибудь подобъекты, это может непредсказуемым образом изменить результаты, к которым вы пришли при помощи инструментов модификатора Edit Spline.

Normalize Spline

Этот модификатор перестраивает сплайн таким образом, чтобы форма кривой сохранялась, но вершины располагались друг от друга через равные интервалы. Это бывает полезно в тех случаях, когда сплайн используется в качестве траектории. У этого модификатора всего один параметр - seg. length - длина сегмента, расстояние между двумя соседними вершинами нормализированного сплайна.

Lathe

Создаёт объекты вращения на основе сплайновых форм. Имеющийся сплайн поворачивается вокруг заданной оси вращения, и вычерчивает в пространстве поверхность. С помощью этого модификатора удобно создавать вазы, колонны, и другую посуду с осевой симметрией. Полученные таким образом объекты имеют поверхность и могут визуализироваться как объёмные тела. Подобъекты модификатора - ось вращения, которую можно перемещать.




а

б
Рис. 15.1. Вот так действует на сплайновую форму модификатор Lathe.


По умолчанию вращение происходит вокруг одной из координатеных осей собственной системы координат объекта. Вспомним, что начало координат СК объекта есть некая опорная точка. Когда мы задаём координаты объекта в мировой СК, определяют координаты этой самой опорной точки. У модификатора есть подобъект - AXIS (оси), который можно передвигать в режиме работы с подобъектом модификатора. Чтобы скорректировать положение центра собственной СК объекта, желательно переместить нашу линию в точку пространства с координатами {0, 0, 0}, затем перейти в режим редактирования подобъектов, лучше подобъектов-сплайнов, поскольку их удобнее выделять и перемещать, а потом передвинуть так, чтобы подобъекты находились в нужном положении относительно опорной точки. Положение самой опрной точки у нас замечено, мы её специально расположили в нуле мировой СК, чтобы знать, где она находится. При желании, можно настроить положение каждой вершины, поскольку опорная точка у нас находится в нуле мировой СК, то координаты вершин в мировом пространстве совпадают с координатами вершин в собственной системе координат объекта.

Кстати, не обязательно, чтобы линия лежала в одной плоскости. Она может быть и изогнута.

Surface

Этот модификатор так же помогает создать визуализируемые поверхности, только на сей раз практически любой формы. Прежде, чем применять модификатор, надо из сплайновых форм создать некий проволчный каркас. Каркас должен содержать только криволинейные треугольники и четырёхугольники. Линии каркаса в углах треугольников и четырёхугольников обязательно должны иметь вершины, расположенные друг от друга на близком расстоянии, либо вообще в одной точке. После применения Surface на правильно изготовленный сплайновый каркас натягивается поверхность. Каркас должен являться одним объектом.

Чтобы вершины в местах условного пересечения линий, лежали достаточно близко, можно выделять их попарно (или, сколько планируется разместить в одной точке простанства), и применять к ним команду Fuse.

Команда Flip позволяет поменять изнанку и лицевую сторону поверхности.

Remove Inneor Section - удаляет внутренние сечения. Внутренние сечения могут появиться, если фигура содержит опоясывающие контуры, в которых имеется по 3 или 4 вершины. Во всех стандартных ситуациях эту опцию лучше включить.

Существуют любители, которые используют этот метод для моделирования достаточно сложных объектов, в том числе, реалистичных живых существ. Но всё же, этот метод довольно-таки сложен для использования, поскольку сплайновый каркас - достаточно неподатливая конструкция. Интерполяция линий приводит к образованию всяких нежелательных складок на поверхности, надо постоянно заботиться о том, чтобы каркас состоял только из треугольников и четырёхугольников, чтобы в точках пересечения линий вершины не уходили друг от дружки далеко. Кроме того, много проблем с касательными и интерполяцией. И если две вершины в одном из окон проекций оказываются достаточно близко, постоянно вывешивается табличка с предложением либо выполнить Weld, либо замкнуть контур (если это два хвоста одной и той же линии), надо только отнекиваться от него.

Другой аспект: если в одной точке пространства находится несколько концов разных линий, и два из них мы хотим слепить, скажем, для того, чтобы переход между двумя отрезками линии был плавным. Для слепки придётся разбирать всю кучу вершин, иначе при выполнении команды Weld они послипаются как Бог на душу положит.

В итоге, гладкие и детализированные поверхности удобнее создавать при помощи технологий Editable Poly и Editable Mesh с последующим применением MeshSmooth.

Другие модификаторы

Со сплайновыми формами так же работают и другие модификаторы, предназначенные для разных типов объектов.

К примеру, с ними работают Mesh Select и Edit Mesh. При этом сплайновая форма преобразуется в поверхность. Если это замкнутый контур, у которого не включена опция Display Render Mesh, то на контуре образуется плёнка из поверхности. Модификатор Mesh Select существует для того, чтобы выделить отдельные подобъекты у Editable Mesh для дальнейшего применения к ним других модификаторов, но если модификаторы Mesh Select и Edit Mesh применяются к объекту другого типа, то этот объект по мере возможности конвертируется в Editable Mesh. Если включена опция Display Render Mesh, то поверхность Editable Mesh создаётся из отображаемой поверхности.

Примерно тот же результат даёт модификатор Cap Holes, если у нас имеется замкнутый контур. Во общем случае, Cap Holes затягивает плёнкой все имеющиеся в объекте дырки.

Bevel и Extrude действуют подобно аналогичным инструментам в Editable Mesh, но в случае замкнутых контуров сплайновых форм, натягивают на контуры плёнки, с которыми и выполняются эти операции. При помощи этих модификаторов удобно преобразовывать сплайновую форму Max Text в визуализируемую надпись.

Symmetry работает со сплайновыми формами не так, как бы нам этого хотелось. Этот модификатор тоже сначала преобразует сплайновую форму во что-то вроде Editable Mesh, а уже потом делает полученный объект симметричным. Так что если у нас не было замкнутых контуров или отображаемой поверхности, то после применения Symmetry всё пропадёт.

Хорошо к сплайновым формам применяются всякие модификаторы деформирующего характера: все виды FDD, а так же Noise (шум), Bend (изгиб, сгибание в дугу), Twist (перекручивание, типа как выжимаемое бельё), Wave (волна - странная какая-то волна, неравномерная), Ripple (круговая волна, подобно кругу на воде) и др.



<< Назад Оглавление   Вперёд >>
homepage: http://teapot3d.narod.ru
Используются технологии uCoz