mirror of
https://github.com/MihailRis/voxelcore.git
synced 2026-10-12 14:31:50 +00:00
add quat Lua library
This commit is contained in:
parent
b5e7b63a9d
commit
e0cb57a10a
10 changed files with 152 additions and 27 deletions
34
doc/ru/scripting/builtins/libquat.md
Normal file
34
doc/ru/scripting/builtins/libquat.md
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
# Библиотека *quat*
|
||||
|
||||
Библиотека для работы с кватернионами.
|
||||
|
||||
## Кватернион из матрицы - *mat4.from_quat(...)*
|
||||
|
||||
```lua
|
||||
-- создает кватернион на основе матрицы вращения
|
||||
quat.from_mat4(m: matrix)
|
||||
|
||||
-- записывает кватернион по матрице вращения в dst
|
||||
quat.from_mat4(m: matrix, dst: quat)
|
||||
```
|
||||
|
||||
## Сферическая линейная интерполяция - *quat.slerp(...)*
|
||||
|
||||
Интерполяция всегда выполняется по короткому пути, а вращение выполняется с постоянной скоростью.
|
||||
|
||||
```lua
|
||||
-- создает кватернион как интерполяцию между a и b,
|
||||
-- где t - фактор интерполяции
|
||||
quat.slerp(a: quat, b: quat, t: number)
|
||||
|
||||
-- записывает кватернион как интерполяцию между a и b в dst,
|
||||
-- где t - фактор интерполяции
|
||||
quat.slerp(a: quat, b: quat, t: number, dst: quat)
|
||||
```
|
||||
|
||||
## Перевод в строку - *quat.tostring(...)*
|
||||
|
||||
```lua
|
||||
-- возвращает строку представляющую содержимое кватерниона
|
||||
quat.tostring(q: quat)
|
||||
```
|
||||
Loading…
Add table
Add a link
Reference in a new issue