Заготовка

From Valve Developer Community
< Ru
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
English (en)Русский (ru)Translate (Translate)


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

Заготовки - это простые маленькие файлы карт (.VMF(en)), которые содержат только вашу заготовку. Эти файлы хранятся в определенной директории, обычно \sourcesdk\bin\prefabs, чтобы редактор карт(en) мог их найти и Вы могли легко вставить их на ваши карты.

Примечание: Убедитесь, что в играх orangebox используете \sourcesdk\bin\orangebox\bin\prefabs

Заготовки можно выстраивать по иерархии, просто добавляя их в поддиректории \prefabs. Это позволяет сортировать их на основе принадлежности к карте или модифцикации, что облегчает их поиск.

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

Заготовки в Хаммере создаются так:

  1. Если заготовки предназначены для взаимодействия с поименованными объектами внутри себя, то в конце имени каждого объекта добавляем маркер "_&i". См. ниже Маркер заготовок.
  2. Выделите объекты, которые нужно добавить в заготовку (зажав Ctrl).
  3. Если Вы планируете вставлять заготовку с помощью Entity Tool(en), то в качестве точки отсчёта будет выбрано начало координат (0,0,0) вашей карты, поэтому желательно перенести выбранные объекты в эту точку и центрировать заготовку по ней.
  4. Нажмите кнопку Create Prefab на панели объектов(en), или выберите команду Create Prefab в меню инструментов(en). (Горячая клавиша: Ctrl+R)
  5. Откроется диалог Save As..., показывая каталог заготовок Хаммера. Впишите имя файла и сохраните заготовку, нажав кнопку Save.
    Note.pngПримечание:К файлу автоматически добавляется расширение .vmf, однако у некоторых пользователей его не было. Чтобы перестраховаться, припишите файлу расширение .vmf. Также, это расширение можно добавить позже, открыв папку заготовок.
    Icon-Bug.pngБаг:После сохранения самой первой заготовки Хаммер может закрыться.  [todo tested in ?]
  6. Теперь новая заготовка будет доступена для вставки на панели объектов(en).

Маркер заготовок

К именам объектов внутри заготовки можно добавить специальный маркер "&i", так что на карте им будет присвоен уникальный номер. Маркер может включаться в имя(en), входы и выходы(en), и т.д.. Все маркеры в заготовкуе будут заменены на тот же номер. Это позволяет объектам внутри заготовок не ссылаться на другие заготовки.

Например, объект func_door(en) с именем "door_sliding_&i" в заготовке, на карте станет называться "door_sliding_1". В последующих заготовках он будет называться "door_sliding_2", "door_sliding_3", ...

Триггеру trigger_multiple(en), добаленному в одну заготовку с триггером "door_sliding_&i", который он запускает, будет присвоен тот же номер, что и двери.

Note.pngПримечание:Другие элементы, как например поверхности элементов указанные в добавленном в заготовку кубмапы(en), сохраняться не будут, и отбрасываются при каждой вставке.
Tip.pngСовет:Используйте звездочку (*) в фильтре поиска заготовок, использующих подстановку. Например, поиск door_* выдаст door_1, door_2, door_red_7, и т.д..

Вставка заготовок

Hammer newobjects.jpg

Готовую заготовку очень просто вставить на карту.

Есть два способа: с помощью Entity tool Mt-entities.png, или Block tool Hammer block.png.

В целом, процедура одинакова в обоих случаях: сперва определитесь с инструментом, затем на Панели объектов(en) выберите заготовку, и вставьте её в одно из окон.

Инструмент Entity tool Mt-entities.png, используемый чаще всего, сохраняет исходный размер заготовки. Инструмент Block tool Hammer block.png допускает изменение размера заготовки.

Tip.pngСовет:После того, как Вы выбрали способ создания заготовки (Entity Tool или Block Tool), на панели объектов появится кнопка Insert original prefab (вставить оригинальную заготовку). Используйте её, чтобы вставить заготовку в центр окна 2D-вида. После этого заготовку можно двигать куда угодно. Убедитесь, что включена Texture Locking(en)!

Использование Entity Tool

InsertPrefabTut1.png
InsertPrefabTut2.png
InsertPrefabTut3.png

Чтобы разместить заготовку в исходном размере, используйте Entity tool Mt-entities.png.

  1. Выберите Entity tool Mt-entities.png на панели инструментов. (Горячие клавиши: Shift+E)
  2. На панели Object bar(en), в поле Categories: выберите Prefabs.
  3. В поле Objects: выберите из списка нужный префаб.
  4. Щелкните в окне 2D-вида в том месте, куда хотите поместить заготовку. В качестве альтернативы, Вы можете щелкнуть в окне 3D-вида, после чего заготовка будет вставляться автоматически.
  5. Нажмите Return или Enter, чтобы вставить заготовку.

Использование Block Tool

Чтобы разместить заготовку в нужном масштабе, используйте Block tool Hammer block.png.

Как вставить заготовку нужного размера:

  1. На панели инструментов выберите Block tool Hammer block.png. (Горячие клавиши: Shift+B)
  2. На панели Object bar(en), в поле Categories: выберите Prefabs.
  3. В поле Objects: выберите из списка нужную заготовку.
  4. В окне 2D-вида выделите прямоугольник, убедившись, что его размер и положение во всех окнах редактора соответствуют вашим требованиям.
  5. Нажмите Return или Enter, чтобы вставить заготовку. Она будет списана в выделенный прямоугольник.

Обратите внимание, что любая вставленная заготовка автоматически группируется(en), и если Вам нужно переместить отдельный объект из заготовки, то её следует разгруппировать.

Текстура Skip tool

Обычно, заготовка состоит из множества объектов, которые Вам нужно куда-либо переместить или скопировать, и если заготовка имеет неопределенный размер, то его компоненты могут оказаться в неожиданных местах. Вы можете этого избежать, окружив заготовку текстурой(en) skip(en):

  1. Установите размер сетки на максимальный, на который желаете перемещать заготовку. (Обычно, элемент карты skip(en) рисуется с размерами 4x4x4.)
  2. Создайте элемент карты, охватывающий все компоненты префаба.
  3. Покройте его со всех сторон служебной текстурой(en) skip(en).
  4. Выберите все компоненты заготовки, (включая браш skip(en)) и сохраните его.

Теперь положение компонентов внутри элементы карты соотнесено с ним, и браш будет выравнивать их по графике Хаммера. Поскольку элемент карты покрыт служебной текстурой(en) skip(en), он не компилируется с картой.

Готовые заготовки

Список готовых заготовок в Source SDK см.

См. также

Внешние ссылки

Ниже представлены сайты, которые изготавливают заготовки и модели: