Как проверить 3д модель на ошибки blender

Доброго дня дорогой читатель 3Dtoday.ru!:)

Не так давно ко мне обратился человек с помощью посмотреть купленные 3D модели на наличие возможности распечатать их на 3D принтере. Просмотр полученных объектов в 3D редакторе Blender дал мне понять, что все приобретенные модели были условно «бракованными». Почему условно? 3D модели в наше время изготавливаются не только для 3D принтера, но для применения на фрезерном станке (CNC), а вот технология изготовления необходимой модели может кардинально отличаться, и как правило вот такие модели требуют доработки, основная и главная причина – это неманифолдная (не закрытая/не герметичная) геометрия 3D объекта, вторая причина – наличие пересечения граней. Первая вышеуказанная причина является критической, вторая – не так критична, но всё же может сбить столку 3D принтер при печати. При изготовлении 3D моделей для печати я стараюсь избегать наличие не то, что первого, но и второго фактора, т.е. стремлюсь сделать объект цельным, а не из объединения множества элементов. А что делать, если уже есть вот такая условно «бракованная» модель, и тут в наличии два варианта – 1) обратиться за услугой к опытному 3D моделлеру 2) попытаться решить эту проблему самостоятельно, хочется отметить, что исправление чужой 3D модели это довольно нудный и тяжелый процесс, и не всегда исправить что-то готовое удаётся проще, чем заново изготовить. Это зависит сложности полигональной сетки самого объекта, ну и от грамотности того человека, который создавал эту модуль. Кстати говоря 3D модели на выходе даже очень дорогих 3D сканеров очень сложно поддаются редактированию ;).

Давайте остановимся на втором варианте. Я расскажу, как это сделать в программе Blender. Итак, с чего следует начать, первым делом конечно же идём на сайт blender.org и качаем новейшую версию программы. После установки, запускаем Blender и идём в свойства, чтобы поменять язык интерфейса на родной «русский»,

Проверка на пригодность 3D моделей к печати, используя функциональность прогрыммы Blender 3D

дальше двигаемся на вкладку с дополнениями и включаем «3D Print Toolbox»,

Проверка на пригодность 3D моделей к печати, используя функциональность прогрыммы Blender 3D

закрываем окно с настройками и выделаем все объекты по клавише «A», дальше нажимаем «Х» для удаление стандартного кубика, светильника и камеры, поскольку они нам не будут нужны. Импортируем в сцену необходимый stl файл (файл -> импортировать -> Stl), я же загружу не свой файл, а один из тех, что мне дали на редактирование. После загрузки сверху можно прочитать информацию о объекте, это количество полигонов, вершин, граней, если объектов много, то и их количество. В моём случае это один объект с количеством треугольников 1310228, конечно это очень много, необходимо «облегчить» его для работы с помощью модификатора «Аппроксимация». Вид модели для удобства я тоже изменил, в N-панели (вызывается по клавише N) во вкладке «Затенение» указал быстрый материал (matcap), также поменял в той же панели (для удобства отображения) значение объектива на 135 мм.

Проверка на пригодность 3D моделей к печати, используя функциональность прогрыммы Blender 3D

Надо помнить и знать, что модификатор применяется только к выделенному объекту. В соотношении ставим число 0.5, т.е. уменьшаем количество полигонов на 50%, и нажимаем на кнопку «Применить», в моём случае я повторил данный шаг несколько раз — постепенно снижаю количество полигонов и смотрю на объект, чтобы качество детализации не «разрушилось». Красота! С облегченной моделью намного проще работать моему компьютеру и мне 8) ,снизил количество треугольников до 163778. Теперь перейдём в режим отображения – перспектива (клавиша 5 на цифровой клавиатуре) и попробуем приблизиться от модели или отдалиться от неё колёсиком мыши, у меня при этом модель начала пропадать из области видимости, это говорит о её огромном размере … для корректного отображения нажимаем клавишу «S» и уменьшаем масштаб двигая мышку «назад-вперед», после нажимаем ЛКМ (левую клавишу мыши, и в дальнейшем ПКМ — правая клавиша мыши). Нажмём клавишу «.» на цифровой клавиатуре, чтобы приблизиться к выделенной 3d модели. Сохранимся на всякий случай (сочетание клавиш «Ctrl» + «S» или просто «файл» -> «сохранить»).

Итак, после того, как модель готова к дальнейшему редактированию наступило время её оценки на «бракованность». Для этого переходим в режим редактирования по клавише «Tab» и в «T-панели» (вызывается клавишей «T») слева во вкладке «3D- печать» выполняем включаем проверки на «Цельность» и «Пересечения». Наличие значения отличные от «0» в выводе напротив «Non Manifold Edge» и «Bad Config. Edges» говорит, что с моделью что-то не так и её надо редактировать.

Проверка на пригодность 3D моделей к печати, используя функциональность прогрыммы Blender 3D

«Non Manifold Edge» показывает количество ребер, которые лежат на границах «дырок», а второе значение говорит о количестве ребер тех полигонов, которые имеют вывернутые нормали. Если нажать на «Non Manifold Edge» или «Bad Config. Edges», то высветятся соответствующие ребра на модели. Со второй проблемой справится проще всего: надо перейти в режим редактирования граней («Ctrl» + «Tab» и выбрать «Грань»), выделить все грани объекта по клавише «A» и нажать на сочетание клавиш «Ctrl» + «N», программа сама выправит все нормали как надо, при необходимости можно ещё попробовать нажать на галку «Вовнутрь», чтобы изменить направление всех имеющихся нормалей при необходимости. Направление нормалей можно посмотреть если в «N-панели» во вкладке «Отображение полисетки» выбрать в параметры ‘нормали’ картинку кубика с выделенной гранью. С первой же ошибкой – намного сложнее. Проверка на пересечение показала, что они есть, и скорее всего это вызвано наличием множества отдельных элементов в объекте, или наличием кривой сетки, как на следующем рисунке.

Проверка на пригодность 3D моделей к печати, используя функциональность прогрыммы Blender 3D

