Ru/L4D Level Design/Elevators: Difference between revisions

From Valve Developer Community
< Ru
Jump to navigation Jump to search
m (obsolete language category)
 
(17 intermediate revisions by 6 users not shown)
Line 1: Line 1:
{{L4D level intro menu:ru}}
{{lang|L4D Level Design|Elevators}}{{L4D level intro menu:ru}}


Left 4 Dead has a unique system for creating elevators that the survivors can ride up and/or down. The nav mesh needs to connect seamlessly throughout the level from where the survivors start to where they need to get. Therefore, the elevators need to connect nav mesh areas vertically.
Left 4 Dead имеет уникальную систему для создания лифтов, которые помогают Выжившим перемещаться вверх и\или вниз. Nav-сетка должна быть полностью соединена на всей карте, начиная от того места, где игроки начинают играть и вплоть до того места, куда им надо прийти. Поэтому для лифтов области nav-сетки необходимо соединять вертикально.


The brush entity to use for an elevator is called a func_elevator. You can also use a prop that is parented to an invisible func_elevator or a prop with its own animations that with an invisible func_elevator.
Для создания лифта используется браш-энтити, которая называется func_elevator. Вы также можете использовать модельку лифта, parent’ом, которой будет невидимый func_elevator или модельку с собственной анимацией, которая также будет связана с невидимым func_elevator.


An example of a func_elevator made purely from brushes can be found in tutorial_standards.vmf.
Пример func_elevator есть в карте tutorial_standards.vmf.


== Creating the brush elevator ==
== Создайте брашевый лифт ==
[[Image:l4d_hammer_elevator_01.jpg|thumb|left|500px|caption|The func_elevator example in the tutorial_standards map.]]{{clr}}
[[File:l4d_hammer_elevator_01.jpg|thumb|left|500px|caption|Пример func_elevator на карте tutorial_standards.]]{{clr}}


Create a brush or multiple brushes that you want to be the func_elevator.
Создайте браш или несколько брашей, которые будут энтитей func_elevator.


Select them and press {{key|Ctrl}}+{{key|T}} to tie them into an entity. Select "func_elevator" from the drop down menu.
Выделите их и нажмите {{key|Ctrl}}+{{key|T}} чтобы превратить их в энити. Выберите "func_elevator" из выпадающего списка.


[[Image:l4d_hammer_elevator_02.jpg|thumb|left|500px|caption|The func_elevator properties.]]{{clr}}
[[File:l4d_hammer_elevator_02.jpg|thumb|left|500px|caption|свойства func_elevator.]]{{clr}}


Change the name to a unique name.
Поменяйте имя на желаемое вами. (поле '''Name''')


Change the third number in the '''Bottom floor position''' to be below the '''Top floor position''' by any amount (this will help you move the helper nodes).
Поменяйте 3-ю цифру в '''Bottom floor position''' , это будет нижняя точка спуска лифта, а так же в '''Top floor position''' на любое значение – соответственно, это верхняя точка (В окне проекции '''Front''' или '''Side''' есть специальные вспомогательные «указатели», потянув за которые, вы легко можете изменить эту 3-ю цифру).


Set the '''Speed''' value (inches/units per second).
Измените значение скорости ('''Speed''') (unit’ы в секунду).


In the '''Front''' or '''Side''' viewport, you can see the helper nodes that represent the Top and Bottom floor positions.
[[File:l4d_hammer_elevator_06.jpg|thumb|left|500px|caption|Вспомогательные «указатели» func_elevator.]]{{clr}}


[[Image:l4d_hammer_elevator_06.jpg|thumb|left|500px|caption|The helper nodes for the func_elevator.]]{{clr}}
{{Note|Лифт был помещён in its own user VisGroup. Выберите вкладку '''Auto''' на панели '''VisGroups''' и снимите галочку '''Auto'''. Затем, Переключитесь обратно на вкладку '''User''' и поставьте галочку '''Elevator''' чтобы видеть только лифт и его связанные энити.}}


{{note|The elevator has been placed in its own user VisGroup. Click on the '''Auto''' tab in the '''VisGroups''' panel and uncheck '''Auto'''. Then, switch back to the '''User''' tab and check the '''Elevator''' box to just see the elevator and its related entities.}}
== Добавляем этажи для лифта ==
Для того чтобы указать точки остановки лифта, вам потребуется разместить энити info_elevator_floor.


Move the '''Bottom floor position''' helper node by left-clicking inside the circle of the node and dragging down to where you want the elevator to descend to.


== Adding floors ==
Выберите '''Entity Tool''' на панели слева от окон проекции и выберите "info_elevator_floor" из выпадающего списка '''Objects''' справа.  
In order for you to be able to tell the elevator to go to a certain floor, you'll need to place info_elevator_floor entities.


