Physicsobject

Материал из wiki.appsalutecreator.com
Перейти к: навигация, поиск

Объект «Physicsobject» («Физ_объект»)

Необходим для описания объектов в физмире.

Объект типа «Physicsobject» можно создать выбрав > тип объекта > Game mechanic > Physicsobject

Физика1.PNG

Объекты типа «Physicsobject» - обязательно помещаются в группу физического мира «рhysicsworld».

Физика2.PNG Физика6.PNG

Свойства элемента:

1) Тип — тип физического тела: статическое, кинематическое и динамическое. Статические тела — имеют нулевую скорость, нулевую массу, перемещать во вьювере нельзя. Динамические тела — имеют не нулевую скорость, положительную массу, перемещать во вьювере можно. Кинематические тела — имеют не нулевую скорость, нулевую массу, перемещение определяется по законам кинематики. На данный момент скорость и время движения задать в редакторе нельзя.

2) Плотность — плотность тела. Влияет на массу тела. В большинстве игр имеет смысл вычислять массу, учитывая плотность фигур. Это позволяет проверить, имеют ли тела реалистичную массу. Например, в механизме наподобие весов, который требует точные значения масс.

3) Трение — сила трения. По умолчанию стоит 0,3. Чем выше сила трения тем тяжелее воздействовать на него другим телом. Зависит от рода соприкасающийся поверхностей и от величины нагрузки.

4) Отскок — это отношение скорости отскока к скорости падения.

5) Линейное демпфирование — затухание линейного движения тела, его отскоков.

6) Угловое демпфирование — затухание вращения тела.

7) Масштаб гравитации — сила притяжения тела по вертикали. По умолчанию стоит 1. Если увеличить масштаб гравитации тело будет падать быстрее. Например: для того чтобы физические тела не отскакивали друг от друга, но быстро опускались в объект (например мячики падают в емкость), то нужно увеличить линейное демпфирование и масштаб гравитации.

8) Невращаемое — если 0 — тело можно вращать, иначе — нет.

9) Слушатель столкновений — дает возможность при соприкасании с другим физ_объектом перевести какой-то объект (например машину) из одного состояние в другое. Задается: 1) Выбираем два физ_объекта, которые будут сталкиваться. 2) Выбираем один из них, вызываем слушатель столкновений (правая кнопка мыши по свойствам физ_объекта). 3) В параметрах указываем объект (физ_объект с которым произойдет столкновение), слушатель — объект, состояние которого измениться на момент столкновения, начало — состояние, в которое переводиться слушатель на момент столкновения, конец - состояние, в которое переводится слушатель в конце столкновения.

Например: при попадании мячом по попугаю, попугай начинает кричать. Создаем для попугая машину parrot_1, в которой прописываем состояния: 2 — спокойный, 4 — начинает кричать. Создаем статический физ_объект parrot_1, который делаем невидимый (по альфе ставим 0) и задаем положение в месте размещения машины parrot_1. Создаем динамический физ_объект ball (в данном примере — это мяч) и задаем ему слушатель столкновений. 7 pppp.jpg 8 pppp.jpg

6 phyz.jpg

Состояния

Общие

Физ-объекты могут иметь состояния active и inactive.

  • active - это включенное состояние объекта, в котором он является объектом физического мира и взаимодействует с другими объектами
  • inactive - это ввыключенное состояние объекта, в котором он не является объектом физического мира и не взаимодействует с другими объектами

Физика3.PNG

Специальные

Физ-объекты Также имеют специальные параметры и состояния для совершения над ними действий. Будут описаны в виде:

  • описание
    • параметр который надо задать
    • состояние в которое надо перевести физобъект


  • Задание скорости. Меняется только модуль вектора скорости, направление не меняется.
    • st_vel - скорость
    • velocity


  • Мгновенное перемещение(телепортация).
    • st_pos_x - координата по X
    • st_pos_y - координата по Y
    • transform


  • Перемещение с заданной скоростью.
    • st_pos_x - координата по X
    • st_pos_y - координата по Y
    • st_vel - скорость
    • target


  • Задание направления вектора скорости
    • st_move_phi - угол в градусах. Отсчёт от 12 часов на часах. 12 часов - 0 градусов; 3 - 90; 6 - 180 и т.д.
    • st_vel - скорость
    • move


менять состояние можно машиной из вне

например :

Физика4.PNG

Настройки формы

Физ_объектами могут быть не только прямоугольники. Шейп (Shape) можно задавать полигоном и кругом в Shape editor(Находится в редакторе ресурсов). Но следует помнить, что количество вершин в полигоне должно быть от 3 до 8. Создавать новую шейп-фигуру можно несколькими полигонами.

Физика5.PNG