В этом примере имеем три пересекающихся друг с другом грани, а теперь представьте, что у нас несколько сотен тысяч полигонов в одном объекте и попробуйте их теперь найти ;))), благо есть кнопка «Intersect Face» в «T-панели» которая быстро нам определит их место положение, и чтобы к ним перейти достаточно нажать «.» на цифровой клавиатуре, если таких выделенных граней несколько, то надо поочередно снимать с выделения определенные вершины (необходимо нажать клавишу «С», определить колесиком мыши область применения и нажимать на выделенные грани, вершины или ребра колёсиком мыши (именно нажимать, а не крутить), а после опять нажать «.» для фокусировки на выделенном элементе. Чтобы исправить проблему как в случае с предыдущим примером, нужно лишь выделить проблемную вершину в режиме выделения вершин («Ctrl» + «Tab» -> вершина) и оттащить с помощью клавиши «G» в пространстве так, чтобы наши грани перестали пересекаться (если нажать G +Х, то перемещение будет происходить только по оси Х, аналогично с другими осями Y и Z). Если наш объект состоит из множества элементов, их грани тоже будут между собой пересекаться, но как показывает практика, и такие модели напечатать можно, просто необходимо «закрыть» элементы, входящие в них, т.е. сделать их манифолдными. Работать с отдельными элементами намного проще, чем с несколькими сразу, поэтому советую сначала разделить эти элементы в отдельные объекты. Для этого выделяем любой полигон элемента входящего в объект и нажимаем клавишу «L», в результате у нас выделились все полигоны, принадлежащие данному элементу, после нажимаем «P» (Разделение -> выделение -> «Enter») и наш элемент стал отдельным объектом. Аналогично надо проделать со всеми элементами объекта. Там, где будет трудно добраться до полигонов какого-нибудь элемента, надо нажить «Z» (тип затенения – «Каркас») .

Теперь выходим из режима редактирования по клавише «Tab» выбираем один из полученных объектов и перемещаем его в отдельный слой по клавише «M», например, тот, что пониже.

Проверка на пригодность 3D моделей к печати, используя функциональность прогрыммы Blender 3D

Переходим в это слой. Теперь мы можем с ним работать, в первую очередь в режиме редактирования (Tab) объекта проверим его на манифолдность и пересечения граней. Я изменил вид материала matcap, чтобы наши ребра было хорошо видно на рисунке. Видим, что объект не герметичный, эти дыры надо закрыть, и, чтобы сделать это, снимаем все выделения клавишей «A», и с прижатыми клавишами «Alt» + «Shift» щелкаем по одной из ребер на границе любой из «дырок» ПКМ и закрываем её полигонами клавишами «Alt» + «F».

Проверка на пригодность 3D моделей к печати, используя функциональность прогрыммы Blender 3D

Аналогично проделываем со всеми «дырками», которые есть в данном объекте. Если где-то выскакивает ошибка «Нет заполненных граней» (отображается сверху в поле информации) при заполнении «дырок» полигонами, значит были не выделены все ребра по «Alt» + «Shift», это обусловлено кривой геометрией объекта. Если приблизиться можно увидеть вот такие кривые грани,

Проверка на пригодность 3D моделей к печати, используя функциональность прогрыммы Blender 3D

да-да это грани, а не рёбра объекта, их надо выделить и удалить клавишей «Х» (удалить -> грани). После того как все дырки «Закрыты» не поленитесь снова проверить объект на «Цельность» и «Пересечения». У меня всё хорошо :).

Проверка на пригодность 3D моделей к печати, используя функциональность прогрыммы Blender 3D

Теперь его надо переместить на другой слой, назовем этот слой хорошим, потому как там будут находится «не бракованные» объекты. Для этого выходим из режима редактирования и перемещаем этот объект в хороший слой по клавише «М», точно также как и в предыдущий раз.

Все эти шаги необходимо сделать со всеми объектами в сцене. Случаи бывают абсолютно разные, но цель одна — сделать объект цельным и зачастую, чтобы прийти к результату нужно включить свою изобретательность и смекалку. К примеру, в таком случае:

Проверка на пригодность 3D моделей к печати, используя функциональность прогрыммы Blender 3D

я соединил «мостом» соседние ребра клавишей «F», чтобы образовалось замкнутое кольцо, клавишами «Ctrl» + «T» сделал триангуляцию четырехугольника, и закрыл верхнюю «дырку» описанным выше случаем. Бывают случаи и такие,

Проверка на пригодность 3D моделей к печати, используя функциональность прогрыммы Blender 3D

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

Проверка на пригодность 3D моделей к печати, используя функциональность прогрыммы Blender 3D

а вот с простыми случаями, описанными выше способен справится практически любой человек.

После того как все объекты исправлены и находятся в «хорошем» слое, необходимо выделить их («A»), клавишами «Ctrl» + «J» объединить в один, опять проверить на «целостность» (проверка на «пересечение» даст положительный результат, из-за наличия множества элементов в объекте, чтобы такого не было, объект надо изначально делать монолитным, в данном случае его проще сделать по-новому, чем править уже существующую полисетку, но будем надеется, что данная ошибка не повлияет сильно на результат 3D печати) и экспортировать 3D модель в Stl формат по имеющейся опции плагина «3D-печать» в «Т-панели» (см. последний рисунок).

Не забываем сохраняться! Удачного моделизма, спасибо за внимание :) !

p.s. во избежание просьб на поделиться моделькой — не могу, поскольку а) куплена другим человеком б) она не моя.

In addition to the mesh lint answer I provided above, Blender also has a couple of functions that can help solve common problems. I recently switched to Blender for game work and these are the functions I have found to be invaluable for preparing mesh for export.

Remove duplicates / merge vertices: To remove duplicate faces, vertices or edges in a mesh, enter Edit mode, select everything and press W to bring up the specials menu. From this menu select Remove Doubles (or press 4) and any duplicate elements will be removed.

Note: this function will also merge vertices that are in the same spot or very close together; the threshold can be configured by changing the Merge distance setting located in the Last Operator panel in the Toolshelf (or press F6 after operation executing).

Select Linked: You can select all parts of a mesh that are linked together by selecting one part and pressing Ctrl+L. If you then invert the selection with Ctrl+i, you can find any unwanted loose polygons.

Select Loose Geometry: This will select single mesh elements that are not connected to others, such as floating vertices, edges and faces. Note that you need to be in vertex edit to select vertices, edge to select edges and face to select floating faces, and it won’t work if there is more than one element connected together, which is why I prefer Select Linked.

Apply Transform: You can apply (or freeze) any transform on a mesh by pressing Ctrl+A and selecting the desired option. This can help to fix problems with scale / rotation after export.

Move Pivot: You can move the object pivot with Shift+Ctrl+Alt+C. The pivot can be moved to the 3D Cursor, which can be moved exactly with Shift+S or by entering a position in the Properties panel (N) in the 3D view. This can fix problems with a model being in an unexpected position or rotation after exporting.

In addition to the mesh lint answer I provided above, Blender also has a couple of functions that can help solve common problems. I recently switched to Blender for game work and these are the functions I have found to be invaluable for preparing mesh for export.

Remove duplicates / merge vertices: To remove duplicate faces, vertices or edges in a mesh, enter Edit mode, select everything and press W to bring up the specials menu. From this menu select Remove Doubles (or press 4) and any duplicate elements will be removed.

Note: this function will also merge vertices that are in the same spot or very close together; the threshold can be configured by changing the Merge distance setting located in the Last Operator panel in the Toolshelf (or press F6 after operation executing).

Select Linked: You can select all parts of a mesh that are linked together by selecting one part and pressing Ctrl+L. If you then invert the selection with Ctrl+i, you can find any unwanted loose polygons.

Select Loose Geometry: This will select single mesh elements that are not connected to others, such as floating vertices, edges and faces. Note that you need to be in vertex edit to select vertices, edge to select edges and face to select floating faces, and it won’t work if there is more than one element connected together, which is why I prefer Select Linked.

Apply Transform: You can apply (or freeze) any transform on a mesh by pressing Ctrl+A and selecting the desired option. This can help to fix problems with scale / rotation after export.

Move Pivot: You can move the object pivot with Shift+Ctrl+Alt+C. The pivot can be moved to the 3D Cursor, which can be moved exactly with Shift+S or by entering a position in the Properties panel (N) in the 3D view. This can fix problems with a model being in an unexpected position or rotation after exporting.

Отыщите незакрытые края

Если ваша 3D-модель состоит из нескольких объектов или полигональных сеток, в первую очередь, вы должны убедиться в том, что края каждой части закрыты, другими словами, водонепроницаемы. Для этого вам нужно зайти в режим редактирования, нажимая А (один раз, чтобы выбрать любые грани, два раза для отмены выбора), далее нужно нажать комбинацию клавиш ctrl-alt-shift-M (на компьютерах Mac — ctrl-opt-shift-M).

После того, как вы нажмете эту комбинацию клавиш, все незакрытые грани будут выделены. Зачастую, чтобы исправить эту ошибку нужно создать новую поверхность с 3-4 гранями (клавиша F). Иногда встречаются блуждающие грани, которые либо ни к чему не привязаны, либо соединены только с одной вершиной края. Зачастую их можно спокойно удалить, если только они не были сделаны специально. К примеру, эти грани могут использоваться для придания модели определённой формы при помощи модификатора подповерхностей (Subsurf modifier). В таком случае, вам нужно будет сперва применить этот модификатор, и лишь потом удалить ненужные грани. Кроме того, не стоит забывать и о тех незакрытых гранях, которые являются частью пересекающихся поверхностей.

Если у вашей модели есть 3-4 прикрепленных многоугольника, которые программа воспринимает, как незакрытые, но вместе с тем говорит, что была создана поверхность, вам нужно удалить эту поверхность и попробовать воссоздать ее. Более того, осмотрите края всех тех граней, которые были обозначены, как незакрытые. Возможно, некоторые из них неправильны: не относятся к полигональной сетке или созданы в ошибочном направлении. В таком случае, вам придётся удалить этот блок и воссоздать его вручную.

Совет: скройте геометрию, чтобы сосредоточиться на незакрытых областях

3D печать, 3D модель, Blender

Существует один приём, который весьма упрощает всю работу — вам нужно выделить незакрытые зоны, нажимая несколько раз ctrl. Так, вы сможете выделить не только незакрытые грани, но и области вокруг них. Далее нажмите shift-H, чтобы скрыть другие грани. Таким образом, закрытые части модели будут спрятаны, и вам будет гораздо легче устранить все недоработки.

Очистка: объедините полигональные сетки, используя булевские переменные (Booleans).

3D печать, 3D модель, Blender

Как только все полигональные сетки будут закрыты, убедитесь в том, что каждая из них представляет отдельный объект. Вы не сможете применить булевские переменные к полигональным сеткам, которые относятся к одному и тому же объекту. В то же время, существует возможность разделить сетки, выбрав все ее грани и нажав Р. Далее выберите одну вершину, после чего, удерживая ctrl, выделите все другие. Чтобы отделить все полигональные сетки одного объекта, нажмите Р и выберите опцию «All Loose Parts».

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

Откройте копию файла и выберите каждый объект по одному за раз. В режиме объекта примените все нужные модификаторы. Далее перейдите в режим редактирования, нажав клавишу А один или два раза, чтобы выбрать все грани. Затем нажмите ctrl-T для триангуляции всех поверхностей. Непонятно, с чем это связано, но Blender лучше работает с булевскими переменными, если полигональные сетки прошли триангуляцию.

Снова вернитесь в режим объекта, выделите 2 взаимно пересекающиеся полигональные сетки и нажмите w. Затем выберите опцию Union, после чего сетки объединятся (это действие не удаляет исходники). Процесс объединения может занять некоторые время. Как только он завершится, выберите 2 исходных объекта, которые были объединены, и либо переместите их на другой слой, либо вообще удалите .