Go to the '''Entity Tool''' and select "info_elevator_floor" from the '''Objects''' drop-down menu.
Поместите два экземпляра в окне проекции '''Camera''' прямо под лифтом.  


Place two in the '''Camera''' viewport under the elevator.
С помощью окон проекции '''Side''' или '''Front''', поместите их так, чтобы один был в том месте, где находится '''Top floor position''' энтити '''func_elevator''', а второй – там, где B'''ottom floor position''' той же энтити '''func_elevator'''.


In the '''Side''' or '''Front''' viewports, move them so that one is where the '''Top floor position''' of the func_elevator is and one is where the '''Bottom floor position''' of the func_elevator is.  
[[File:l4d_hammer_elevator_03.jpg|thumb|left|500px|caption|Энтитя info_elevator_floor назначает нашему func_elevator конечные точки.]]{{clr}}


[[Image:l4d_hammer_elevator_03.jpg|thumb|left|500px|caption|The info_elevator_floor entity designates the name of the floor position for the func_elevator.]]{{clr}}
Откройте окно свойств нижнего info_elevator_floor, нажав {{key|Alt}}+{{key|Enter}}.


Open the properties for the bottom one by pressing {{key|Alt}}+{{key|Enter}}.
[[File:l4d_hammer_elevator_04.jpg|thumb|left|500px|caption|Свойства info_elevator_floor.]]{{clr}}


[[Image:l4d_hammer_elevator_04.jpg|thumb|left|500px|caption|The info_elevator_floor properties.]]{{clr}}
Поменяйте поле '''Name''' на "bottom".  


Change the '''Name''' to "bottom".
Выделите верхний info_elevator_floor, и поменяйте '''Name''' на "top".


Open the top one and change its '''Name''' to "top".
== Контролируем перемещение лифта ==


== Controlling the elevator ==
[[File:l4d_hammer_elevator_07.jpg|thumb|right|500px|caption|Пример func_button на карте tutorial_standards.]]


[[Image:l4d_hammer_elevator_07.jpg|thumb|right|500px|caption|The func_button example in the tutorial_standards map.]]
Теперь нужно кое-что добавить в инпут нашего '''func_elevator''', чтобы заставить его перемещаться.


Now, you'll need something to send an input to the func_elevator to tell it to move.
На карте tutorial_standards, это <code>func_button</code> которую выжившие могут нажимать.{{clr}}


In the tutorial_standards map, there is a <code>func_button</code> that the survivors can press.{{clr}}
[[File:l4d_hammer_elevator_08.jpg|thumb|right|500px|caption|Свойства func_button..]]


[[Image:l4d_hammer_elevator_08.jpg|thumb|right|500px|caption|The func_button properties.]]
Чтобы создать <code>func_button</code>, создайте браш и нажмите {{key|Ctrl}}+{{key|T}} чтобы преобразовать его в энтити. Выберите "<code>func_button</code>" из выпадающего списка.{{clr}}


To create a <code>func_button</code>, create a brush and use {{key|Ctrl}}+{{key|T}} to tie it to an entity. Choose "<code>func_button</code>" from the drop down menu.{{clr}}
[[File:l4d_hammer_elevator_09.jpg|thumb|right|500px|caption|Вкладка Flags энтити func_button.]]


[[Image:l4d_hammer_elevator_09.jpg|thumb|right|500px|caption|The '''Flags''' tab for the func_button.]]
Также можно настроить несколько свойств нашей кнопки, чтобы заставить ее работать как надо, но просто давайте пока оставим их по-умолчанию и впишем в поле '''Name''' "button".


There are several properties that depend on how you want your button to work, but for now, simply leave them all as default but change the '''Name''' to "button".
Перейдите на вкладку '''Flags''' в меню свойств и поставьте галочки напротив следующих пунктов:  
 
Switch to the '''Flags''' tag in the '''Object Properties''' and select the following checkboxes:


* '''Don't move'''
* '''Don't move'''
* '''Use Activates'''
* '''Use Activates'''


This means that the survivors can press it with +use and the button won't move when pressed.{{clr}}
Это означает, что Выжившие могут нажимать ее и использовать, и клавиша не будет перемещаться, когда ее нажмут.{{clr}}


[[Image:l4d_hammer_elevator_10.jpg|thumb|right|500px|caption|Adding an output for the elevator to the func_button.]]
[[File:l4d_hammer_elevator_10.jpg|thumb|right|500px|caption|Добавляем аутпут для нашего лифта в свойствах func_button.]]


Now switch to the '''Outputs''' tab.
Теперь переключитесь на вкладку '''Outputs'''.


