Конгер Д.
Физика для разработчиков компьютерных игр
стр. 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 при создании

Новости
Антивирусы и облачные сервисы портят сохранения Dark Souls Remastered
Вчера комьюнити-менеджер Bandai Namco под ником Izmar подтвердил проблему в Steam, посоветовав ограничить доступ антивирусов и других программ вроде облачных сервисов Google и Amazon к файлам ремастера Dark Souls.
Facebook анонсировала новую игровую платформу с интерактивными видео
«Facebook анонсировала несколько новых функций видеотрансляций, которые позволят пользователям сделать свои прямые трансляции похожими на игры с опросами и викторинами», — отмечает The Verge.