Games-source.narod.ru - Всё об играх на движке Source™
Учебники
Иллюзия бесконечного движения
Итак, вы хотите создать поезд, который мчится по бесконечной дороге, или грузовик как в Condition-Zero? Этот туториал просто создан для того, чтобы помочь вам.
Для начала хочу скозать, что подобный тутор уже был. Там описывалось, как создать иллюзию бесконечного движения при помощи func_conveuor, но такой способ хорош только при создании поезда в тонеле, а я же расскажу, как сделать бесконечный каньон или что-то вроде него.
Дорогу нашу, а точнее каньон, мы будем делать из кусочков (не задавайтесь лишними вопросами, смотрите скриншот ниже)
Создайте такой кусочек и отправте его в func_tracktrain. В параметрах ставте:
first stop target: train1_wp1 (это имя path_track с ваш кусочек начнет ехать)
Initial speed: 300
Max speed: 300.
Теперь скопируйте несколько раз ваш кусочек и соедините все кусочки в одну дорогу (чем больше кусочков, тем длиннее дорога). Смотрите скрин ниже...
Далее нужно у всех func_tracktrain поменять параметр first stop target (например, если у первого мы указали "train1_wp1", то у второго надо "train2_wp1", а у третьего "train3_wp1" и т.д), это нужно для того, чтобы наши кусочки дороги стартовали каждый со своей точки.
Закончив возню с first stop target, принимайтесь за сами path_track'и. Создайте один path_track и назовите его train_wp1 (аналогично параметру first stop target у func_tracktrain), скопируйте path_track и получившиеся сстартовые точки расставте над func_tarctrain'ами, как показано на рисунку ниже (не забудте указать им имена схожие с параметром first stop target у func_tracktrain, чтобы у каждого func_tracktrain была своя стартовая точка).
Теперь создадим основную дорожку, по которой будут ездить все func_train. Для этого создайте два path_track, первый поставте в начале дороги над первым func_tracktrain, дайте ему имя wp2 и укажите nexn stop target: wp1, а другой в конце дороги (немного дальше от последнего func_tracktrain), дайте ему имя wp1, и укажите next stop target: wp2 . Нам надо чтобы кусочки, доехав до wp1, моментально телепортировались на wp2, для этого во флагах wp1, укажите teleport. Теперь расположите эти wp1 и wp2, как показано на скриншоте.
Ах да, чуть не забыл в параметре next stop target остальных path_track'ов укажите wp1, чтобы при активации func_train'ы двигались к wp1. Все, осталось только сделать платформу на которой будет стоять info_player_start и обернуть наще дело sky box'ом.
Советы:
1) Используйте туман для того, чтобы скрыть концы дороги, и env_shake, чтобы добавить тряску.
2) Обязательно ставте на земле trigger_hurt для того, чтобы игрок падая с поезда умирал, и не увидел того безобразия, что творится на конце дороги :)
3) Если немного пофантозироапть, то можно сделать всякие тонели, мостики через коньон, да встречающиеся на пути поезда. Для этого создайте нужный вам объект и отправте его в func_train, сделайте ему дорожеу из двух path_track и заставте активироваться в определенный момент. А столбы можно прикреплять к уже имеющимся кусочкам дороги (func_tracktrain'ам), при помощи пораметра parent
Этот тутор не даёт вам реалистичной дороги, он только показывает вам её принцип действия. Чтобы сделать дорогу реалистичней, надо будет хорошо постараться. Сделать дорогу длиннее, скрыть маленькие недостатки и не дать игроку узнать этот принцип действия.
Статья http://source-inside.ru