Add a new output by clicking on the '''Add...''' button near the bottom of the window.
Добавьте новый аутпут кликнув по кнопке '''Add...''' Кнопка расположена ближе к левому нижнему углу окна.  


* Change the '''My output''' field to "OnPressed".
* Выберите в поле '''My output''' значение "OnPressed".
* Change the '''Target entities''' field to "elevator_down_relay".
* Выберите в поле '''Target entities''' значение "elevator_down_relay".  
* Change the '''Via this input''' field to "Trigger".{{clr}}
* Измените значение '''Via this input''' на "Trigger".{{clr}}


[[Image:l4d_hammer_elevator_11.jpg|thumb|right|500px|caption|Creating a logic_relay for the elevator to come down.]]
[[File:l4d_hammer_elevator_11.jpg|thumb|right|500px|caption|Создание logic_relay для спуска лифта.]]


Now we need to create the <code>elevator_down_relay</code> entity that will relay the messages we want sent when the button is pressed.
Сейчас нам потребуется создать энтити <code>elevator_down_relay</code>, которая будет выполнять те действия, которые будут происходить после нажатия кнопки..


In the '''Entity Tool''', select "logic_relay" from the '''Objects''' drop-down field.
Выберите '''Entity Tool''', и найдите "logic_relay" в выпадающем списке '''Objects''' (справа).  


Place a logic_relay near the func_button.
Разместите logic_relay рядом с func_button.  


Open its properties with {{key|Alt}}+{{key|Enter}}.
Откройте свойства при помощи {{key|Alt}}+{{key|Enter}}.


Change the name to "elevator_down_relay" to match the output we are sending from the func_button.{{clr}}
Поменяйте имя на "elevator_down_relay" которое понадобится нам для создания аутпута в func_button.{{clr}}


[[Image:l4d_hammer_elevator_12.jpg|thumb|right|500px|caption|The Outputs tab for the logic_relay.]]
[[File:l4d_hammer_elevator_12.jpg|thumb|right|500px|caption|Список аутпутов для logic_relay.]]


Switch to the '''Outputs''' tab and add a new output with the following fields:
Переключитесь на вкладку '''Outputs''' и добавьте новый аутпут со следующими полями:  


* '''My output named''': OnTrigger
* '''My output named''': OnTrigger
Line 104: Line 101:
* '''After a delay in seconds of''': 0
* '''After a delay in seconds of''': 0


This will send the elevator down when the relay is triggered which we trigger when a survivor presses the button.
Это заставит лифт спуститься, когда активируется logic_relay, которое в свою очередь, активировано нажатием кнопки.  


Depending on the setting for your elevator, you might need to tell the elevator to move to the other position. Look at the <code>func_button</code> on the <code>func_elevator</code> in tutorial_standards.vmf for an example.{{clr}}
В зависимости от настроек вашего лифта, вы можете «приказать» лифту двигаться в другое место. Обратите внимание <code>func_button</code> на <code>func_elevator</code> на карте tutorial_standards.vmf.{{clr}}


[[Image:l4d_nav_elevator_01.jpg|thumb|right|400px|caption|Editing the nav for the <code>func_elevator</code>.]]
[[File:l4d_nav_elevator_01.jpg|thumb|right|400px|caption|Редактирование nav для <code>func_elevator</code>.]]


Editing the nav for a func_elevator requires you to put the elevator in each position it can be in, placing a nav_mark_walkable ({{key|M}}) on it and building incremental nav ({{key|B}}).
Редактирование nav для func_elevator требует чтобы вы поместили лифт в каждое положение в котором это возможно, вставляя nav_mark_walkable ({{key|M}}) на него и построения навигационной сетки ({{key|B}}).
{{clr}}
{{clr}}
Всё! Лифт готов!


{{NavBar|:L4D Level Design/Clip-браши|Основные статьи по созданию уровней для Left 4 Dead|L4D Level Design/Наступление "орды"}}
{{NavBar|:L4D Level Design/Clip-браши|Основные статьи по созданию уровней для Left 4 Dead|L4D Level Design/Наступление "орды"}}


[[Category:Left 4 Dead]]
{{ACategory|Left 4 Dead}}
[[Category:Level Design]]
{{ACategory|Level Design}}

Latest revision as of 03:50, 22 August 2024

English (en)Русский (ru)中文 (zh)Translate (Translate)

Left 4 Dead имеет уникальную систему для создания лифтов, которые помогают Выжившим перемещаться вверх и\или вниз. Nav-сетка должна быть полностью соединена на всей карте, начиная от того места, где игроки начинают играть и вплоть до того места, куда им надо прийти. Поэтому для лифтов области nav-сетки необходимо соединять вертикально.

