Полет по трубам

From Valve Developer Community
Jump to: navigation, search

В сюжетной компании Portal 2 есть момент где игрока и уитли засосало в трубу и направило прямиком к ГЛэДОС. Это сделано с помощью прикрепления point_viewproxy к модели 1х1х1, которую анимировали как летящую по специальной системе труб.

Примечание:Обработка может занять длительное время в зависимости от длинны и сложности труб,по которым игрок будет "летать".

Создание анимации полета по трубам

Примечание:заранее и ТЩАТЕЛЬНО распланируйте маршрут для труб,поскольку если трубы в дальнейшем будут смещены,изменять путь будет очень трудоемко!

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

  • Разместите трубы по которым будет летать игрок. Чтобы было интереснее, помимо прямых труб добавляйте повороты
  • Поместите point_viewproxy рядом с игроком и задайте ему следующие настройки
Свойство Параметр
Name сam
Offset Type Easy to camera
Proxy Entity train
Tilt Fraction 1
Acceleration Scalar 1.00
  • Во флагах point_viewproxy отметьте 'Freeze Player' и 'Make Player non-solid'
  • Создайте браш Nodraw 1x1x1 и преобразуйте его в энтити func_tracktrain
  • Энтити func_tracktrain задайте следующие настройки
Свойство Параметр
Name train
Disable Receiving Shadows Yes
Disable Shadows Yes
First stop target path
Max Speed 300
Примечание:желательно поставить спавн игрока внутри трубы,иначе он будет плавно по середине входить в трубу прям через стекло.
  • Создайте path_track в самом начале трубы и задайте ему следующие параметры
Свойство Параметр
Name path
Next Stop Target path1
  • Копируйте path_track по всей трубе,где то по середине (если труба маленькая,если нет то чуть ближе к концу) остановитесь,создайте env_fade и задайте ему следующие параметры
Свойство Параметр
Name fade
Duration 1
Reverse Fade Duration 20
  • Создайте logic_relay задайте следующие параметры и выходы
Свойство Параметр
Name logic
My Output Target Entity Target Input Parameter Delay Only Once
Io11.png OnTrigger fade Fade 0.00 Yes
  • Вернитесь к path_track и задайте следующие выходы
My Output Target Entity Target Input Parameter Delay Only Once
Io11.png OnPass logic trigger 0.00 Yes
  • Скопируйте path_track один раз и удалите все выходы
  • Продолжайте копировать path_track до конца трубы
  • Создайте func_instance со следующими настройками
Свойство Значение
Fix Up Name pti_ents
VMF Filename instances/p2editor/global_pti_ents.vmf
  • Создайте logic_relay задайте следующие параметры и выходы
Свойство Параметр
Name logic2
My Output Target Entity Target Input Parameter Delay Only Once
Io11.png OnTrigger pti_ents instance:@relay_pti_level_end;Trigger 0.00 Yes
  • Выберите path_track который находится в конце трубы и задайте ему следующие выходы
My Output Target Entity Target Input Parameter Delay Only Once
Io11.png OnPass logic2 trigger 0.00 Yes
  • Создайте logic_auto со следующими выходами
My Output Target Entity Target Input Parameter Delay Only Once
Io11.png OnMapSpawn cam Enable 0.00 Yes
Io11.png OnMapSpawn train StartForward 0.00 Yes

Пример

https://yadi.sk/d/QmF56AwM3LmEkC

(дополнил,и написал ゲームマスター )

Эх я стараюсь,а вы даже не улыбаетесь(((

найдете ошибку пишите мне в вк https://vk.com/na73e0bka