Phys hinge

Материал из CSM Wiki
Перейти к навигации Перейти к поиску

Оригинал Phys_hinge

Описание

Объект phys_hinge – это ограничитель физики, используемый для вращения физических объектов вокруг заданной оси вращения.

Особенности использования

  • Этот объект обновляется в каждом раунде. Это означает что любые изменения объекта НЕ будут наследоваться в последующих раундах.
  • Объект должен быть установлен там, где будет использоваться.
  • На карте может быть установлено множество этих объектов
  • Если не указано свойство "Entity 1" или "Entity 2", то физический ограничитель будет неподвижно висеть в воздухе.

Ошибки

Не обнаружены.

Заметки

Параметры

ppp all

  • Entity 1 – имя первого физического объекта для ограничителя;
  • Entity 2 – имя второго физического объекта для ограничителя;
  • Constraint System Manager – имя объекта phys_constraintsystem, в который будет добавлен этот ограничитель физики; все ограничители физики, добавленные в единую систему ограничений (phys_constraintsystem), не будут бороться друг с другом за право управлять объектами, что позволяет снизить нагрузку на сервер и выполнять более сложные физические взаимодействия не опасаясь физических коллизий; если указано это свойство, то функции "TurnOn" и "TurnOff" не будут работать;
  • Force Limit to Break (lbs) – минимальная сила, которую необходимо приложить для того чтобы сломать этот физический ограничитель;
  • Torque Limit to Break (lbs * dist) – минимальный момент силы, который необходимо приложить чтобы сломать этот физический ограничитель;
  • Play Sound on Break – звук, воспроизводимый когда ломается этот физический ограничитель (выбирается в Sound Resource Browser); громкость звука постоянна.
  • Friction – трение оси вращения; чем больше значение этого свойства тем сложнее "крутить" ось;
  • Hinge Axis – ось вращения (указывается при помощи Helper’а);
  • Load Scale – масштаб силы, прикладываемой для вращения оси вращения; используется только функцией "SetAngularVelocity"; чем выше значение этого свойства, тем сильнее будет действовать на ось вращения невидимый мотор, создаваемый функцией "SetAngularVelocity".

Флаги

  • No Collision until Break – если указан один из физических объектов "Entity 1" или "Entity 2", то он НЕ будет сталкиваться с World-геометрией карты; если указаны оба физических объекта "Entity 1" и "Entity 2", то они не будут сталкиваться между собой; эти ограничения накладываются до тех пор, пока не будет сломан этот физический ограничитель, или пока этот физический ограничитель не будет выключен функцией "TurnOff";
  • Start Inactive – в начале каждого раунда автоматически выполнять функцию "TurnOff"; не используется если указано свойство "Constraint System Manager".
  • Move Mass Center of the Entity to a Hinge – переместить центр масс одного из физических объектов "Entity 1" или "Entity 2" на ось вращения этого физического ограничителя; используется для того, чтобы физический объект не начинал своё движение в начале каждого раунда; используется только если НЕ указан один из объектов "Entity 1" или "Entity 2".

Inputs

  • TurnOn – включить объект; не работает если указано свойство "Constraint System Manager";
  • TurnOff – выключить объект; не работает если указано свойство "Constraint System Manager";
  • Break – сломать этот физический ограничитель; после вызова этой функции этот физический ограничитель удаляется, поэтому нельзя будет включать и выключать этот его функциями "TurnOn" и "TurnOff";
  • ConstraintBroken – аналогична функции "Break".
  • SetAngularVelocity <float> - указать скорость с которой будет вращаться ось вращения; ось будет вращать невидимый мотор; объекты "Entity 1" и "Entity 2" будут так же вращаться на оси.

Outputs

  • OnBreak – вызывается тогда, когда объект ломается;

Карта

csssdk_phys_hinge.vmf

Используются объекты

  • phys_hinge
  • prop_physics
  • func_physbox
  • logic_auto

Описание карты

На карте размещено несколько объектов func_physbox и prop_physics. Все эти объекты насажены на свою ось вращения. Объекты func_physbox, расположенные ближе всего к точке появления игроков, выглядят одинаково, но у левого ось вращения движется без трения, а у правого трение оси равно 10. Попробуйте покрутить и тот и другой и "почувствуйте" разницу. Две автомобильные покрышки так же насажены на общую ось вращения, но их движения никак не назвать правильными. Обратите внимание, что эти две автомобильные покрышки сохраняют дистанцию между собой, и копируют у друг друга углы поворотов, однако при этом они могут находиться в движении.

Обратите внимание на плиту, подвешенную в воздухе параллельно земле. Эта плита тоже вращается на оси вращения объекта phys_hinge, притом ось вращения проходит не по центру этой плиты, а по краю. Это результат работы флажка "Change mass to keep stable attachment to world", который автоматически в начале каждого раунда передвигает центр масс плиты на ось вращения объекта phys_hinge, тем самым предотвращая вращение плиты в начале каждого раунда.

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