Инструкция Пользователя M_TOOL new 0.3
Данная страница поясняет, как и зачем пользоваться программой M_TOOL new


Внимание! Проект не завершён. Некоторые возможности не описаны и\или недоступны.

Используйте браузер Opera для лучшего представления страницы
 Зачем это всё?
Программа предназначена для сборки моделей мехосов и прочих трехмерных объектов для игры Вангеры.


 Что умеем?
Программа представляет достаточно удобный интерфейс для сборки модели и её предпросмотра. Но я мог что-то упустить, так что принимаю предложения и конструктивную критику.

Основные возможности программы:
  • экспорт мехоса в формате M3D
  • экспорт моделей в формате Wavefront OBJ
  • импорт мехоса или объекта в формате M3D
  • загрузка моделей в форматах ASC и ASE
  • предпросмотр модели с возможностью выключения видимости отдельных элементов
  • групповое редактирование параметров моделей
  • редактирование параметров мехоса

Программа содержит отдельные части кода написанные Alexander "Sicher" Kotliar.

Формат ASC – это старый ASCII формат 3D Studio Max, который не имеет ничего общего с новым 3D ASCII форматом.

Формат ASE (ASCII Scene Export) новый ASCII формат, используемый в 3D Studio Max для экспорта моделей. Для корректной загрузки в программу ASE файл должен содержать координаты вершин Vertices и индексы вершин для полигонов Faces. Вся прочая информация игнорируется. В файле может содержаться одна или несколько моделей или их группы. При разборе файла каждая модель будет рассматриваться как отдельная, даже если она состоит в группе. Программа читает имена каждого из объектов и автоматически устанавливает тип модели в зависимости от имени. Поэтому разумно давать объектам разумные имена.

Для автоматического распознавания типа, имя объекта должно содержать слова, отвечающие одному из типов: BODY, GLASS, METAL, TUBE, WHEEL, DEBRIS, SLOT. Для типа GLASS можно так же использовать слово WINDOW. Ключевое слово типа может употребляться в имени объекта в любом виде. Все объекты, тип которых не удалось распознать, будут иметь тип UNKNOWN. Тип модели можно в любой момент поменять из окна параметров модели Model params или из контекстного меню.


 Куда тут потыкать?
Здесь я попытаюсь объяснить, зачем нужен каждый элемент управления.


  Главное Окно
 
Кнопка используется для загрузки моделей. В диалоге может быть выбран один или несколько файлов. Каждый будет обработан и загружен. Загрузить модели можно также бросанием одного или нескольких файлов в любое окно программы.


Кнопка используется для экспорта мехоса или объекта. При экспорте в формате M3D из списка моделей выбираются только те, типы которых соответствуют необходимым. Контроль правильного набора типов моделей не осуществляется. Например, вы можете сохранить мехос, который состоит из одних колёс. Вопрос лишь в том, согласится ли игра катать такой мехос?

Ещё один формат, в который можно экспортировать модели – Wavefront OBJ. При этом есть возможность экспорта либо всех моделей в списке моделей, либо только выделенных.


Кнопка Show preview позволяет показать окно предпросмотра модели Mechous preview. Особенности работы с этим окном будут описаны ниже.


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


Кнопка Clear list очищает список моделей Models list. Кнопкой необходимо пользоваться часто, иначе зачем я её сюда поместил?


Кнопка вызывает окно параметров модели Model params, где можно изменить параметры модели. Каждый раз закрывать окно не обязательно. Вызвать окно параметров модели можно также двойным кликом на любом элементе в списке моделей.


При нажатии на эту кнопку появляется окно параметров мехоса. Много разных параметров там. Все непонятные. Помучаетесь с ними немного.


Список необходим, чтобы хранить все загруженные модели. Список обладает возможностью множественного выделения элементов, как с клавиатуры, так и с помощью манипулятора типа мышь. При выделении мышкой область выделения может быть не целой. Это достигается путём нажатия и удержания кнопки CTRL и одновременного выделения элементов левой кнопкой мышки. Ещё кое-как можно для выделения использовать кнопку SHIFT.

С левой стороны у каждой активной строки есть кружочек, отображающий текущее состояние модели в предпросмотре. Если он зелёный, то модель видима. Если красный, то модель невидима. Но даже если модель невидима, куб выделения будет виден. Кроме того, в зависимости от режима предпросмотра, могут отображаться нормали к полигонам или вершинам, сетка модели. Куб выделения спутать ни с чем невозможно.