Выберите новый, объединённый объект, перейдите в режим редактирования, снимите выделение с граней (нажать клавишу А 1-2 раза), далее выделите незакрытые области — ctrl-alt-shift-M. Исправьте эти ошибки в режиме редактирования, это будет довольно просто. Часто объединение полигональных сеток решает проблему незакрытых зон, но не всегда. Поэтому рекомендуем все же проверить свою модель. В противном случае, при дальнейшем объединении сеток, в которых есть незакрытые области, у вас могут возникнуть проблемы. Проверяйте это КАЖДЫЙ РАЗ. После этого выделите все сетки и снова проведите триангуляцию. В результате вы получите единую сетку с закрытыми гранями, прошедшую триангуляцию. Такая сетка полностью готова к дальнейшему объединению, если оно необходимо.

Если у вас 2 полигональных сетки, у которых несоизмерима плотность граней, как, например, в случае, когда округлая сетка объединяется с кубом, у которого 8 вершин, выполняется подразделение той части, где меньше всего вершин. Затем сетку триангулируют. По некоторым причинам Blender плохо справляется с таким типом объединений. Процесс может занять несколько часов, при этом, не всегда удаётся получить желаемый результат.

Сохраняйтесь каждый раз после объединения и лишь потом устраняйте незакрытые области.

Завершение: установите размер своей модели и экспортируйте файл.

Как только вы разберётесь со всеми пересекающимися сетками и решите проблемы незакрытых зон, установите для своей модели нужный размер. Обратите внимание: 1 единица размера в Blender равна 1 мм.

Проверьте строку состояния на предмет количества поверхностей (должно это выглядеть примерно так: Fa:123456 – число возле индекса Fa – то, что вам нужно). Если у вас больше 500 000 треугольников, используйте инструмент Polygon Reducer Script, который найдете в меню Mesh — Script. Он позволит сделать количество поверхностей меньше 500 000.

3D печать, 3D модель, Blender

Затем разверните объект на 90° по оси X. Кстати, в Blender верхняя ось — Z.

Теперь, наконец-то, экспортируем файл в формат STL и он полностью готов для 3D-печати!

  • В этой теме 11 ответов, 2 участника, последнее обновление 5 лет, 1 месяц назад сделано supermaximus.

Просмотр 12 сообщений — с 1 по 12 (из 12 всего)

  • Автор

    Сообщения

  • 15.11.2017 в 16:41

    #16292

    Добрый день Артем и форумчане.
    Подскажите пожалуйста лучший способ исправления моделей после 3d сканирования.
    Скан выглядит просто ужасно, захватило пол который нужно удалять, куча вмятин.
    Фото прилагаю. Спасибо.
    Image

    15.11.2017 в 17:07

    #16293

    Выделить лишнее и удалить. Лучше не придумаешь :)

    Нет никаких лучших способов и волшебных кнопок. Терпеть лаги в режиме редактирования если ПК не за 2000$ и постепенно доводить модель до ума. Можно еще модификатор Decimate накинуть для простоты жизни ПК и своим нервам.

    15.11.2017 в 17:25

    #16294

    Скажите Артем, а как внизу модели огромную дыру заделать? В скане же нет топологии. Беспорядочный набор треугольников. Я пробовал в эддоне 3d printing через make manifold. Ужасно вышло.

    15.11.2017 в 17:26

    #16295

    15.11.2017 в 18:21

    #16297

    Хороший гайд.

    По поводу заполнения отверстий, я бы воспользовался инструментом Fill Holes.

    15.11.2017 в 18:38

    #16298

    Спасибо, буду пробовать. Отпишусь что получилось.

    01.12.2017 в 16:55

    #16381

    Fill Holes в blender создает всего один полигон, точно так же как если бы мы нажали F. Этот вариант не подходит для скульптинга. Нужно равномерно заполнить дыру треугольниками, точно так же как по всей модели. Долго я пробовал разный софт. Лучше всего с треугольными мешами справляется программа Meshmixer от Autodesk. Она бесплатная. Позволяет заполнять дыры, обрезать модель, делать ретопологию, правда опять же в треугольниках, исправлять ошибки. В ней даже режим скульптинга есть. Но к сожалению, с 4х угольниками она работать не умеет. Исправил модель именно в ней. Добавил материал в blender. Для визуализации подошло. Но задача преобразовать в 4х угольники и сделать ретопологию по прежнему стоит.
    Пробовал метод shrinkwrap, который применяется в примере по ссылке выше. Результат оказался не очень. Такие новости. Хочу опробовать программу 3d coat, которая так же входит в программу обучения 3d графике на многих курсах, в том числе на 3dmaya.com.ua, который у Вас на сайте рекламируется. Вроде она неплохо справляется с ретопологией с преобразованием в 4х угольники. Артем, не сталкивались с 3d coat? Зачем эту программу вообще в курсы включают?

    01.12.2017 в 17:24

    #16382

    Кстати в ролике Andrew Price о его продукте The rocks essentials, ретопологию отсканированных камней он делал именно в 3d coat.

    04.12.2017 в 15:43

    #16391

    Из многоугольника запросто можно сделать массу мелких треугольников.

    А касательно софта, это как выбор среди девушек. Кому-то блондинки, кому-то по-больше, кому-то по умнее и т.д.

    Если взять весь ворох современного 3D-софта, то наберется пара десятков возможностей, которые есть у одного и нет у других. Все остальное одно и тоже, только в профиль. Где-то быстрее, где-то удобнее, а где-то через аддон.

    На вкус и цвет фломастеры разные :)

    06.12.2017 в 13:49

    #16402

    Я ищу быстрый и качественный метод ретопологии с минимальным вмешательством человека. Попробовал zbrush. Есть у него zremesh для автоматической ретопологии с возможностью корректировки кривыми и цветами. На первый взгляд работает великолепно. Я уже обрадовался. Да не тут то было. После ретопологии и импорте в блендер обнаружилось что потоки ребер имеют спиралевидную и не всегда замкнутую форму. Тоесть никакую разверту в такой модели произвести нельзя. Попробовал использовать zremeshguides — это кривые, направляющие потоки. Если им выставить силу в 100%, то потоки в местах кривых будут точно повторять их форму. Вроде получилось. Стал опять править модель в blender. И опять, там где нет кривых, незамкнутые спиралевидные потоки ребер. Там где есть, все отлично. Тоесть добавить новый loop cut невозможно. Не пойму, или это я такой …, или хваленый zremesh криво работает. Артем, Вы пользовлись zremesh в zbrush? Есть что сказать?

    06.12.2017 в 14:05

    #16403

    Zbrush у меня пока на стадии освоения и знаю я его слабенько, и его Zremesh действительно очень крут, но не идеален. Пока еще не создали софта, который бы делал ретопологию за нас. Все эти чудеса можно использовать как базу/основу, а дальше все ручками.

    Я всегда делаю ретопологию стандартным добавлением вершин, одна за другой. На персонажа уходит 2-3 дня, но зато результат такой, как хочется, ведь каждую вершину ты расположил там, где тебе было это нужно.

    Используй аддоны для Blender, используй Zbrush… все что угодно, но толковых результатов ты получать не будешь. Всегда придется править руками что-то.

    06.12.2017 в 15:36

    #16421

    Да, Вы правы. Делать ретопологию вручную — самый корректный метод. Только у меня на это уйдет минимум неделя. И то если получится, так как нет опыта.

  • Автор

    Сообщения

