Конгер Д.
Физика для разработчиков компьютерных игр
стр. 371

Как и в предыдущих примерах программ, функция Gamelnitialization () начинается с создания матриц отображения и проецирования. Затем она инициализирует свойства первого шарика в строках 21-41. Это свойства, значения которых одинаковы для всех трех шариков. Например, у всех этих шариков одинаковые радиусы и коэффициенты трения. Программа копирует значения этих свойств в другие шарики в строке 44.

Далее функция Gamelnitialization () задает свойства, уникальные для каждого шарика. Например, у каждого шарика своя масса, свое положение и своя величина вращательной инерции.

Предупреждение

Никогда не задавайте вращательную инерцию твердого тела равной нулю. Это физически невозможно. При написании этой программы я сам машинально сделал это, хотя и знал, что это невозможно. Поэтому я добавил некоторые проверки в метод rigid_body:: Rotationallnertia () в файле PMRigidBody.h, чтобы сделать такую ошибку невозможной.

Новости
Новый ролик Fallout 76 посвятили совместной работе
Компания Bethesda опубликовала новый ролик Fallout 76, продолжающий серию обучающих видео «Время приключений».
Battle for Azeroth: до 120-го уровня добрались за пять часов
Первый в мире игрок 120-го уровня появился уже через четыре с лишним часа после открытия аддона.