add quaternion mul* docs

This commit is contained in:
neveix 2026-08-15 14:01:46 +05:00
parent 585b8247d5
commit 22b70b701e
2 changed files with 59 additions and 1 deletions

View file

@ -2,6 +2,9 @@
Библиотека для работы с кватернионами.
Кватернионы задаюся таблицей, состоящей из 4 компонентов:
`{w, x, y, z}`
## Кватернион из матрицы - *quat.from_mat4(...)*
```lua
@ -24,6 +27,26 @@ quat.from_euler(euler: vec3) -> quat
quat.from_euler(euler: vec3, dst: quat)
```
## Композиция кватернионов - quat.mul(...)
```lua
-- Умножает два кватерниона (композиция поворотов)
quat.mul(a: quat, b: quat) -> quat
-- Записывает кватернион как произведение двух кватернионов (композиция поворотов)
quat.mul(a: quat, b: quat, dst: quat)
```
## Поворот 3д вектора на кватернион - quat.mul_vec3(...)
```lua
-- Поворачивает вектор на заданный кватернион
quat.mul_vec3(a: quat, b: vec3) -> vec3
-- Записывает результат поворота вектора на заданный кватернион
quat.mul_vec3(a: quat, b: vec3, dst: vec3)
```
## Сферическая линейная интерполяция - *quat.slerp(...)*
Интерполяция всегда выполняется по короткому пути, а вращение выполняется с постоянной скоростью.