Просмотр 12 сообщений — с 1 по 12 (из 12 всего)

  • Для ответа в этой теме необходимо авторизоваться.

Авторизация

blender course

cycles-book

eevee-book

Рубрики

  • Анимация и риггинг
  • Загрузки
  • Материалы и текстуры
  • Моделирование и скульптинг
  • Новости и обзоры
  • Основы Blender
  • Рендеринг и освещение
  • Симуляция и частицы
  • Скриптинг на Python
  • Создание игр в Blender

mod-book

freestyle-book

3d-printing-with-blender

In addition to the mesh lint answer I provided above, Blender also has a couple of functions that can help solve common problems. I recently switched to Blender for game work and these are the functions I have found to be invaluable for preparing mesh for export.

Remove duplicates / merge vertices: To remove duplicate faces, vertices or edges in a mesh, enter Edit mode, select everything and press W to bring up the specials menu. From this menu select Remove Doubles (or press 4) and any duplicate elements will be removed.

Note: this function will also merge vertices that are in the same spot or very close together; the threshold can be configured by changing the Merge distance setting located in the Last Operator panel in the Toolshelf (or press F6 after operation executing).

Select Linked: You can select all parts of a mesh that are linked together by selecting one part and pressing Ctrl+L. If you then invert the selection with Ctrl+i, you can find any unwanted loose polygons.

Select Loose Geometry: This will select single mesh elements that are not connected to others, such as floating vertices, edges and faces. Note that you need to be in vertex edit to select vertices, edge to select edges and face to select floating faces, and it won’t work if there is more than one element connected together, which is why I prefer Select Linked.

Apply Transform: You can apply (or freeze) any transform on a mesh by pressing Ctrl+A and selecting the desired option. This can help to fix problems with scale / rotation after export.

Move Pivot: You can move the object pivot with Shift+Ctrl+Alt+C. The pivot can be moved to the 3D Cursor, which can be moved exactly with Shift+S or by entering a position in the Properties panel (N) in the 3D view. This can fix problems with a model being in an unexpected position or rotation after exporting.

Blender это замечательный бесплатный 3d пакет, который делает возможным и доступным осуществление гигантского количества проектов, и, как человек, прошедший путь от абсолютного новичка в 3d до преподавателя данной программы в учебном центре «Специалист» в Москве, я могу поделиться несколькими типами, которые помогут преодолеть несколько несложных, но каверзных моментов, которые хоть и очень просты, но далеко не очевидны, и могут заставить просидеть несколько часов в поиске решения проблемы.

Перевод программы и подсказок

Перевод программы и подсказок — Blender, как и почти все программы является англоязычной, но в настройках (preferences) мы можем сделать его интерфейс русскоязычным. Переводить его полностью на русский язык я бы не советовал, т.к. названия всех терминов и команд почти необходимо знать на английском языке для дальнейшего развития, и, так или иначе, много из них заимствовано великим и могучим русским языком и используется всеми и повсеместно (нормали, фейсы, вертексы и т.д.). А вот перевод подсказок действительно может упростить процесс входа в программу и снять много вопросов в процессе их появления. Окошко с подсказкой возникает при наведении курсора мыши на любой элемент blender.

  • Для того чтобы активировать подсказки, если они не работают, нужно зайти в меню Edit-Preferences-Interface. Поставить галочку напротив Tooltips.

  • Для активизации перевода подсказок в том же разделе открываем выпадающее меню Translation, ставим русский язык, и галочку напротив Affect Tooltips.

Забагивание области просмотра

Следующая проблема с которой я постоянно сталкивался это забагивание области просмотра — при попытке панорамировать видприблизитьсяотдалиться от объекта, blender упорно отказывается это делать, точнее делает это очень медленно . Тут помогает функция Frame, которая перезахватывает выбранный объект во вьюпорте и данная проблема устраняется.

  • Находится эта функция в меню View-Frame selected.

Clipping

Некст проблема это clipping — при попытке работать с объектом на близком расстоянии область обрезает часть нашего объекта, и мешает нам работать.

  • устраняется заходом в боковое меню нажатием кнопки N, и во вкладке view в выпадающем меню view, уменьшаем значение Clip Start (Например 0,001)

Нормали

