Flash Game Book (4 урок)
Три закона движения Ньютона
Исаак Ньютон (1642-1727), выдающийся физик и отец исчислений, разработал, среди прочих вещей, три фундаментальных закона движения.
1. "Тело, находящееся в покое, стремится оставаться в покое; тело, находящееся в движении, стремится оставаться в движении."
Для понимания этого закона, можно взять пример космонавта. Не имеет значения, что он делает, он не может перемещать свой центр тяжести. Есть только один способ, которым он может себя сдвинуть с места, ему нужно иметь другую систему, прикладывающую силу к нему, такую, как сила тяжести планеты.
Исходя из этого, давайте взглянем на первый закон Ньютона:
Векторная скорость системы не будет изменяться, пока к ней не будет приложена внешняя сила.
2. "Ускорение объекта обратно пропорционально его массе и пропорционально сумме приложенных внешних сил."
Математически это выглядит так:
F=m*a
где F - сила, m - масса, a - ускорение.
Общая сила является суммой всех векторов сил.
Давайте рассмотрим на примере.
Создадим новый слой.
На слое нарисуем объект (в моем примере это шарик).
Преобразуем объект в клип (F8) с именем shar.
Выберем наш созданный слой (в моем примере это myShar).
И впишем в него (в Actions-Frame):
ymov=0;
mass=1;
force1=30;
force2=-31;
netForce=force1+force2;
yaccel=netForce/mass;
_root.onEnterFrame=function(){
ymov+=yaccel;
shar._y+=ymov;
}
Обратите внимание, что подъемная сила имеет отрицательное значение. Это показывает, что сила прикладывается в направлении -y ("вверх"). Для перемещения шарика нам нужно знать его ускорение. Для нахождения ускорения мы используем второй закон Ньютона.
Процесс нахождения ускорения:
1). Сложить все силы. В нашем случае netForce=force1+force2.
2). Вычислить ускорения. Поскольку F=m*a, следовательно, a=F/m.
Когда вы протестируете фильм, вы можете наблюдать, поскольку подъемная сила имеет большее значение, чем сила тяжести, воздушный шарик поднимется вверх.
Конечная векторная скорость.
В нашем примере, шарик ускоряется без ограничения. Это означает что шарик будет подниматься все быстрее и быстрее и некогда не достигнет своего максимума. В играх, неплохо устанавливать верхний предел скорости для ваших объектов так, чтобы они не могли двигаться быстрее скорости, с которой вы сможете уследить за ними.
3. "Для каждого действия существиет равное по величине противодействие."