zaicev9797, фиг знает как они реализовали свои движки. Но они сложные. Например в unreal трудно будет найти скорее всего что ты хочешь, а может и нет. Ну вот например физика. В цикле есть метод update ( ), в нем ты логику задаешь, что объект будет делать при смене времени. А есть функция, которую не надо менять. Она запускается перед update, в ней проверяется, если объект добавлен к физическому движку, то выполнить действие. В box2d надо же объект вроде добавить в класс определённый. Например класс физического движка такой, он с глобальной областью видимости.
Код
void set_physix ( true ) {
Box2d.add ( this );
}
И всё, перед update выплняется функция, в которой Box2d обновляет позиции объектов. А потом update, где ты передвигаешься.