Следующая проблема это нормали — будь то незнание того — что это? или незнание того — как их привести в правильное положение. Проблемы с нормалями возникают например при попытке запечь карты деформации, во время скульптинга, при попытке нажать Shade smooth и тд.

  • -Нормали это вектор перпендикулярный плоскости полигона, который указывает блендеру куда ему отражать свет. Направлен этот вектор только в одну сторону, то есть если нормаль вашего полигона развернута внутрь объекта, как часто случается в blender, то из за этого у вас будут проблемы на каком-то этапе работы.

  • Как мы можем видеть на данном изображении — все нормали объекта, кроме трех выделенных, повернуты наружу, а три выделенные — внутрь. При обычном режиме затенения Shade flat — этого не видно, но если я включу режим затенения shade smooth, то результат будет совсем иным.

  • Проверить направление нормалей своего объекта я могу перейдя в edit mode, и в выпадающем меню overlays поставить галочку напротив Face orientation . Тогда все нормали повернутые наружу будут отображаться синим цветом, а направленные внутрь — красным. В этом же меню Overlays я могу включить отображение нормалей как векторов.

  • Развернуть нормали нам помогут функции Mesh-Normals-Flip (или recalculate outside)

  • Flip — развернет выделенные полигоны.

  • Также мы можем выделить все полигоны объекта (шорткат А) и нажать Recalculate outside чтобы blender автоматически пересчитал все наши полигоны наружу.

  • За направлением нормалей лучше следить.

Двойные вертексы

Двойные вертексы — часто в процессе моделирования и оперирования командой Extrude могут создаться вертексы, которые стоят друг в друге и будут портить нашу топологию, это может нам аукнуться на этапах UV развертки, создания рига и тд. Чтобы избежать этого, на промежуточных этапах работы можно выделять всю свою модель в режиме работы с вершинами и нажимать Mesh-clean up-merge by distance. Двойные вертексы будут объединяться.

Карты нормалей

Карты нормалей запеченные в других программах (substance painter, Zbrush) дают странный результат в Blender .

  • Проблема в том что карты нормалей, в вышеперечисленных, и не только, программах, запекаются c использованием DirectX, а blender работает с OpenGL. Если говорить простым языком то нам нужно развернуть зеленый канал на карте нормалей. Делается это следующим образом:

Надеюсь, что данный пост поможет людям, осваивающим блендер, проскочить несколько часов поиска решения проблем!

Blender это замечательный бесплатный 3d пакет, который делает возможным и доступным осуществление гигантского количества проектов, и, как человек, прошедший путь от абсолютного новичка в 3d до преподавателя данной программы в учебном центре «Специалист» в Москве, я могу поделиться несколькими типами, которые помогут преодолеть несколько несложных, но каверзных моментов, которые хоть и очень просты, но далеко не очевидны, и могут заставить просидеть несколько часов в поиске решения проблемы.

Перевод программы и подсказок

Перевод программы и подсказок — Blender, как и почти все программы является англоязычной, но в настройках (preferences) мы можем сделать его интерфейс русскоязычным. Переводить его полностью на русский язык я бы не советовал, т.к. названия всех терминов и команд почти необходимо знать на английском языке для дальнейшего развития, и, так или иначе, много из них заимствовано великим и могучим русским языком и используется всеми и повсеместно (нормали, фейсы, вертексы и т.д.). А вот перевод подсказок действительно может упростить процесс входа в программу и снять много вопросов в процессе их появления. Окошко с подсказкой возникает при наведении курсора мыши на любой элемент blender.

  • Для того чтобы активировать подсказки, если они не работают, нужно зайти в меню Edit-Preferences-Interface. Поставить галочку напротив Tooltips.

  • Для активизации перевода подсказок в том же разделе открываем выпадающее меню Translation, ставим русский язык, и галочку напротив Affect Tooltips.

Забагивание области просмотра

Следующая проблема с которой я постоянно сталкивался это забагивание области просмотра — при попытке панорамировать видприблизитьсяотдалиться от объекта, blender упорно отказывается это делать, точнее делает это очень медленно . Тут помогает функция Frame, которая перезахватывает выбранный объект во вьюпорте и данная проблема устраняется.

  • Находится эта функция в меню View-Frame selected.

Clipping

Некст проблема это clipping — при попытке работать с объектом на близком расстоянии область обрезает часть нашего объекта, и мешает нам работать.

  • устраняется заходом в боковое меню нажатием кнопки N, и во вкладке view в выпадающем меню view, уменьшаем значение Clip Start (Например 0,001)

Нормали

Следующая проблема это нормали — будь то незнание того — что это? или незнание того — как их привести в правильное положение. Проблемы с нормалями возникают например при попытке запечь карты деформации, во время скульптинга, при попытке нажать Shade smooth и тд.

  • -Нормали это вектор перпендикулярный плоскости полигона, который указывает блендеру куда ему отражать свет. Направлен этот вектор только в одну сторону, то есть если нормаль вашего полигона развернута внутрь объекта, как часто случается в blender, то из за этого у вас будут проблемы на каком-то этапе работы.

  • Как мы можем видеть на данном изображении — все нормали объекта, кроме трех выделенных, повернуты наружу, а три выделенные — внутрь. При обычном режиме затенения Shade flat — этого не видно, но если я включу режим затенения shade smooth, то результат будет совсем иным.

  • Проверить направление нормалей своего объекта я могу перейдя в edit mode, и в выпадающем меню overlays поставить галочку напротив Face orientation . Тогда все нормали повернутые наружу будут отображаться синим цветом, а направленные внутрь — красным. В этом же меню Overlays я могу включить отображение нормалей как векторов.

  • Развернуть нормали нам помогут функции Mesh-Normals-Flip (или recalculate outside)

  • Flip — развернет выделенные полигоны.

  • Также мы можем выделить все полигоны объекта (шорткат А) и нажать Recalculate outside чтобы blender автоматически пересчитал все наши полигоны наружу.

  • За направлением нормалей лучше следить.

Двойные вертексы

Двойные вертексы — часто в процессе моделирования и оперирования командой Extrude могут создаться вертексы, которые стоят друг в друге и будут портить нашу топологию, это может нам аукнуться на этапах UV развертки, создания рига и тд. Чтобы избежать этого, на промежуточных этапах работы можно выделять всю свою модель в режиме работы с вершинами и нажимать Mesh-clean up-merge by distance. Двойные вертексы будут объединяться.

Карты нормалей

Карты нормалей запеченные в других программах (substance painter, Zbrush) дают странный результат в Blender .

  • Проблема в том что карты нормалей, в вышеперечисленных, и не только, программах, запекаются c использованием DirectX, а blender работает с OpenGL. Если говорить простым языком то нам нужно развернуть зеленый канал на карте нормалей. Делается это следующим образом:

