Хочешь узнать как попасть в Second Life?

 

 

Русификатор для клиента Second Life версии 1.21.6.99587

Количество загрузок: 1210
Подробнее о русификаторе

Все права на русификатор принадлежат SecondRussia

 


Зарегистрироваться
Вспомнить пароль

Top-10


Первые шаги в Second Life. Часть 1

Регистрация аккаунта

Как заработать в Second Life легко и быстро!

Русификация SL-клиента

Халява, сэр!

LSL. Основы. Часть 1

Системные требования

Любовь единорога - это прекрасно!

Управляем "собой"

Москва в Second Life – это, безусловно, товарищество. Часть 1

 
     

Сейчас на сайте

Сейчас на сайте 3 пользователя и 3 гостя.

Пользователи на сайте

  • Ian Kas
  • Musasi.Tanabe
  • Vixen

Объявления


Школа "SecondRussia"

Заказ строительства учебного острова

Для работы над зрелищным проектом требуется скульптор

Открытие Second Kiev!

Empire Style and Black Cat Club presents

 
     

Афиша


В ближайшие дни в Second Life:

Новости Луксора

Школа "SecondRussia"

Афиша: интересные события в Second Life 28 ноября – 30 ноября 2008 года

Открытие Second Kiev!

Балет, балет, балет...

 
     

Транспортные средства в SL. Часть 3

Автор: alext      Время публикации: 19:59, 27.08.07
Темы:

Данная статья является продолжением перевода материала TutorialVehicle, размещенного на сайте LSL Wiki. Начало читайте здесь и здесь.

Управление транспортными средствами

Транспортным средством можно манипулировать с помощью внешнего воздействия и/или посредством таких функций как llApplyImpulse. Однако для обеспечения более простого и плавного управления лучше использовать двигатели. Направление движения объекта задается вызовом процедуры llSetVehicleVectorParam. Например, для того, чтобы заставить транспорт двигаться со скоростью 5 м/с вдоль своей локальной оси x нужно поместить в скрипт такую строку:

llSetVehicleVectorParam(VEHICLE_LINEAR_MOTOR_DIRECTION,<5, 0, 0>);

Усилие двигателя – не единственный его параметр, вы также можете контролировать скорость нарастания тяги двигателя (VEHICLE_LINEAR_MOTOR_TIMESCALE), а, кроме того, существует параметр, определяющий спад эффективности двигателя со временем (VEHICLE_LINEAR_MOTOR_DECAY_TIMESCALE).

Поворот транспортного средства осуществляется заданием параметра VEHICLE_ANGULAR_MOTOR_DIRECTION и других соответствующих параметров. Установкой некоторых флагов можно заставить угловой двигатель подчиняться движениям камеры в режиме вида от первого лица (mouselook).

Линейный двигатель

Следующие параметры используются для управления линейным двигателем:

VEHICLE_LINEAR_MOTOR_DIRECTION
Векторный параметр. Это скорость (в м/с), которую попытается развить транспортное средство. Задается относительно локального каркаса объекта. Максимальное значение равно 40.

VEHICLE_LINEAR_MOTOR_OFFSET
Векторный параметр. Задает точку, смещенную относительно центра массы транспортного средства, в которой прикладывается усилие линейного двигателя. Это позволяет линейному двигателю сообщать объекту момент вращения. Отсчитывается относительно локального каркаса объекта, максимальное значение равно 100 метров. Не стоит беспокоиться о стабильности – если транспортное средство начнет вращаться слишком быстро (со скоростью более 720 градусов в секунду), то вмешается демпфер угловой скорости и погасит скорость вращения. Причина, по которой данный параметр может быть столь большим, состоит в том, что он "соперничает" с другими характеристиками транспортного средства, такими как угловое смещение и вертикальная сила притяжения. Некоторые другие характеристики транспорта могут значительно снизить эффективность вращательного момента от смещенного линейного двигателя. В этом случае и пригодится длинный рычаг.

VEHICLE_LINEAR_MOTOR_TIMESCALE
Параметр в формате с плавающей точкой. Постоянная времени, определяет, как быстро двигатель сможет разогнать транспорт до заданной скорости. Минимальное значение составляет приблизительно 0,06 секунд.

