This article's documentation is for anything that uses the Source engine. Click here for more information.

func_instance

From Valve Developer Community
Jump to: navigation, search
English (en)Русский (ru)中文 (zh)
... Icon-Important.png
func_instance
Missing entity icon.png
TypeInternal Point entity
EngineSource Source
AvailabilityIn all games
 

func_instance is a internal point entity available in all Source Source games. Данный объект вставляет вхождение другого VMF файла в текущий. Вы можете перемещать и вращать вхождение без поломки чего-либо или без кошмарного редактирования вне сетки.

По умолчанию, вхождение VMF отображается в Hammer окрашенным в оранжевый, но вы можете отключить это в верхней панели редактора, нажав Instancing > View Instances.

Warning.pngWarning:Рекурсивное вхождение (т.е. вхождение, в котором содержится оно же само) может вызвать вылет Hammer.
Note.pngNote:Вхождения по умолчанию отключены в играх до Left 4 Dead 2 (кроме Team Fortress 2). Чтобы включить их, добавьте ключ GameData в gameinfo.txt, указывая на FGD файл нужной игры.
Note.pngNote:VBSP преобразует только объекты в FGD файле, который загружается из ключа GameData. Если какие-либо пользовательские объекты потеряны, то это наиболее вероятная причина.
Tip.pngTip:gameinfo.txt имеет параметр InstancePath, которых указывает расположение вхождений. Если Вы пытаетесь обратиться к файлам, которых нет в этой папке, Вам придётся вручную вводить имя вашего .vmf вхождения (путь к файлу относительно родительского .vmf)
Icon-Bug.pngBug:Alien Swarm Вложенные вхождения с относительными именами файлов некорректно работают в Alien Swarm, потому что они по-разному обрабатываются в Hammer и VBSP.
Blank image.pngTodo: проверить gameinfo.txt. Проблема может быть в неправильной настройке
Icon-Bug.pngBug:light_spot будет вести себя непредсказуемо, когда часть вхождения будет изменять ключ-значение Pitch. Решается путём свёртывания [collapsing] вхождения, или при помощи ключа-значения "Entity to point at".
Icon-Bug.pngBug:Alien Swarm func_instance некорректно работает в Source 2009 Engine Branch. Вместо этого рекомендуется использовать Префаб.
Icon-Bug.pngBug:func_viscluster не работает при размещении внутри вхождения.
Icon-Bug.pngBug:VBSP произойдет сбой без ошибок, если вхождение превысит лимит элементов карты (т.е. ситуация, когда скрытие всех вхождений приведёт к тому, что карта не будет превышать лимиты на элементы). Компиляция с -verbose покажет конкретное вхождение, вызывающее сбой VBSP.

Ввод через вхождение

  1. Задайте Fix Up Name. Для вхождения будет задано имя "MyInstance"
  2. Определите значение для ввода (input) или выхода (output), которое Вы хотите использовать (если он есть).
  3. Отправьте ввод в targetname "fixupname-значение", например MyInstance-Start. Интерфейс Hammer не распознает имя, но не волнуйтесь.

KeyValues

VMF Filename (file) <string>
Имя VMF файла для вставки в качестве вхождения. Относительный путь размещения к имеющейся карте.
Fix Up Name (propagate_fixup) <string>
По сути, это название вхождения. Эта строка будет добавлена ко всем объектам в нём на основе стиля исправления. Если имя не указано, то будет использовано InstanceAutoX или AutoInstanceX, где X - число, которое будет увеличиваться с каждым новым вхождением.
Note.pngNote:Имена обеъектов, начинающиеся с символа @, например @exit_door, не будут изменены при исправлении имени вхождения.
Blank image.pngTodo: подтверждено только для Portal 2
Entity Name Fix Up (fixup_style) <choices>
Как применять Fix Up Name.
  • 0: Prefix (По умолчанию)
  • 1: Postfix
  • 2: None
Replace (replace01) <instance_variable>
Это параметр замены. Любое использование $variable внутри вхождения будет заменено на value. Заменить <string $variable> <string value>. Пример: $color 255 0 0.
Note.pngNote:There are 10 Replace key-value pairs with the keys following replace{number} for names: replace01, replace02, ..., replace10
Blank image.pngTodo: перевести это предложение, да так перевести, чтобы хоть что-то было понятно



Углы:
Pitch Yaw Roll (Y Z X) <угловое значение>
Ориентация этого объекта в мире. Тангаж (pitch) - поворот по оси Y, рысканье (yaw) - поворот по Z и крен(roll) - поворот по X.

Также смотрите

  • func_instance_parms - Объект для управления параметрами вхождений.
  • func_instance_io_proxy - Объект, который используется во вхождениях в качестве прокси для системы ввода/вывода объектов.
  • func_instance_origin func_instance_origin - Вспомогательный объект, определяющий начало координат вхождения.
  • English L4D2 Level Design/VMF Instances - Учебник о том, как пользоваться этим объектом в Left 4 Dead 2.