КДПВ 3. Неполная разборка
В предыдущей части я писал об объектах. Эта часть — о геометрии.
- Геометрия
- По традиции, отступление
- Примитивы
- Модификаторы
- Собственно, разница идеологий
- Работа с геометрией
- Точка поворота
- Оперирование геометрией
- Выбор элемента
- Базовые операции над элементами
- Оперирование элементами
- Заключение
- Создание труб и проводов в Blender с помощью кривых
- Как визуализировать 3D-модели в виде векторной графики SVG? (плоская проекция)
- 🎦 Видео
Видео:Работа с вектором в Blender (svg)Скачать
Геометрия
Видео:Как быстро перевести любую картинку в вектор и 3D логотип в Blender | vectorizer.aiСкачать
По традиции, отступление
Как бы я ни хотел сделать пост поменьше (а картинок — побольше), такая серьезная тема как геометрия все-таки требует понимания.
Не понимая основ компьютерной графики, в 3D моделировании многого не достичь (разве что скульптингом заняться, но там уже творчество). Поэтому чуть ниже я возьму совсем уж менторский тон, одновременно погружаясь в пучины основ. Если вы знаете, чем треугольник отличается от полигона, а тот — от нормали, то смело и решительно пропускайте.
В компьютерном представлении 3х-мерный объект обычно представляется как набор точек с координатами, ребер между ними и граней, которые натянуты на эти ребра.
“Обычно” — потому что есть еще как минимум воксели.
Подробнее.
Точка (vertex) — это базис и основа, это альфа и омега, без точек — никак. Точки могут и существуют сами по себе. Характеристика точки — координаты.
Ребро (edge) — это соединение ровно двух точек. По-русски это “трехмерный отрезок”. Характеристики ребра — точки, его образующие и, собственно, сама линия.
Итак, ребра создают каркас. На этот каркас потом натягивается то, ради чего и затевается обычно (необычность) весь этот балет — грани. Или полигоны. Или поверхности. Я возьму на себя смелость использовать далее свои термины — просто потому, что мне так удобней.
Итак. Поверхность (полигон, грань) натягивается на замкнутую “рамку” из ребер. Минимальное возможное количество ребер в рамке равно трем, что очевидно, иначе это уже будет палка.
Теперь главный поинт: треугольник из 3 ребер нельзя изогнуть. Это важно. У него все ребра всегда лежат в одной плоскости. Если потянуть за любую из его вершин (точек, которым принадлежат его ребра), то поверхность не переломится. Это свойство критично для компьютерных расчетов, поэтому, в принципе, после точки и ребра идет:
Треугольник — поверхность, натянутая на замкнутую рамку из 3 ребер. Характеристики: ребра, координаты вершин, и нормаль. Нормаль — это чисто компьютерная характеристика, нужная для расчета освещения. Если вы никогда не собираетесь рендерить свои модели, либо экспортировать в другую программу, то забудьте про нормаль. Если собираетсь, то вот объяснение. У треугольника есть 2 поверхности. Когда мы говорим, что свет падает на поверхность треугольника, то нужно указать (этого требуют алгоритмы расчета), с какой стороны ожидается, что он будет падать, другими словами, указать внешнюю сторону треугольника. Нормаль — это вектор, выходящий из треугольника под прямым углом к его поверхности во внешнюю сторону. Некоторые программы (не Blender) просто не отрисовывают внутреннюю сторону треугольника, могут быть дырки. У точки и ребра поверхностей нет, поэтому и нормали у них тоже нет.
Рисунок 1. Треугольник (серый) с выходящей из него нормалью (голубая линия). Как видим, внешняя сторона у этого треугольника — вверху и нам не видна. Есть программы, которые не рендерят треугольники, если внешняя сторона не видна из камеры. На рендере из такой программы на месте изображенного треугольника было бы то, что находится за ним.
Этим, в принципе можно было бы и ограничиться, так как треугольника достаточно, чтобы замостить любую поверхность с достаточно хорошим приближением. Слово “достаточно” тут ключевое. Чем больше треугольников — тем больше нагрузка на систему. Процесс стартового замощения треугольниками называется триангуляцией. Процесс увеличения детализации уже триангулированной поверхности — это тесселяция. Видеокарточки, OpenGL, DirectX оперируют именно треугольниками. Принцип минимальной необходимости.
Однако, когда мы говорим о моделлинге, в свои права вступает человеческая лень. Если мне скажут триангулировать рамку, показанную на рисунке 2, то я это сделаю. А если мне скажут, что есть алгоритмы автоматической триангуляции, то я попробую автоматизировать процесс. Такие алгоритмы есть. Поэтому появляется следующая ступень — полигон.
Полигон — набор треугольников, лежащих в одной плоскости и соприкасающихся друг с другом ребрами.
Рисунок 2. Слева — замкнутая рамка из ребер, по центру — ее триангуляция (лично сделал!), справа — полигон на этой рамке.
Состыковывая между собой треугольники (или полигоны), лежащие в разных плоскостях мы и получаем то, что называется “объект”.
Важно понимать, что, например, у понятия “точка” есть свои обязательные атрибуты — координаты, а вот у понятия “объект” их нет. Даже замкнутость его поверхности — необязательна. Даже состыковка полигонов — необязательна. Две точки — это объект. Точка — это тоже объект. Если вы, как автор модели, так решили — значит, так и будет в рамках данной модели.
Более того, в 3D редакторах есть объект “Empty” (используется как вспомогательный). У него есть только координаты. Точки нет, а координаты есть.
Резюмируя. Геометрические понятия в 3D моделлинге, начиная снизу: точка, ребро, треугольник (и производная — полигон). А вот объект — это просто контейнер для геометрических элементов.
Рисунок 3. Молекулярная, так сказать, модель объекта. Данный объект состоит из 8 точек (одна не привязана ни к чему), 9 ребер, треугольника (не подписан на английском намеренно) и полигона (рассчитан автоматически, на самом деле состоит из двух треугольников).
Вынырнув из пучин основ, теперь я нырну в пучины рассуждений. Эта часть тоже необязательная, но поможет лучше понять мою позицию.
Примитивы
В прошлой серии я писал о примитивах. “Примитив” — это, по большому счету, маркетологический термин. Назвать Сюзанну примитивной я не могу. На самом деле, примитивы следовало бы назвать “базовые объекты” или “стандартные объекты” — ну как-то так. Но, спорить об устоявшихся терминах — дело неблагодарное. Примитив так примитив.
Так вот, примитивы, как вы уже поняли — это не самое дно (я в хорошем смысле этого слова) моделирования. Самое дно моделирования — это, как вы уже поняли — точки, ребра и грани, из которых они состоят. Как и любой другой 3D объект.
В примитивах нет ничего особенного. Они доступны сходу просто потому, что они общеупотребимы и имеют простую форму, что помогает применить технику Микеланджело — посмотреть на моделируемый объект, прикинуть наиболее похожий примитив, создать его и отсечь лишнее. Причем от программы к программе набор примитивов разнится. В максе есть даже “расширенные примитивы” (помимо обычных), включающие в себя уголок, цилиндр с фасками, капсулу, узел и т.п.
Для повышения удобства пользования у примитивов выделили присущие им ключевые параметры (например, радиус у шара) и дали возможность эти параметры при старте задавать. После задания параметров и подтверждения создания 3D-пакет согласно соответствующему скрипту просто расставляет точки, натягивает ребра и треугольники с учетом этих параметров. Вуаля — примитив готов.
Примитивы — это просто библиотека для ускорения работы.
Модификаторы
Как уже ясно, модификаторы работают на уровне геометрии объектов, а не самих объектов. Объект — это просто контейнер. Работу любого модификатора можно проделать на том же уровне геометрии и руками, просто это дольше. Модификаторы — из той же оперы, что полигон и примитивы.
Собственно, разница идеологий
Кнопка “Создать шарик” в Blender делает именно то, о чем я написал выше. Программа создает геометрию. Можно указать точные параметры сферы, но только один раз — при создании. При снятии выделения с шарика параметры заново не укажешь. Blender в этом смысле хардкорен по сравнению с максом, где…
“Создать шарик” в максе — это команда стека. Это процедура. Она помещается в низ стека, выбрав ее в стеке можно переуказать параметры сферы: радиус, количество сегментов и т.п. Она не порождает геометрию (в том смысле слова, что ее можно редактировать), она порождает основу для последующих модификаторов. Макс как бы намекает нам: “Эй, не надо копаться с точками! У меня есть сто миллионов модификаторов и даже расширенные примитивы, просто скомбинируй!” Работа с геометрией в максе — это исключение. Настолько, что был введен модификатор редактируемой геометрии. Вдумайтесь — модификатор, который просто разрешает работать вручную с геометрией. Но все-таки, в максе можно работать с геометрией, так что…
Так что получается, что Blender не так гибок, как макс: не нравится получившаяся детализация — пересоздавай примитив, указывай нужные параметры, заново проделывай те же операции. Мрак. Вроде.
Если в максе сделать шар, применить модификатор “Edit Mesh”, передвинуть парочку вершин/ребер/граней, а затем кликнуть на команду стека “Создать шарик” (ну типа не нравится мне детализация, хочу воспользоваться архитектурным совершенством макса), то произойдет следующее:
Рисунок 4. Макс. Возврат в начало стека после ручной работы с геометрией. Так как макса давно нет под рукой, то выдирал из видео, сорри за качество.
Макс перекладывает ответственность на юзера, ведь чудес не бывает: если я передвинул два рядом стоящих полигона в противоположные стороны, а потом в стеке уменьшил детализацию сферы в 4 раза — при подъеме вверх по стеку куда двигать полигон, находящийся на месте предыдущих двух?
Рисунок 5. Дилемма выбора макса. Сдвинули один полигон влево, другой — вправо, потом откатились к старту стека и уменьшили детализацию. Куда двигать полигон?
Фактически, стек макса тут бессилен и фактически же параметры сферы в максе тоже задаются раз и навсегда. Все вышесказанное справедливо, если мы говорим о ручной работе с геометрией (которая включает в себя развертку). Если речь идет только модификаторах, то тут макс в своем праве.
Зато в максе есть align to, а вот Blender все филонит (аддоны нещитово).
Резюмируя: макс рассчитывает на то, что вы начинаете работу с концепции примитива и будете оперировать модификаторами, а в Blender — с геометрии примитива и будете оперировать с геометрией (но модификаторы тоже есть).
Видео:1. Blender. Curve Pen (Инструмент Перо) | КриваяСкачать
Работа с геометрией
Точка поворота
Как я уже написал выше, объект в Blender — это контейнер. У него, помимо собственно геометрии (mesh), есть также название, стек модификаторов, материалы примененные, и origin — точка поворота. Устанавливается она по умолчанию в центр масс примитива, но ее можно передвинуть (либо она сама уедет, оказавшись не там, где надо — ниже приведен пример). Для установки origin надо выделить объект и, не снимая выделения, поставить 3D курсор в нужном месте и нажать Shift-Ctrl-Alt-C (или пробел — Set origin, если кому пальцев жалко).
Ниже иллюстрации.
Рисунок 6. Слева куб с точкой поворота (грязно оранжевый квадратик), выставленной по умолчанию в центр масс. Справа — результат базовой операция поворота куба (специально включил отображение контроллеров для наглядности) — куб крутится на месте.
Рисунок 7. Слева куб со смещенной точкой поворота (я создал куб в центре координат, сдвинул его в сторону, нажал Shift-S, выбрал Cursor to Center, а затем Shift-Ctrl-Alt-C и выбрал “Origin to 3D cursor”). Справа — результат базовой операция поворота куба (специально включил отображение контроллеров для наглядности) — куб крутится не на месте, а по кругу.
В первой серии я упоминал, что Blender фокусируется на задачах, отбрасывая ненужное в данный момент. Помимо лэйаутов, это относится еще и к такой концепции, как “режим работы”.
Вот его индикатор — выпадающий список с почти всеми доступными режимами:
Рисунок 8. Возможные режимы работы Blender (есть еще режим установки позы, но он доступен только при выборе кости). При переключении обратите внимание, на то, как меняются ближайшие к индикатору пункты меню в зависимости от режима работы.
До текущего момента мы работали в Object Mode. В нем минимальной единицей работы является объект. Максимальной — вся сцена.
Для работы с геометрией надо а) выбрать интересующий объект и б) перейти в Edit Mode. Горячая клавиша переключения между именно Object и Edit Mode — клавиша Tab (напоминаю, должен быть выделен объект). Можно, естественно, воспользоваться и выпадающим списком режимов. Далее режим работы с геометрией я буду называть EM — сокращенно от Edit Mode. Режим работы с объектами, соответственно — OM.
Минимальная единица работы в EM — точка. Максимальная — вся геометрия объекта.
Итак, создаем примитив, нажимаем Tab и видим следующее:
Рисунок 9. Отображение объекта для работы на уровне геометрии.
Мы видим точки (по углам), ребра и полигоны. И тут возникает 2 вопроса:
- Почему вся геометрия выделена?
- Как двинуть конкретную точку/ребро/грань?
Вся геометрия выделена потому, что вы только что создали примитив в OM и потом перешли в EM. Blender не знает, с чем именно вы хотите работать и предлагает работать со всей геометрией сразу (мог бы вообще не предлагать, но в BF сидят дружелюбные люди). Если вы прямо сейчас потянете за контроллер и сдвинете всю геометрию вправо, то увидите, как геоетрия уехала, а вот origin остался на месте. Сдвиньте и вернитесь в OM, а затем поверните кубик. Вот поэтому я писал об origin. И вот поэтому EM — это режим работы именно с геометрией. Origin — это не геометрия объекта, это отдельная характеристика объекта.
В этом месте уместно сказать, что на уровне сцены Blender оперирует именно и только объектами и их сочетаниями. Нельзя просто так взять и создать геометрию без объекта — у нее не будет ни origin, ни имени, ни всего остального. А если попытаться дать геометрии имя — так ведь это опять объект получается. Геометрия — это важная часть объекта, но только часть, это критично.
Итак, как выделить нужный элемент (пару точек или ребро, например)? Очень просто. Сначала нужно сказать Blender, какой тип геометрии вас интересует. Можно через UI:
Рисунок 10. Кнопки 1 переключают между точками, ребрами и гранями, кнопка 2 включает/выключает бэкфейсинг (учет элементов на задней поверхности объекта).
А можно в EM нажать Ctrl-Tab:
Рисунок 11. Меню выбора способа работы с геометрией. Работает курсор, мышь и даже кнопки 1,2,3.
Оперирование геометрией
Blender, в отличие от макса, не дает оперировать таким понятием, как треугольник. Он оперирует полигоном. И он сам его режет на треугольники. Если вам нужен тотальный контроль — делайте все полигоны треугольными. Рисунок 3 отображает эти реалии — в Blender доступны те элементы, у которых на рисунке есть английское название.
Выбор элемента
Все, что написано ниже, относится и к OM:
- Работает персональный выбор элемента по ПКМ. Shift — ПКМ добавляет/удаляет из текущего выделения.
- “Выбрать все, что можно” / “снять все выделение” — клавиша A. Или пункт меню 3D области Select->(De)select All. Одна из самых часто нажимаемых мной.
- Выбрать рамкой (учитывая установленный бэкфейсинг) — B. Или Select ->Border Select. Не снимает уже имеющееся выделение, что важно. Очень помогает при работе с точками.
- Выбрать кругом (учитывая установленный бэкфейсинг) — С. Или Select ->Circle Select. Я использую редко.
EM-only
Вообще, так как в любой мало-мальски нетривиальной геометрии ОЧЕНЬ много элементов, то и способов выбора в EM тоже гораздо больше, чем в OM. Все я перечислять не буду — проще заглянуть в Select (переключившись в EM), там есть режимы выделения, которые относятся только к геометрии. Используются редко, но порой очень выручают.
Базовые операции над элементами
Перенос, поворот, масштабирование работает так же, как и в OM.
Upd. Leopotam (взявший на себя роль строгого редактора моих опусов, за что ему спасибо) заметил, что origin — это только одна из возможных точек поворота. Доступны и другие, выбор можно сделать здесь:
Оперирование элементами
Опять же, геометрия — это, прежде всего, множество связанных(!) элементов. И возможных операций для них побольше, чем для объектов. Например, операция Subdivide (делит элемент на указанное количество частей). Основные операции отображены в панели по T. Все — в меню Mesh. Некоторые из них — контекстно-зависимы, учитывайте это (Subdivide бессмысленен для точки. Да и для объекта тоже — как разделить на равные части несимметричный объект?).
При вызове операции внизу в панели детальной настройки можно указать параметры операции.
Укажу здесь самые часто используемые мной операции:
- Экструзия — выберите элемент(ы) и нажмите E. Создает дубликат выделения, привязывает его к оригиналу и переносит выделение на дубликат. После чего выделение можно двигать. Сложно объяснить, проще попробовать.
Причина появления случайных дублей — остальные незавершенные операции можно откатить по Esc. Экструзия же — это 2 операции — создание геометрии и собственно ее перенос. По Esc отменяется только перенос, геометрия остается. Чтобы удалить ее — надо нажать Ctrl-Z.
Если вы заподозрили, что у вас в одном месте много ненужных точек насыпано — можно выделить этот регион и вызвать операцию «Remove doubles». Появившийся в области меню индикатор скажет вам, были ли ваши подозрения оправданы.
Хочу отдельно обратить внимание на то, что в EM доступно создание примитивов. При создании к текущей геометрии объекта добавится геометрия (и только) вновь созданного примитива.
Работа с нормалью
Также, при работе с геометрией порой возникают проблемы с нормалями. Чтобы понять текущую ситуацию, вам нужно будет просматривать нормали:
Рисунок 12. UI отображения нормалей. Слева — кнопки способа отображения, справа — длина вектора (в случае с хитрой геометрией помогает, если выкрутить на максимум — посмотреть, где пробьется).
И управлять ими — вкладка «Shading/UVs» (что логично, так как нормали нужны для освещения) панели по T.
Заключение
Используя вышеописанные приемы, можно за полминуты сделать такой же объект, как и на рисунке 3. Можете потренироваться. Операция удаления требует а) выделить удаляемое и б) нажать Delete (в случае геометрии вас могут спросить, что удалять. Если нужно удалить полигон, не трогая его ребра или же ребро, не трогая его точки — выбирайте вариант, где есть слово only):
Рисунок 13. Пример объекта.
Видео:Blender уроки от Blenderlands импорт svg в блендерСкачать
Создание труб и проводов в Blender с помощью кривых
Моделировать тонкие протяженные объекты вроде труб и проводов при создании сцен приходится достаточно часто – в интерьерных сценах, научных, технических или фантастических. Одним из самых простых и удобных способов создания подобных объектов – использовать кривые (curves).
Основным достоинством кривых является простота управления и редактирования: в любой момент можно менять форму кривой, передвигать ее точки, добавлять новые и удалять лишние. Плюс, работать приходится не с большим количеством точек меша, а, что гораздо удобнее, всего с одной-двумя точками кривой. Расчет сцены для рендера с кривыми так же производится быстрее, чем с мешами.
Простые провода
- Добавим в сцену кривую:
- shift + a – Curve – Bezier
- Перейдем в режим редактирования (TAB) и придадим форму кривой, перемещая, вращая и масштабируя ее точки.
- перемещение точки: g
- вращение: r
- добавление точки в конец кривой: выделить точку на конце – e
- вставка точки между двумя другими: выделить две точки – w – subdivide
- удаление точки или сегмента кривой: x или del
- дублирование точек и сегментов: shift + d
- соединение двух точек: f
- Осталось придать кривой объем:
- В окне Properties во вкладке Object Data установить:
- Shape:
- Fill – указать Full
- Geometry:
- Bevel
- Depth = 0.005 – Этот параметр как раз придает объем.
- Здесь же можно поднять значение параметра Resolution – он отвечает за плотность сетки т.е. насколько гладко будет выглядеть кривая внешне. Но вместо этого проще и удобнее перейти во вкладку модификаторов, добавить модификатор Subdivision Surface и управлять сглаживанием кривой через него.
- Bevel
- Shape:
- В окне Properties во вкладке Object Data установить:
Назначив кривой подходящий материал, получим готовый ровно уложенный провод:
- А теперь посмотрим, насколько легко этим управлять:
- Выделим две точки, образовывающие угол провода.
- w – Subdivide – указать количество разбиений равное 8
- И просто начнем передвигать и поворачивать полученные дополнительные точки.
- Выделим две точки, образовывающие угол провода.
В результате этих нехитрых манипуляций провод стал выглядеть гораздо интереснее:
Трубы
Трубы – это те же провода, просто чуть больше по диаметру, все преимущества работы с кривыми сохраняются и здесь.
- Добавим в сцену еще одну кривую.
- Придадим ей нужное положение, добавляя и перемещая точки.
- Зададим диаметр:
- Shape – Fill = Full
- Geometry – Bevel – Depth = 0.05.
- И назначим подходящий материал, например хромированный металл.
Произвольные сечения и обводка
Трубы и провода имеют круглое сечение, которое легко устанавливается регулировкой параметра Bevel – Depth. Однако очень часто нужно моделировать длинные объекты, имеющие произвольное сечение. Это может быть плинтус, короб для проводов, рельсы, балки и множество иных объектов, в процессе создания которых хотелось бы так же использовать легкость и гибкость построения объектов кривыми.
Для того, чтобы получить желаемое сечение, моделируемый объект должен состоять из двух кривых. Первая кривая – направляющая. Как и при моделировании труб, конечный объект будет сроиться вдоль нее. Вторая кривая – обводка. Она будет задавать форму сечения конечного объекта.
- Добавим в сцену 2 кривые, которые будут служить направляющими.
- Отредактируем их форму и расположение.
- Добавим им модификатор Subdivision Surface для сглаживания.
- Добавим в сцену кривую для создания формы обводки в виде “уголка”.
- Назовем ее: “Profile1”.
- Отредактируем ее форму так, чтобы она образовывала профиль необходимого нам сечения.
- Для получения прямого угла в нужной точке кривой необходимо изменить ее тип:
- Выделить нужную точку – v – Free
- После чего управляющие отрезки точки можно перемещать независимо друг от друга.
- Особое внимание нужно уделить расположению точек кривой относительно центра origin. Именно точка origin будет выстраиваться вдоль направляющей кривой при построении объекта.
- Немного уменьшим ее размер, итоговый “уголок” будет соответствовать размерам исходного профиля.
- Выделим первую из направляющих кривых.
- В окне Properties во вкладке Object Data
- в панели Geometry в поле Bevel Object
- указать созданную кривую профиля Profile1
- в панели Geometry в поле Bevel Object
- Если установить чекбокс Fill Caps в панели Geometry – на концах полученного объекта профиль будет закрыт.
- В окне Properties во вкладке Object Data
- Добавим в сцену кривую для создания формы обводки в виде “короба”.
- Назовем ее: “Profile2”.
- Как и для первого профиля придадим ей нужную форму относительно точки origin и отрегулируем размер.
- Выделим вторую направляющую кривую и укажем в поле Bevel Object профиль “Profile2”.
- Еще раз убедимся в замечательной гибкости нашего подхода к моделированию – сделаем на поверхности “короба” выемку. Если бы “короб” создавался из меша, пришлось бы вручную экструдировать точки по все его поверхности. Здесь же нужно лишь:
- Выделить кривую образующую профиль (Profile2) и в режиме редактирования изменить ее форму:
Сделанные изменения сразу же отражаются на итоговом “коробе”:
- Назначим готовым объектам материалы:
Ребра и переменный диаметр
Все объекты, рассматриваемые выше, по всей своей длине имеют одну и ту же толщину. А что делать, если необходимо смоделировать трубу с переменным диаметром? Путем несложных манипуляций с кривыми, такое тоже возможно.
- Для начала добавим в сцену направляющую кривую и расположим ее необходимым образом.
- Создадим кривую, которая будет отвечать за изменение диаметра на определенном участке:
- Назовем ее: “Taper”.
- Здесь опять нужно обратить внимание на размещение точек кривой относительно центра origin. Здесь расстояние от origin до точек кривой указывает на величину диаметра моделируемого объекта.
- Добавим в сцену еще одну кривую, которая будет состоять всего из двух точек, соединенных прямым отрезком. Из этой кривой мы и создадим итоговый объект.
- Установим диаметр кривой знакомым способом:
- Bevel – Depth = 0.01
- Добавим к кривой модификатор Subdivision Surface для сглаживания.
- В той же панели Geometry
- В поле Taper Object указать кривую “Taper”
- Установим диаметр кривой знакомым способом:
Таким образом мы получили участок трубы с переменным диаметром. Осталось применить к нему направляющую.
- Во вкладке модификаторов Modifiers
- Добавить для кривой модификатор Array и настроить параметры:
- Fit Type = Fit Curve
- Curve – указать направляющую кривую
- Добавить для кривой модификатор Curve:
- в поле Object – указать направляющую кривую
- Добавить для кривой модификатор Array и настроить параметры:
- Назначим получившейся трубе материал.
Заполнение направляющей или постоянное количество ребер?
Для построения труб с переменным диаметром характерны два случая:
- Как в рассмотренном выше примере – вся длина направляющей заполняется фиксированными сегментами. Количество сегментов заранее не известно, но рассмотренный способ всегда обеспечит полное заполнение направляющей по всей ее длине. Если длину трубы нужно увеличить, достаточно просто увеличить длину направляющей, дополнительные сегменты будут добавлены автоматически.
Пример экструдирования одной из крайних точек направляющей:
- Во втором же случае, характерным примером которого является гофрированная труба, количество сегментов на длину трубы должно оставаться постоянным. В этом случае при растягивании трубы сегменты тоже должны растягиваться.
- Создадим, как в примере выше 3 кривые:
- направляющую, назовем ее “Path2”
- основание для сегмента трубы “Segment2”
- и кривую изменения диаметра “Taper2”
- Для сегмента “Segment2” выполним операции для создания трубы по направляющей, как в предыдущем примере:
- Установим диаметр через Bevel – Depth = 0.2
- Установим изменение диаметра, указав в поле Taper Object кривую “Taper2”
- Для того, чтобы ребра полученной трубы напоминали классический “гофр”, сожмем сегмент вдоль его оси до получения хорошего результата.
- Добавим модификатор Subdivision Surface.
- Добавим модификатор Array с параметрами:
- Fit Type = Fixed Count
- Count = 30
- и модификатор Curve, указав в поле Object направляющую “Path2”.
- Выделим направляющую “Path2”:
- В окне Properties во вкладке Object Data в панели Shape установить два чекбокса:
- Stretch
- Bounds Clamp
- В окне Properties во вкладке Object Data в панели Shape установить два чекбокса:
- Создадим, как в примере выше 3 кривые:
Теперь, если перемещать или экструдировать точки направляющей, новые сегменты не добавляются, а имеющиеся растягиваются в соответствии с изменением длины направляющей:
Осталось расположить направляющую нужным образом и назначить трубе материал.
Видео:Уроки Blender & Figma | 3D иконка из SVGСкачать
Как визуализировать 3D-модели в виде векторной графики SVG? (плоская проекция)
Это изображение ( оригинал SVG из Википедии , общественное достояние) было создано с использованием следующей процедуры:
- Создать 3D-модель в Google SketchUp
- Экспортировать как PDF
- Импорт в Inkscape
- Сохранить как SVG
Есть ли простой способ создать такой SVG с программным обеспечением, которое (изначально) работает на Ubuntu? ( Пантограф , плагин Blender, имеет только неработающие ссылки для загрузки; VRM , другой плагин Blender, работает с Belnder 2.4x, но не с Blender 2.6x.)
У вас есть два варианта:
Опция 1
Первый требует недавних сборок Blender (доступно от Graphicall ), которые теперь могут использовать движок фристайла.
Freestyle — это программное обеспечение для нефотореалистичного рисования линий с 3D-сцен.
В Freestyle существует плагин SVGWriter , который может записывать сцены Blender в SVG. Инструкции по использованию доступны на этой странице. Ниже приведен пример его вывода:
Оригинальный рендер Blender:
Фристайл SVG выход:
Фристайл все еще находится в разработке, и вы можете следить за его прогрессом в их блоге .
Средство записи SVG неподвижных изображений в SVGWriter в настоящее время отображает только одно изображение, т. Е. Вы не можете отобразить каждый кадр в SVG. Я переписал скрипт, чтобы сделать это, и автор сообщил мне, что моя модификация будет интегрирована в основную загрузку в будущем обновлении. Вот модификация
Вариант 2
Второй вариант позволяет только визуализировать кривые Безье. Во-первых, вы должны установить svgwrite для Python 3. Вы можете сделать это, зайдя в папку и запустив
Вам может понадобиться скопировать папку svgwrite в .blender / version_number / python / lib / python3.2 /
Затем вам нужно скачать SVGwriter для Blender. Установите Git и затем запустите
Внутри загруженной папки вам нужно будет скопировать скрипты Python (заканчивающиеся на .py) и перезаписать те, которые находятся либо в ./blender/[version_number]/scripts/addons/io_curve_svg/, либо в / usr / lib / blender / scripts / addons / io_curve_svg /.
Наконец, в Blender нарисуйте кривую Безье и перейдите в Файл> Экспорт> SVG. Вот пример вывода
Оригинальная кривая Блендера
SVG выход. Толщина линии была увеличена для ясности
🎦 Видео
Конвертация картинки в 3D | Узор из картинки в 3D модель | Лайфхаки 3D | BlenderСкачать
34. Blender. Импорт SVG | Сосуд (ёмкость) из кривойСкачать
Как перевести SVG изображение в 3D объект? #shorts #blender #3d #logo #designСкачать
Вся суть уроков по blender 3dСкачать
Как быстро создать рельеф из вектора в Blender 3DСкачать
Превращаем картинку в 3д модификаторамиСкачать
3D logo в blender (SVG import) Blender 3d УрокиСкачать
Blender Объекты По Кривой | Blender Массив По Кривой | Blender CurveСкачать
Ноды в Blender за 15 минутСкачать
Простая анимация в #blenderСкачать
BLENDER 3D | Всё о КРИВЫХ (CURVES)Скачать
Основы работы в Blender за 10 минут.Скачать
За 10 минут все о правильной работе bevel в Blender 3.2 и вышеСкачать
Студенты российского вуза разработали вечный двигатель #вечныйдвигатель #изобретенияСкачать
ВСЁ ПРО ВЕКТОРНУЮ ГРАФИКУ ДЛЯ ХУДОЖНИКА! Рисуем в векторе в ФотошопеСкачать