VEHICLE_LINEAR_MOTOR_DECAY_TIMESCALE
Параметр в формате с плавающей точкой. Эффективность двигателя будет экспоненциально спадать в течение заданного параметром времени, но эффективность восстановится, если явным образом задать значение усилия двигателя. Максимальное значение равно 120 секунд. Данный параметр действует всегда.

Флаги, влияющие на линейный двигатель:

VEHICLE_FLAG_LIMIT_DEFLECTION_UP
Полезен для наземного транспорта. Установка этого флага фиксирует z-компоненту линейного двигателя (в мировых координатах) для предотвращения исчезновения гравитации.

Одного лишь параметра скорости двигателя недостаточно для создания всех необходимых транспортных средств. Например, некоторые захотят сделать автомобиль, который мгновенно набирает желаемую скорость, другим может понадобиться катер, который плавно разгоняется до заданной скорости. Для управления этим эффектом можно использовать параметр VEHICLE_LINEAR_MOTOR_TIMESCALE. В сущности, постоянная времени (timescale) двигателя определяет время экспоненциального нарастания скорости транспорта до ее полного значения.

Что произойдет если вы установите линейную скорость транспортного средства и так оставите этот параметр? Объект станет двигаться и никогда не остановится? Не обязательно: автоматическое ослабление действия двигателя будет постепенно снижать его эффективность после установки воздействия.

Каждый раз, когда вы задаете вектор действия двигателя, его сцепление немедленно начинает уменьшаться по экспоненциальному закону с постоянной времени, определяемой параметром VEHICLE_LINEAR_MOTOR_DECAY_TIMESCALE, так, что через некоторое время двигатель уже не будет оказывать никакого воздействия на объект. Данный параметр служит двум целям. Во-первых, поскольку его значение не может быть больше 120 секунд, и он всегда активен, это гарантирует, что транспорт не будет двигаться бесконечно долго в отсутствии активного управления (с клавиатуры или посредством команд в скрипте). Во-вторых, этот параметр может быть использован для манипулирования транспортным средством с помощью простой модели управления. То есть, вместо того, чтобы включать и выключать двигатель в зависимости от нажатия или отпускания какой-либо клавиши, постоянную времени затухания можно установить в малое значение, и задать включение двигателя по нажатию клавиши, а при ее отпускании он будет автоматически замедляться.

Поскольку эффективность двигателя переустанавливается в начальное положение, когда производится задание вектора воздействия двигателя, то установка нулевого значения вектора отличается от случая, когда эффективность двигателя полностью погасится. В первом случае объект попытается достигнуть нулевой скорости, во втором – двигатель просто будет бездействовать.

Если вы установите значение параметра VEHICLE_LINEAR_MOTOR_DECAY_TIMESCALE меньшим, чем значение параметра VEHICLE_LINEAR_MOTOR_TIMESCALE, то эффективная амплитуда вектора воздействия двигателя будет уменьшена.

Продолжение следует.

Источник TutorialVehicle

Нет комментариев



Свежие комментарии


Alex пишет в Linden Lab борется с детскими аватарами  

Musasi.Tanabe пишет в Москва в Second Life – это, безусловно, товарищество. Часть 1  

Musasi.Tanabe пишет в Не пустим врага в дом родной!  

Musasi.Tanabe пишет в Заказ строительства учебного острова  

XaNaX пишет в при запуске открывается черное окно и сразу же само закрывается.  

lenna пишет в не могу зайти на сайт  

Vixen пишет в Виртуальный призыв в армию  

Zmeja пишет в Новости Луксора  

Alex пишет в Linden Lab нельзя доверять информацию о кредитных картах?  

Frige Fride пишет в Что такое любовь и с чем ее едят?  

 
   

Галерея


Последнее добавленное изображение.
Самое популярное изображениеСлучайное изображение
 
     

Подписка

RSS лента статей

RSS лента новостей

RSS лента блогов

Партнеры

sm_sl.gif

rz_sl.gif

Статистика




Rambler's Top100

количество читателей онлайн и всего