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

Класс rigid_body открыто унаследован в классе immersible_ri-gid_body. Его private-элементы данных предназначены для хранения информации, которая не хранилась в объектах класса rigid_body. Во-первых, для объекта класса iramersible_rigid_body нужно хранить его объем. Объем нужен для вычисления плавучести, то есть веса воды, которую вытесняет объект. Значение элемента данных volume, в котором хранится объем, всегда должно быть больше 0.

Замечание

Значение элемента данных volume объекта класса immersible_ri-gid_body должно быть равно объему части объекта, погруженной в воду. Если объект полностью погружен в воду, то это значение должно быть равно полному объему объекта. Если объект плавает на поверхности воды, значение должно быть равно объему части объекта, находящейся ниже уровня воды.

Кроме того, в классе immersible_rigid_body есть переменная состояния, объявленная в строке 5 листинга 13.1. Эта переменная отслеживает, находится ли объект в воде. Каждый раз, когда объект попадает в воду, программа должна вызывать метод, который установит эту переменную в значение true. Когда объект покидает воду, значение этой переменной должно быть сброшено в false.

Когда объект попадает в воду, класс immersible_rigid_body должен приложить к нему выталкивающую силу, определяющуюся плавучестью объекта. Эта сила будет действовать постоянно, пока объект будет оставаться в воде. Поэтому в объектах класса immersible_rigid_body выталкивающая сила хранится как постоянно действующая сила. После того, как величина этой силы сохранена в элементе constantForce, она не должна прикладываться вновь. В классе immersible_rigid_body есть элемент данных buoyancyApplied, который следит за этим. Класс автоматически инициализирует этот элемент значением false при создании

Новости
Авторы Max Payne раскритиковали крупные игры
Глава по коммуникации студии Remedy Томас Пуха заявил, что в нынешних реалиях игрового рынка его команде пришлось реорганизовать производство.
Ubisoft выпустит эксклюзивную фигурку Father’s Calling
Компания Ubisoft сообщила, что коллекционная фигурка Father’s Calling, представляющая собой лидера организации «Врата Эдема» из Far Cry 5, поступит в продажу 22 марта 2018 года по цене 3999 рублей.