понедельник, 8 июля 2013 г.

Разбираем Scalisoft Spacedraw - Выделение, перемещение, вращение и масштабирование объектов (не законченная)

Перейти к предыдущему посту Разбираем Scalisoft Spacedraw - Примитивы
Продолжение разбора инструмента для хардкорного моделирования на коленке Scalisoft Spacedraw. 
На сей раз речь пойдёт о чём то более дельном, а именно инструментах, прячущихся за значком.

Моделирование, текстурирование и нанесение декалей(ржавчина и подтёки) было полностью сделано в Spacedraw. 


Скорее всего такая иконка была выбрана потому, что именно здесь находятся инструменты для манипулирования объектами и подобъектами (полигонами, рёбрами, вершинами). Под манипулированием понимаются такие операции как: перемещение, вращение и масштабирование.
Словом, именно здесь находятся инструменты, без которых 3D моделирование не могло бы существовать. Смотрим на функционал данной ленты слева-направо:
Режимы работы и выделения для удобства работы продублированы в двух последующих лентах, исключение составляет лишь UVs, которая присутствует только в этой ленте.

Режимы (уровни) работы

Во всех пакетах трёхмерного моделирования(если они работают с полигонами, а не вокселями), различаются минимум 4 уровня работы с объектами:
  1. работа с целым объектом (object)
  2. работа с полигонами объекта (face)
  3. работа с рёбрами объекта (edge)
  4. работа с вершинами объекта (vertex)
Каждый уровень взаимосвязан с другими, так объект состоит из полигонов, которые в свою очередь состоят из рёбер, а рёбра - из вершин. Всё как в школьном курсе геометрии: наименьший объект - точка(vertex), две точки образуют прямую(edge), а две прямые - плоскость(face).
В дальнейшем я буду говорить о вершинах, рёбрах и полигонах как о подобъектах, так как они являются составными частями объектов.

Пока я пропущу режим работы с UVs, а рассмотрю инструменты выделения.

Режимы (инструменты) выделения

Для экономии места некоторые инструменты выделения спрятаны. Увидеть их все можно после нажатия на многоточие "...", которое следует за lasso.


Краткий обзор всех доступных инструментов:
lasso - вызывает прямоугольную область выделения, путём одновременного нажатия и удержания пальцев в small pointer area и large pointer area;
paint - позволяет как бы рисовать выделяемой областью путём движения пальца по large pointer area, так же есть возможность регулировать размер инструмента рисования, путём одновременного нажатия и удержания пальцев в small pointer area и large pointer area;
grow/shrink - увеличивает/уменьшает совокупность выделенных подобъектов по периметру на один составной подобъект;
path - выделяет все подобъекты связанные с уже выделенным подобъектом;
loop - выделяет все подобъекты связанные с уже выделенным подобъектом таким образом, что бы получилась петля;
connected - выделяет все подобъекты связанные с уже выделенным подобъектом;
border - выделяет подобъекты по периметру объекта.
outline - выделяет рёбра объекта, именно в геометрическом плане
invert - инвертирует выделение, т.е. делает все не выделенные объекты/подобъекты выделенными, а с выделенных снимает выделение;
soft - позволяет изменять не только выделенный подобъект, но и соседние, причём делается это синхронно и мягко (пример: представьте скатерть на столе, где-то посередине вы берёте её двумя пальцами и тяните вверх, примерно тоже самое произошло бы со скатертью в Scalisoft, если бы вы подняли центральную вершину вверх при включённом soft selection)
auto-ori.

Манипуляции над объектами и подобъектами

move - позволяет перемещать объекты или подобъекты;
rotate - позволяет вращать объекты или подобъекты;
scale - позволяет увеличивать/уменьшать размеры объектов или подобъектов;
m,r,s - является комбинацией move, rotate и scale и позволяет применять их одновременно;
mirror - зеркально отображает объект;
delete - удаляет объект или подобъект.
------------
new obj. - создание нового объекта;
detach - отделение выделенного подобъекта в отдельный объект;
copy - копирование выделенного объекта или подобъекта;
extrude - выдавливание (работает только с полигонами и рёбрами); после того как к полигону или ребру был применён инструмент extrude, необходимо воспользоваться одним из инструментов позиционирования объектов в пространстве ( moverotate; scalem,r,s).
------------
screen
auto-plane
grid-snap
===========
ref. CS
snap pos.