Надеюсь, что данный пост поможет людям, осваивающим блендер, проскочить несколько часов поиска решения проблем!

V К

15.04.2022

1) invert избыточна, достаточно сделать 1-G
2) а что за нормальки с перевёрнутым красным каналом? Обычно directX и у них только зелёный перевёрнут

Ответить

Развернуть ветку

Every 3D

15.04.2022


Автор

В мыслях был ещё и красный канал… По факту да, инвертировать нужно только зелёный. Статья подправлена. За уточнения спасибо!

Ответить

Развернуть ветку

V К

15.04.2022

Так… похоже, у нас путаница. И ты не понимаешь, как работать с векторами.
1. Конверсия directX ←→ openGL делается через переворот только зелёного канала.
2. А вот инверсия выпуклого на вогнутое чисто по карте нормалей делается как RGB→XYZ, а потом XYZ*(-1 -1 1) и обратно → RGB
Инверсия — это не то же самое, что разворот вектора. Инверсия 0,8 это 0,2. Разворот вектора 0,8 это -0,8
3. Инверсия нормалей уже в векторах (например после бампа) делается поворотом векторов на 180° вокруг нормалей поверхности.

Ответить

Развернуть ветку

V К

15.04.2022

1. Я просто вчера встретил ноду инверсии и с красным тоже, но хз, где такие применяются
2. Так-то блендер позволяет печь нормали с любой ориентацией осей

Ответить

Развернуть ветку

V К

15.04.2022

Есть ещё два варианта, но я вот честно не знаю, что ресурсозатратнее, делать линейную интерполяцию, или делать сначала separate потом combine

Ответить

Развернуть ветку

Творческий кубок

15.04.2022

Хватает инвертирования зеленого канала в RGB Curves.)

Ответить

Развернуть ветку

Алексей Ступников

15.04.2022

Сейчас будет немного тупой вопрос: а если инвертировать цвета карты нормалей, то она не инвертируется?

Ответить

Развернуть ветку

Аккаунт удален

15.04.2022

Комментарий недоступен

Ответить

Развернуть ветку

Аккаунт удален

15.04.2022

Комментарий недоступен

Ответить

Развернуть ветку

Алексей Ступников

15.04.2022

Это я знаю. Каждый канал — одна из осей. Просто хочу попробовать на практике это

Ответить

Развернуть ветку

V К

15.04.2022

Чтобы поменять выпуклое на вогнутое, нужно повернуть вектор из карты нормали на 180° вокруг нормали поверхности

Ответить

Развернуть ветку

Viktor Kopeykin

15.04.2022

Вот это костыль. «Очень просто» это powerscale поставить на -1, вместо 1.

Ответить

Развернуть ветку

V К

15.04.2022

Ты сейчас вычитание и возведение в степень с умножением перепутал…

Ответить

Развернуть ветку

V К

15.04.2022

Математика одна, независимо от софта.
Или power/scale имеется в виду ползунок силы нормальки? Это другое.
В Блендере отрицательный скейл не прокатывает

Ответить

Развернуть ветку

Viktor Kopeykin

15.04.2022

Да, ползунок. Просто называется так сила нормали в софте, где я работаю.

Ответить

Развернуть ветку

V К

15.04.2022

Тогда стоит уточнять софт. Ползунки по-разному могут работать.

Ответить

Развернуть ветку

V К

15.04.2022

работает, но несколько избыточно

Ответить

Развернуть ветку

V К

15.04.2022

Затратность определяется не количеством нодов, а количеством и сложностью операций итоговых. Суммирование и вычитание проще умножения. Разделение и слияние вектора хз… Наверное простое

Ответить

Развернуть ветку

Konstantin Tamch

15.04.2022

Ну тогда проще в фотошопе заранее инвертировать если так боритесь за затратность)

Ответить

Развернуть ветку

V К

15.04.2022

Да. Но фотошоп не умеет в отрицательные цвета, насколько я знаю. Так что dx→ogl сделать можно, а вот вогнутое на выпуклое сменить нет.

Ответить

Развернуть ветку

Tabletkin

15.04.2022

ебать простота то какая, вместо нормальной подготовки текстуры к проекту и открытия фш, инверта зеленого канала и закрытия его

Ответить

Развернуть ветку

CyberDog

16.06.2022

Так, в моем случае сработало только инвертирование и зеленого и красного каналов. Я не понял почему…
UPD. Или даже только красного

Ответить

Развернуть ветку

Читать все 28 комментариев

Fixing inverted faces/meshes in Blender 2.8

In newer versions of Blender the previously available Tool Shelf buttons Flip Direction and Recalculate, typically used to flip inverted surfaces that made meshes appear inside-out, have been moved to the main Mesh menu upper-left of the 3D View. As the option is now context sensitive it only appears as a menu option in Edit Mode.

Design note: the Mesh menu is specific to Edit Mode and does not appear unless that particular editing context is active.

Flip Selected Faces

To access the option and/or correct an inside-out or inverted face, first select the errant mesh element in Edit Mode [1] (using vertex, edge or face) and from the Mesh menu upper-left click Normals [2] then Flip [3] from the options that appear – Mesh » Normals » Flip. Alternatively use Alt + N to access the Normals context menu then select Flip. The highlighted inverted face/s will immediately invert based on their current orientation.

Design note: when selecting errant faces using vertices or edges make sure all component elements are included to the degree that the inverted faces highlight.

Meshes or faces that appear inside out or inverted are fixed from the 3D Views 'Mesh' menu
The option to flip or invert faces [1] is an Edit Mode option only (accessible only when editing meshes), click Mesh » Normals » Flip [2 & 3] with an individual face or group selected.

Recalculate Faces

As an alternative to selectively inverting faces, or re-orientating a large mixed selection so everything points in one direction,  inwards or outwards, use Recalculate Outside (Shift + N) or Recalculate Inside (Shift + Ctrl + N) options. To do this and force the orientation in one direction or the other, in Edit Mode select the entire mesh (A) and access the Mesh menu. Here select Normals » Recalculate Outside to flip faces/selections outwards, or Normals » Recalculate Inside to invert selections inwards – Mesh » Normals » Recalculate Outside/Inside.

