Вы используете устаревший браузер. Этот и другие сайты могут отображаться в нём некорректно. Вам необходимо обновить браузер или попробовать использовать другой.
Размер одного float = 4 байта, в матрице их 4 на 3, то есть 4 * 3 * 4 = 48 = 0x30 (в хексе), т.е. 0x30 это размер матрицы одной кости.
Т.к. они идут друг за другом умножается на индекс.
0xC/0x1C/0x2C это 3 колонка в каждой строке.
Матрица описывает поворот в 3 на 3 (от m00 до m22) и описывает основание (координату) xyz в m03,m13,m23.
То есть этот код просто возвращает координату каждой кости вытаскивания основание из матрицы.
Размер одного float = 4 байта, в матрице их 4 на 3, то есть 4 * 3 * 4 = 48 = 0x30 (в хексе), т.е. 0x30 это размер матрицы одной кости.
Т.к. они идут друг за другом умножается на индекс.
0xC/0x1C/0x2C это 3 колонка в каждой строке.
Матрица описывает поворот в 3 на 3 (от m00 до m22) и описывает основание (координату) xyz в m03,m13,m23.
То есть этот код просто возвращает координату каждой кости вытаскивания основание из матрицы.
.
А насчет почитать, дело в том чтобы дойти до матриц нужно сперва знать кучу другой информации (про вектора, и тд.), поэтому за одну статью вряд ли поймешь, но к примеру можешь посмотреть 3Blue1Brown перевод на ютубе, там есть небольшой курс по линейной алгебре, и там не только описывается но и показывается как матрицы действуют.
.
А насчет почитать, дело в том чтобы дойти до матриц нужно сперва знать кучу другой информации (про вектора, и тд.), поэтому за одну статью вряд ли поймешь, но к примеру можешь посмотреть 3Blue1Brown перевод на ютубе, там есть небольшой курс по линейной алгебре, и там не только описывается но и показывается как матрицы действуют.
.
А насчет почитать, дело в том чтобы дойти до матриц нужно сперва знать кучу другой информации (про вектора, и тд.), поэтому за одну статью вряд ли поймешь, но к примеру можешь посмотреть 3Blue1Brown перевод на ютубе, там есть небольшой курс по линейной алгебре, и там не только описывается но и показывается как матрицы действуют.
Сам список сущностей двусвязный, поэтому чтобы удобно проходить по ним вперед назад есть ссылки на след/пред ячейки.
0x10 это размер одной ячейки в списке.
В твоем коде есть неявное смещение +0x0, т.е. читается именно m_pEntity в каждой ячейке списка.
Сами сущности в списке распределены определенным образом:
- 0 всегда мир
- 1-65 это игроки, их максимум 64 может быть, не все из них заполнены
- 65+ остальные сущности
Так же я думаю в твоем коде есть ошибка, потому как итерация начинается с 0, но в первом проходе будет 0 - 1 = -1 т.е. переполнение.