Продвинутая розетка
- giant_lizard
- Маппер
- Сообщения: 364
- Зарегистрирован: 12.10.2007
- Откуда: ЗОНА 51
Рассмотрел, и решил написать тутор про продвинутую розетку.
Используемые энтитии:
Prop_static - статистическая модель
Prop_dynamic - динамическая модель :crazy: , умеет проигрывать анимации ну и еще некоторые свойства.
Trigger_teleport - тригер-телепорт, уже с названия понятно что перемещает объект, как телепорт, в заданную точку.
Info_target - цель :)
Trigger_multiple - многоразовый тригер для активации аутпутов, т.е. 2 раза и более...
Filter_activator_name - фильтрует по названию энтити, напримере с тригером: может фильтровать все объекты проходящие через тригер, и только вписанный объект в фильтр, сможет активировать аутпуты пройдя через тригер; а так же может фильтровать только вписанный в фильтр объект, а все остальные будут активировать аутпуты пройдя через тригер, т.е. любой другой сможет активировать аутпуты кроме этого объекта(чье названия будет вписано в фильтр). %)
env_sprite - спраиты ...
env_spark - искры ...
func_physbox - так же prop_physics, только из браши и имеет некоторые иные свойства :crazy:
env_beam- луч ...
func_clip_vphysics – с названия уже понятно, что является барьером для vphysics.
Начнем:
1. Создадим для начала саму розетку, взяв prop_static и настроив:
World model: models/props_lab/tpplugholder_single.mdl
Т.к. это многоразовая розетка то придется сделать так:
Collisions: not solid
После покрываем розетку*(не полностью, как на скрине ниже)брашью с текстурой toolsnodraw. Выделаем все браши, и переводим в func_clip_vphysics.
2. Теперь сделаем модель вилки, создадим prop_dynamic, и настроем:
world model: models/props_lab/tpplug.mdl
parent: vilka
collisions: use VPhysics
3. Дальше создаем из браш с текстурой toolsnodraw, похожий на саму вилку*(примерно как на скрине ниже), переводим браш в func_physbox и настраиваем:
Name: vilka
Disable shadow: yes*(можете оставить т.к. есть)
Preferred player-carry angels: 0 90 0 *(показывает как повернется объект(под каким углом) когда его игрок возьмет/использует. Кто не знает принципа этих цифр открываем спойлер)
[spoiler=""оси Y Z X""]Я думаю вы когда-нибудь замечали исходящие от модели красную, синюю, и зеленую линию?
Красная линия – ось x; Зеленая линия – ось y; Синяя ось – z;
Теперь постараюсь объяснить как вращается объект:
Вокруг синего креста(ось z) вращается деталь против часовой стрелки когда число положительное, (смотрим на стрелки на рисунки, он показывают в какую сторону вращается, когда положительное; а так же снизу, справа цифры показывают на сколько градусов повернется объект на определенной оси(Y Z X); а сверху, справа можно регулировать вращения(только по оси Z, остальные придется регулировать в Pitch Yaw Roll (Y Z X), в той таблице снизу, справа), когда отрицательно (например -90) то естественно по часовой стрелки будет вращаться объект, на определенной оси.
Вокруг зеленого креста(ось y) вращается объект против часовой(когда положительное число) и по часовой (когда отрицательное число);
Вокруг красного креста(ось x) вращается объект против часовой(когда положительное) и по часовой (когда отрицательное число). В общем я постарался объяснить, вы можете сами потеснить изменяя числа т.п.[/spoiler]
Flags:
Debris *(не сталкивается с игроком и другими debirs-объектами)
Use preferred carry angles *(когда игрок поднимает(+USE, или грави-пушкой) объект поворачивается под угол который выставлен в Preferred player-carry angels *см. выше)
Generate outpur on +USE
Only break on trigger
Don’t’ take physics damage
4. Создаем filter_activator_name и настраиваем:
Name: filter_tol’ko_vilka
Filter mode: Allow entities that match criteria *(если поставить Disallow entities that match criteria, то все физический объекты будут цепляется в эту розетку, кроме вилки)
Filter name: vilka
5.Теперь там где наша розетка, внутри делаем браш и покрывает текстурой toolstrigger, переводим в trigger_teleport и настраиваем:
Name: teleport
Filter name: filter_tol’ko_vilka
Remote destination: cel’ *(место появления после телепортации)
Flags:
Убираем:
Clients
Ставим:
Physic objects*(только на физические объекты будет реагировать тригер)
6.Создаем info_target, даем ему name: cel’ и располагаем примерно как на скрине ниже.
Теперь насчет хэлпера в нашей вилке(vilka); выделяем наш физбокс, и ищем хэлпер*(фиолетовый кружок)
[/img]
Регулируем хэлпер на плоскостях. *(на скрине выше вид сверху)
И главное, что хэлпер - центр нашего физбокса(vilka), т.е., когда наша вилка телепортируется, она станет своим центром*(там где хэлпер), в центре info_target; и как мы расположен хэлпер, так оно и будет в розетке стоять!!! будьте очень точными, и пробуйте несколько раз расположить хэлпер, так чтобы, вилка не застревала в func_clip_vphysics*(иначе мы ее больше никогда не вытащим :) ), в той самой браше которую мы создали вначале.
Создания эффектов(опционально):
7. Создаемenv_beam*(месторасположения не имеет значения) и настраиваем*(настраиваем как хотим, ниже предложены мои настройки):
Name: 220v
Brightness: 100*(прозрачность)
Beam color(Red Green Blue): 255 245 121*(настраиваем сами)
Life: 0
Width of beam: 1
Amount of noise: 10
Sprite name: sprites/lgtning
Start entity: vilka
Ending entity: cel’
Flags:
Toggle
Далее создаем *(как на скрине) браш с текстурой toolstrigger, переводим в trigger_multiple, и настраиваем:
Name: vklu4atel’_ly4a
Filter name: filter_tol’ko_vilka
Flags:
Убираем:
Clients*(иначе игрок будет активировать)
Ставим:
Physics object
8.Создаем env_spark, примерно там где info_target и настраиваем:
Name: iskra
Magnitude: medium *(общий размер искры)
Spark Trail Length: medium
Flags:
Glow
Shade start*(так лучше смотрится)
9. И последнее, создаем env_sprite и настраиваем:
Name: lampa
Render FX: Hologram *(мне нравится)
Render mode: World space glow
FX amount: 200
FX color(Red Green Blue): 255 0 0
Sptire name: sprites/glow01.spr *(вполне хорошо смотрится)
Scale: 0.15 *(размер спрайта)
Size of Glow Proxy Geometry: 2 *(слишком больше не советую ставить, а то будете видеть спрайт через стены, модели и т.п; 2.0 вполне нормально)
Flags:
Start on
10. И наконец logic_relay, ставим где попало :crazy: ,вписываем name: restart; start disable: yes, и попутно начинаем настраивать outputs.
А) Начнем c vklu4atel’_ly4a *(тот самый trigger_multiple)
Б) Теперь teleport *(trigger_teleport)
В) Теперь vilka *(func_physbox)
Г)И наконец restart *(logic_relay)
В общем у вас есть полсекунды чтобы убрать вилку иначе она опять вставится, вилку можно сбить пулей/взрывом, взять в гравицапу, а так же в руку.
Исходники:
Используемые энтитии:
Prop_static - статистическая модель
Prop_dynamic - динамическая модель :crazy: , умеет проигрывать анимации ну и еще некоторые свойства.
Trigger_teleport - тригер-телепорт, уже с названия понятно что перемещает объект, как телепорт, в заданную точку.
Info_target - цель :)
Trigger_multiple - многоразовый тригер для активации аутпутов, т.е. 2 раза и более...
Filter_activator_name - фильтрует по названию энтити, напримере с тригером: может фильтровать все объекты проходящие через тригер, и только вписанный объект в фильтр, сможет активировать аутпуты пройдя через тригер; а так же может фильтровать только вписанный в фильтр объект, а все остальные будут активировать аутпуты пройдя через тригер, т.е. любой другой сможет активировать аутпуты кроме этого объекта(чье названия будет вписано в фильтр). %)
env_sprite - спраиты ...
env_spark - искры ...
func_physbox - так же prop_physics, только из браши и имеет некоторые иные свойства :crazy:
env_beam- луч ...
func_clip_vphysics – с названия уже понятно, что является барьером для vphysics.
Начнем:
1. Создадим для начала саму розетку, взяв prop_static и настроив:
World model: models/props_lab/tpplugholder_single.mdl
Т.к. это многоразовая розетка то придется сделать так:
Collisions: not solid
После покрываем розетку*(не полностью, как на скрине ниже)брашью с текстурой toolsnodraw. Выделаем все браши, и переводим в func_clip_vphysics.
2. Теперь сделаем модель вилки, создадим prop_dynamic, и настроем:
world model: models/props_lab/tpplug.mdl
parent: vilka
collisions: use VPhysics
3. Дальше создаем из браш с текстурой toolsnodraw, похожий на саму вилку*(примерно как на скрине ниже), переводим браш в func_physbox и настраиваем:
Name: vilka
Disable shadow: yes*(можете оставить т.к. есть)
Preferred player-carry angels: 0 90 0 *(показывает как повернется объект(под каким углом) когда его игрок возьмет/использует. Кто не знает принципа этих цифр открываем спойлер)
[spoiler=""оси Y Z X""]Я думаю вы когда-нибудь замечали исходящие от модели красную, синюю, и зеленую линию?
Красная линия – ось x; Зеленая линия – ось y; Синяя ось – z;
Теперь постараюсь объяснить как вращается объект:
Вокруг синего креста(ось z) вращается деталь против часовой стрелки когда число положительное, (смотрим на стрелки на рисунки, он показывают в какую сторону вращается, когда положительное; а так же снизу, справа цифры показывают на сколько градусов повернется объект на определенной оси(Y Z X); а сверху, справа можно регулировать вращения(только по оси Z, остальные придется регулировать в Pitch Yaw Roll (Y Z X), в той таблице снизу, справа), когда отрицательно (например -90) то естественно по часовой стрелки будет вращаться объект, на определенной оси.
Вокруг зеленого креста(ось y) вращается объект против часовой(когда положительное число) и по часовой (когда отрицательное число);
Вокруг красного креста(ось x) вращается объект против часовой(когда положительное) и по часовой (когда отрицательное число). В общем я постарался объяснить, вы можете сами потеснить изменяя числа т.п.[/spoiler]
Flags:
Debris *(не сталкивается с игроком и другими debirs-объектами)
Use preferred carry angles *(когда игрок поднимает(+USE, или грави-пушкой) объект поворачивается под угол который выставлен в Preferred player-carry angels *см. выше)
Generate outpur on +USE
Only break on trigger
Don’t’ take physics damage
4. Создаем filter_activator_name и настраиваем:
Name: filter_tol’ko_vilka
Filter mode: Allow entities that match criteria *(если поставить Disallow entities that match criteria, то все физический объекты будут цепляется в эту розетку, кроме вилки)
Filter name: vilka
5.Теперь там где наша розетка, внутри делаем браш и покрывает текстурой toolstrigger, переводим в trigger_teleport и настраиваем:
Name: teleport
Filter name: filter_tol’ko_vilka
Remote destination: cel’ *(место появления после телепортации)
Flags:
Убираем:
Clients
Ставим:
Physic objects*(только на физические объекты будет реагировать тригер)
6.Создаем info_target, даем ему name: cel’ и располагаем примерно как на скрине ниже.
Теперь насчет хэлпера в нашей вилке(vilka); выделяем наш физбокс, и ищем хэлпер*(фиолетовый кружок)
[/img]
Регулируем хэлпер на плоскостях. *(на скрине выше вид сверху)
И главное, что хэлпер - центр нашего физбокса(vilka), т.е., когда наша вилка телепортируется, она станет своим центром*(там где хэлпер), в центре info_target; и как мы расположен хэлпер, так оно и будет в розетке стоять!!! будьте очень точными, и пробуйте несколько раз расположить хэлпер, так чтобы, вилка не застревала в func_clip_vphysics*(иначе мы ее больше никогда не вытащим :) ), в той самой браше которую мы создали вначале.
Создания эффектов(опционально):
7. Создаемenv_beam*(месторасположения не имеет значения) и настраиваем*(настраиваем как хотим, ниже предложены мои настройки):
Name: 220v
Brightness: 100*(прозрачность)
Beam color(Red Green Blue): 255 245 121*(настраиваем сами)
Life: 0
Width of beam: 1
Amount of noise: 10
Sprite name: sprites/lgtning
Start entity: vilka
Ending entity: cel’
Flags:
Toggle
Далее создаем *(как на скрине) браш с текстурой toolstrigger, переводим в trigger_multiple, и настраиваем:
Name: vklu4atel’_ly4a
Filter name: filter_tol’ko_vilka
Flags:
Убираем:
Clients*(иначе игрок будет активировать)
Ставим:
Physics object
8.Создаем env_spark, примерно там где info_target и настраиваем:
Name: iskra
Magnitude: medium *(общий размер искры)
Spark Trail Length: medium
Flags:
Glow
Shade start*(так лучше смотрится)
9. И последнее, создаем env_sprite и настраиваем:
Name: lampa
Render FX: Hologram *(мне нравится)
Render mode: World space glow
FX amount: 200
FX color(Red Green Blue): 255 0 0
Sptire name: sprites/glow01.spr *(вполне хорошо смотрится)
Scale: 0.15 *(размер спрайта)
Size of Glow Proxy Geometry: 2 *(слишком больше не советую ставить, а то будете видеть спрайт через стены, модели и т.п; 2.0 вполне нормально)
Flags:
Start on
10. И наконец logic_relay, ставим где попало :crazy: ,вписываем name: restart; start disable: yes, и попутно начинаем настраивать outputs.
А) Начнем c vklu4atel’_ly4a *(тот самый trigger_multiple)
Б) Теперь teleport *(trigger_teleport)
В) Теперь vilka *(func_physbox)
Г)И наконец restart *(logic_relay)
В общем у вас есть полсекунды чтобы убрать вилку иначе она опять вставится, вилку можно сбить пулей/взрывом, взять в гравицапу, а так же в руку.
Исходники:
Последний раз редактировалось giant_lizard 27.10.2008, 21:46, всего редактировалось 3 раза.
Все что не попало ниже, т.е. ничего
- giant_lizard
- Маппер
- Сообщения: 364
- Зарегистрирован: 12.10.2007
- Откуда: ЗОНА 51
Фух... наконец-то закончил, в будущем может дополнью простой розеткой(из 2ух энтитий) :crazy:
Все что не попало ниже, т.е. ничего
- Backbreaker
- Маппер
- Сообщения: 1184
- Зарегистрирован: 27.12.2007
Крут 8)
1 func_physbox различить можно только если выделить курсором или поменять скин форума
2 В спойлере написал "Вокруг синего креста" . Было бы понятнее если было "Вокруг синей оси" и так с остальными цветами
3 Иходник весит всего 33кб и легко крепится к посту аттачем
А так се круто. Какнить на досуге попробую состряпать розетку :)
1 func_physbox различить можно только если выделить курсором или поменять скин форума
2 В спойлере написал "Вокруг синего креста" . Было бы понятнее если было "Вокруг синей оси" и так с остальными цветами
3 Иходник весит всего 33кб и легко крепится к посту аттачем
А так се круто. Какнить на досуге попробую состряпать розетку :)
- giant_lizard
- Маппер
- Сообщения: 364
- Зарегистрирован: 12.10.2007
- Откуда: ЗОНА 51
Спс :crazy: , исходник к посту прикрепил , изменил цвет физбоксаBackbreaker писал(а):Крут 8)
1 func_physbox различить можно только если выделить курсором или поменять скин форума
2 В спойлере написал "Вокруг синего креста" . Было бы понятнее если было "Вокруг синей оси" и так с остальными цветами
3 Иходник весит всего 33кб и легко крепится к посту аттачем
А так се круто. Какнить на досуге попробую состряпать розетку :)
Все что не попало ниже, т.е. ничего
-
- Маппер
- Сообщения: 1748
- Зарегистрирован: 18.02.2008
- Откуда: <удалено>
Отличный тутор!
Завязываю с играми
Мну в Xbox LIVE
- giant_lizard
- Маппер
- Сообщения: 364
- Зарегистрирован: 12.10.2007
- Откуда: ЗОНА 51
добавте в туторы :crazy:
Все что не попало ниже, т.е. ничего
Тутор класный!!
Да... а вот из меня туторописатель хреновый
Да... а вот из меня туторописатель хреновый
I rule, therefore i am.®
Fully resurrected now!
Happy legacy Garry's Mod, Team Fortress 2 and Left 4 Dead user!
ಥ_ಥ кое-кто class update!
Happy legacy Garry's Mod, Team Fortress 2 and Left 4 Dead user!
- giant_lizard
- Маппер
- Сообщения: 364
- Зарегистрирован: 12.10.2007
- Откуда: ЗОНА 51
^_^ нужно просто терпения чтобы написать нормальныйWhyNot писал(а):Тутор класный!!
Да... а вот из меня туторописатель хреновый
Все что не попало ниже, т.е. ничего
- giant_lizard
- Маппер
- Сообщения: 364
- Зарегистрирован: 12.10.2007
- Откуда: ЗОНА 51
не знаю, на ксс не пробовал
пс: сработает это точно если энтитии такие же точно есть и работоспособны :)
пс: сработает это точно если энтитии такие же точно есть и работоспособны :)
Все что не попало ниже, т.е. ничего
-
- Маппер
- Сообщения: 1748
- Зарегистрирован: 18.02.2008
- Откуда: <удалено>
Editor88
Пошел вон.
Пошел вон.
Завязываю с играми
Мну в Xbox LIVE