Design note: in previous versions of Blender Recalculate tended to orientate faces randomly depending on the predominance of inwards or outwards facing surfaces prior to use. For Blender 2.8+ this is no longer the case, Recalculate Inwards and Recalculate Outwards forceably re-orientate selections based on the option selected, either in or out but not both.

IF faces are randomly inverted use Recalculate to flip everything in one direction
For instances where surfaces are randomly facing one way or the other [4], or there are too many to select and manually process, use Recalculate Inwards/Outwards [5] to force everything to face the same direction, in or out, regardless – make a selection (individual, group or all) then click the Mesh menu, Normals then Recalculate Inwards/Outwards.

Face Orientation

To assist determining which way a face might be pointing, especially if Backface Culling is not disabled in Viewport Overlays or Viewport Shading options (depending on the viewport display mode) or a given materials Settings properties, Blender 2.8+ includes an option to colour tint faces based on their orientation, RED for surfaces pointing inwards and BLUE for those pointing outwards, making it much easier to see at a glance what’s going on, which then allows for individual faces to be flipped or recalculated as needed. To use, click the Overlays button upper-right of the 3D View [6] and from the menu select Face Orientation [7] – Overlays » Face Orientation. Everything will immediately tint blue/red based on their orientation. To disable, repeat, select Overlays » Face Orientation.

Design note: if X-Ray (Alt + Z) is active for any of the Viewport Shading modes, Wireframe, Solid etc., Face Orientation won’t work.

Backface Culling is off
Face Orientation used to determined which way faces point
If Backface Culling is disabled (off) it can be difficult to determine which way a given surfaces is pointing because both front and back of the mesh are the same. In this situation using the Overlays [6] setting Face Orientation [7] can help as it tints surfaces based on their orientation, inwards or outwards.

Двойные вершины в Blender могут создать некоторые реальные проблемы при 3d моделировании. Это руководство поможет Вам больше узнать о вершинах в целом, в том числе о том, как удалить двойные в Blender.

Blender — это популярное программное обеспечение для 3d моделирования благодаря обширному набору функций и бесплатному использованию. Но многие новички не ожидают столкнуться с проблемой двойных вершин. В этом уроке мы науимся обнаруживать ошибку двойных вершин и как ее исправить.

Как обнаружить ошибку двойных вершин

Две вершины могут появляться как одна

Проблема проста: у вас есть перекрывающиеся вершины, которые могут визуально казаться единичными.

Самый простой способ обнаружить проблему с дублирующимися вершинами — использовать инструмент Boolean. Тем не менее, иногда это может иметь неприятные последствия и создавать вершины очень близко друг к другу или даже в одном месте. Это может вызвать множество проблем, таких как нежелательные деформации или неожиданные трудности с такими инструментами, как нож или модификаторы, что негативно отражается на сетке модели.

Может быть трудно заметить эту проблему, но обычно она становится очевидной, когда другой инструмент не работает должным образом. Например, попытка разделить ребро может не сработать, если у любого конца есть несколько вершин.

Проверка на двойные вершины

Один из способов проверить это — посмотреть на верхнюю часть окна, где показано количество вершин, ребер и граней в сцене. В этом случае мы смотрим на вершины (помеченные как «Verts») и на рисунке выше вы сможете увидеть, как две вершины могут выглядеть как одна.

Во-первых, отключите функцию «Ограничить выбор видимым» ( «Limit Selection to Visible»), которая находится в нижней панели окна просмотра. Затем вы можете удерживать «B» и щелкнуть правой кнопкой мыши, чтобы перетащить и нарисовать рамку выбора вокруг вершины, которую вы подозреваете в дубле. Это позволяет вам видеть сетку на сквозь и выбирать вершины на задних гранях.

Как исправить ошибку двойных вершин

Навигация по меню в процессе удаления двойных вершин

Решение довольно простое: с помощью инструмента «Удалить дубли» ( «Remove Doubles») вы можете легко свернуть дублирующиеся вершины в одиночные. Это делается в три этапа:

  1. Выберите дубликаты вершин.
  2. Найдите и нажмите «Удалить дубликаты» на вкладке инструментов слева от области просмотра или выбрав «Сетка» > «Вершины» > «Удалить дубликаты» в нижнем меню.
  3. Отрегулируйте значение «Расстояние слияния» ( «Merge Distance»). Это определит, насколько близкими должны быть вершины, чтобы их можно было объединить в одну. Чем выше значение, тем дальше они могут быть друг от друга. Если вы увеличиваете в слишком много раз, результаты могут быть нежелательными, поэтому лучше сохранить это значение на более низком уровне, чтобы быть ожидать оптимальный результат.

желательно бесплатное и т.к разновидности принтеров много то и базовые присутствовали

Ivan 5 M
Аватара
Сообщения: 34

  • 1

Сообщение #2 mageaster » 30.10.2020, 22:05

3D Print Toolbox чем не устраивает?

Меньше слов, больше дела!
AMD Phenom II X6 1055T, Ryzen 7 2700X 4 16 32 GiB RAM, Nvidia GeForce GTX 550 Ti RTX 2060, Kubuntu 18.04 20.04
Мой WIP

mageaster M
теоретик
Аватара
Откуда: оттуда
Сообщения: 3185
  • Jabber
  • Сайт

Сообщение #3 Ivan 5 » 30.10.2020, 23:10

Жаль уроки на русском не нашёл для чайников, хоть так, благодарю

Ivan 5 M
Аватара
Сообщения: 34


Вернуться в Моделирование

Кто сейчас на форуме

Сейчас этот раздел просматривают: 1 гость

  • Как приятно знать что придя домой после школы котенок встретит меня радостным мяуканьем ошибка
  • Как принять свою ошибку психология
  • Как принять свои ошибки на работе
  • Как принять ошибки любимого
  • Как принять ошибки детей