Для создания лифта используется браш-энтити, которая называется func_elevator. Вы также можете использовать модельку лифта, parent’ом, которой будет невидимый func_elevator или модельку с собственной анимацией, которая также будет связана с невидимым func_elevator.

Пример func_elevator есть в карте tutorial_standards.vmf.

Создайте брашевый лифт

Пример func_elevator на карте tutorial_standards.

Создайте браш или несколько брашей, которые будут энтитей func_elevator.

Выделите их и нажмите Ctrl+T чтобы превратить их в энити. Выберите "func_elevator" из выпадающего списка.

свойства func_elevator.

Поменяйте имя на желаемое вами. (поле Name)

Поменяйте 3-ю цифру в Bottom floor position , это будет нижняя точка спуска лифта, а так же в Top floor position на любое значение – соответственно, это верхняя точка (В окне проекции Front или Side есть специальные вспомогательные «указатели», потянув за которые, вы легко можете изменить эту 3-ю цифру).

Измените значение скорости (Speed) (unit’ы в секунду).

Вспомогательные «указатели» func_elevator.
Note.pngПримечание:Лифт был помещён in its own user VisGroup. Выберите вкладку Auto на панели VisGroups и снимите галочку Auto. Затем, Переключитесь обратно на вкладку User и поставьте галочку Elevator чтобы видеть только лифт и его связанные энити.

Добавляем этажи для лифта

Для того чтобы указать точки остановки лифта, вам потребуется разместить энити info_elevator_floor.


Выберите Entity Tool на панели слева от окон проекции и выберите "info_elevator_floor" из выпадающего списка Objects справа.

Поместите два экземпляра в окне проекции Camera прямо под лифтом.

С помощью окон проекции Side или Front, поместите их так, чтобы один был в том месте, где находится Top floor position энтити func_elevator, а второй – там, где Bottom floor position той же энтити func_elevator.

Энтитя info_elevator_floor назначает нашему func_elevator конечные точки.

Откройте окно свойств нижнего info_elevator_floor, нажав Alt+ Enter.

Свойства info_elevator_floor.

Поменяйте поле Name на "bottom".

Выделите верхний info_elevator_floor, и поменяйте Name на "top".

Контролируем перемещение лифта

Пример func_button на карте tutorial_standards.

Теперь нужно кое-что добавить в инпут нашего func_elevator, чтобы заставить его перемещаться.

На карте tutorial_standards, это func_button которую выжившие могут нажимать.

Свойства func_button..

Чтобы создать func_button, создайте браш и нажмите Ctrl+T чтобы преобразовать его в энтити. Выберите "func_button" из выпадающего списка.

Вкладка Flags энтити func_button.

Также можно настроить несколько свойств нашей кнопки, чтобы заставить ее работать как надо, но просто давайте пока оставим их по-умолчанию и впишем в поле Name "button".

Перейдите на вкладку Flags в меню свойств и поставьте галочки напротив следующих пунктов:

  • Don't move
  • Use Activates

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

Добавляем аутпут для нашего лифта в свойствах func_button.

Теперь переключитесь на вкладку Outputs.

Добавьте новый аутпут кликнув по кнопке Add... Кнопка расположена ближе к левому нижнему углу окна.

  • Выберите в поле My output значение "OnPressed".
  • Выберите в поле Target entities значение "elevator_down_relay".
  • Измените значение Via this input на "Trigger".
Создание logic_relay для спуска лифта.

Сейчас нам потребуется создать энтити elevator_down_relay, которая будет выполнять те действия, которые будут происходить после нажатия кнопки..

Выберите Entity Tool, и найдите "logic_relay" в выпадающем списке Objects (справа).

Разместите logic_relay рядом с func_button.

Откройте свойства при помощи Alt+ Enter.

Поменяйте имя на "elevator_down_relay" которое понадобится нам для создания аутпута в func_button.

Список аутпутов для logic_relay.

Переключитесь на вкладку Outputs и добавьте новый аутпут со следующими полями:

  • My output named: OnTrigger
  • Targets entities named: elevator
  • Via this input: MoveToFloor
  • With a parameter override of: bottom
  • After a delay in seconds of: 0

Это заставит лифт спуститься, когда активируется logic_relay, которое в свою очередь, активировано нажатием кнопки.

В зависимости от настроек вашего лифта, вы можете «приказать» лифту двигаться в другое место. Обратите внимание func_button на func_elevator на карте tutorial_standards.vmf.

Редактирование nav для func_elevator.

Редактирование nav для func_elevator требует чтобы вы поместили лифт в каждое положение в котором это возможно, вставляя nav_mark_walkable (M) на него и построения навигационной сетки (B).

Всё! Лифт готов!


← [[ru/
L4D Level Design/Clip-браши|:L4D Level Design/Clip-браши]](en)