С правой стороны у каждой активной строки представлены параметры модели. В следующей таблице представлены отображаемые параметры для каждого класса моделей. Названия параметров приведены так, как они называются в окне Model params. Классы моделей отличаются от типов тем, что класс CLASS_BODY включает типы: TYPE_BODY, TYPE_GLASS, TYPE_METAL, TYPE_TUBE. Остальные три класса эквиваленты своим типам: TYPE_WHEEL, TYPE_DEBRIS, TYPE_SLOT.


КлассПараметры
BODYModel type, Color ID, Reflection
WHEELColor ID, Reflection, Wheel steer
DEBRISColor ID, Reflection
SLOTSlot ID, Slot angle


Для удобства использования списка моделей предусмотрено контекстное меню, в котором дублируются некоторые часто используемые операции. Контекстное меню познаётся «методом тыка». Ещё можно и нужно применять следующие специальные клавиши:
  • A – выделить всё
  • O – выделить один элемент, имеющий фокус
  • I – инвертировать выделение
  • DEL – удалить выделенные элементы
  • SPACE – переключить состояние видимости выделенных моделей

Если перемещать одиночное выделение по списку, то в окно параметров модели Model params будут автоматически загружаться параметры выделенной модели. Понятно, что одиночный выделенный элемент всегда имеет фокус. Если выделение множественное, то в окно параметров модели Model params будут загружены параметры модели, у которой в данный момент находится фокус.

Таким образом, при настройке параметров моделей удобно держать окно параметров модели Model params постоянно открытым.


  Параметры Модели
 
Окно параметров модели не имеет каких-либо особенностей. Однако, нужно отметить, что при загрузке параметров модели, к заголовку окна добавляется имя модели, параметры которой загружены. Строго говоря, в этот окно всегда загружаются параметры модели, которая в данный момент имеет фокус в списке моделей Models list. Если выделение в списке моделей одиночное, то именно этот элемент имеет фокус. Если множественное – фокус имеет последний выделенный элемент. Чтобы не запутаться в этом, достаточно посмотреть на заголовок окна параметров модели Model params, чтобы понять, какому же из элементов списка моделей принадлежат загруженные параметры. Сказанное поясняют рисунки ниже.


в Models list выделено
несколько элементов
в Models list выделен
только один элемент


При выборе определённого типа модели Model type автоматически активируются доступные для этого типа параметры. Для типа UNKNOWN доступны все параметры. После нажатия на кнопку Apply, параметры из окна параметров будут перенесены в структуру модели. Если при этом был изменён класс модели, то модель займёт новое место в списке моделей Models list.

Важно, что если в списке моделей было выделено несколько моделей, то после нажатия кнопки Apply, параметры будут перенесены в каждую из них. Ясно, что все выделенные модели теперь будут иметь одинаковые параметры. Внимательный читатель уже знает, что при изменении класса модели, она занимает новое место в списке моделей. Что же произойдёт, если выделено несколько элементов и происходит изменение класса? Ничего страшного. Элементы займут новые места, но так и останутся выделенными.

Кнопка Close просто скрывает окно. Это эквивалентно нажатию на крестик.


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




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

Пункт меню Toggle visible переключает видимость элементов в окне предпросмотра. Выбор пункта Show params приведёт к появлению окна параметров модели. Пункты меню Body, Glass, Metal, Tube, Wheel, Debris, Slot и Unknown устанавливают соответствующий тип модели. Особенностью этих команд является то, что при их выполнении будут автоматически установлены стандартные параметры для данного типа модели. Поясним сказанное.

Пусть имеется модель типа TYPE_WHEEL с параметрами: Color ID 3, Reflection 0. Теперь, командой Tube из контекстного меню изменяем её тип на TYPE_TUBE класса CLASS_BODY. Поскольку модели типа TYPE_TUBE характеризуются параметрами: Color ID 6, Reflection 2, – то именно эти значения будут автоматически присвоены соответствующим параметрам. Такое автоматическое присвоение сделано исключительно для ускорения сборки модели. Из-за того, что тип модели был изменён, элемент списка будет перемещён в подходящую область.

При выборе пункта меню Delete model из списка будут удалены все выбранные модели.


  Окно Предпросмотра
 
Здесь лишь нужно отметить особенности управления этим окном. По умолчанию модель вращается вокруг своей вертикальной оси. Остановить или запустить вращение можно нажатием над окном левой кнопки мыши при удержании кнопки SHIFT или одной кнопкой SPACE. Нажав левую кнопку мыши и передвигая манипулятор вверх или вниз, можно изменить угол наклона вертикальной оси относительно наблюдателя. Если удерживать кнопку CTRL и передвигать мышку с нажатой левой кнопкой, то можно в некоторых пределах перемещать оси наблюдения моделей. Конечно, кто-нибудь загонит модели куда-то так, что не сможет найти. На этот случай можно кликнуть правой кнопкой мышки для сброса перемещения, поворота и увеличения. Естественно, что колёсиком можно увеличивать и уменьшать модель, а двойным кликом на окно или заголовок разворачивать окно во весь экран или сворачивать. Кроме того, можно регулировать яркость фона от чёрного до белого. Для этого необходимо вращать колёсико мышки с зажатой кнопкой CTRL.

Суммируя сказанное, имеем:
  • RCLICK – сброс вращения, смещения, увеличения
  • LDBLCLICK – свернуть\развернуть на весь экран
  • MOUSEWHEEL – увеличение\уменьшение
  • SHIFT + LCLICK или SPACE – старт\стоп вращения
  • LBUTTON + DRAG(UP, DOWN) – поворот оси вращения
  • CTRL + LBUTTON + DRAG(ANY) – смещение осей модели
  • CTRL + MOUSEWHEEL – изменение яркости фона окна

Для контроля геометрии модели предусмотрено несколько режимов рисования. Текущее состояние каждого режима отображается соответствующей буквой в левой верхней части окна предпросмотра.

Перечислим все эти режимы:
  • L (Lattice, Mesh) – режим рисования структуры модели
  • F (Faces normals) – режим рисования нормалей к полигонам
  • V (Vertices normals) – режим рисования нормалей к вершинам
  • C (Faces colors) – режим рисования с использованием цветов полигонов

Каждый из режимов включается и отключается соответствующей кнопкой на клавиатуре.

Особенность режимов L, F, V в том, что даже если модель невидима, но выделена в списке, то будет происходить рисование элементов этих режимов (решётки, нормалей) для всех выделенных моделей. Это помогает быстрее и проще определять ошибки в геометрии моделей.

В режиме C при рисовании модели используется не цвет типа модели, а цвет, заданный параметром Color ID. Например, цвет типа обломков TYPE_DEBRIS оранжевый, но в режиме C модели этого типа будут иметь цвет в зависимости от значения параметра Color ID.

Другая возможность применения режима C – раскраска модели M3D, которая только была загружена. Это достигается за счёт того, что в файлах типа M3D для каждого полигона сохранён свой Color ID, который и будет использован при рисовании модели. Учитывайте, что для загруженной модели типа M3D лучше не менять ни тип модели, ни её цвет, так как в этом случае информация о цвете отдельных полигонов будет утеряна. Для полноты картины отмечу, что загрузка файлов M3D сделана только для контроля геометрии модели и ничего более.


  Параметры Мехоса
 
Параметры, как параметры. Единственная особенность, что, видимо, часть значений интерпретируются как вещественные, а часть – как целые. Если вы не понимаете, что значит каждый из множества параметров ниже, то немедленно удалите эту программу! Ясно, что у вас её быть не должно.


Вещественные Целые
Scale size
Scale bound
Scale box
Mass Z offset
Speed on ground
Speed in water
Speed in air
Speed as mole
Mobility factor
Archimedian
Water traction
Water rudder
Terra mover X
Terra mover Y
Terra mover Z
Weld limit
Defence front
Defence back
Defence side
Defence top
Defence bottom
Ram front
Ram back
Ram side
Ram top
Ram bottom
Color offset
Color shift
Smooth angle


Мной введены два параметра, влияющие на сборку модели: Weld limit и Smooth angle.

Параметр Weld limit используется для задания расстояния между вершинами, в пределах которого их можно слить в одну. При выборе этого значения нужно исходить из того, что размер модели всегда постоянен и равен 250 единиц.

Параметр Smooth angle определяет предельное значение угла между нормалями соседних полигонов, при котором можно сгладить эти полигоны. При сглаживании создаётся плавный переход цвета.

Подробное описание всех прочих параметров мне неизвестно.


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

Спасибо за внимание.


 Последнее обновление: 08.02.2008 (73)
© capkoh, специально для разработчиков zMod