mirror of
https://github.com/MihailRis/voxelcore.git
synced 2026-10-08 04:21:50 +00:00
Merge branch 'MihailRis:main' into main
This commit is contained in:
commit
e049f4ae0c
61 changed files with 1209 additions and 534 deletions
|
|
@ -4,14 +4,17 @@
|
|||
|
||||
Настройки погоды:
|
||||
|
||||
| Свойство | Описание | По-умолчанию |
|
||||
| ------------ | ---------------------------------------- | ------------ |
|
||||
| fall | Осадки (см. таблица 2) | {} |
|
||||
| clouds | Облачность [0.0, 1.0] | 0.0 |
|
||||
| fog_opacity | Максимальная плотность тумана [0.0, 1.0] | 0.0 |
|
||||
| fog_dencity | Плотность тумана | 1.0 |
|
||||
| fog_curve | Кривая тумана | 1.0 |
|
||||
| thunder_rate | Частота грома [0.0, 1.0] | 0.0 |
|
||||
| Свойство | Описание | По-умолчанию |
|
||||
| ------------- | ------------------------------------------ | ----------------- |
|
||||
| fall | Осадки (см. таблица 2) | {} |
|
||||
| clouds | Облачность [0.0, 1.0] | 0.0 |
|
||||
| fog_opacity | Максимальная плотность тумана [0.0, 1.0] | 0.0 |
|
||||
| fog_dencity | Плотность тумана | 1.0 |
|
||||
| fog_curve | Кривая тумана | 1.0 |
|
||||
| thunder_rate | Частота грома [0.0, 1.0] | 0.0 |
|
||||
| sky_tint | Множитель цвета неба | {1, 1, 1} |
|
||||
| clouds_tint | Множитель цвета облаков | {1, 1, 1} |
|
||||
| min_sky_light | Минимальный свет излучаемый небом (лунный) | {0.2, 0.25, 0.33} |
|
||||
|
||||
Осадки:
|
||||
|
||||
|
|
@ -50,4 +53,4 @@ gfx.weather.get_fall_intensity() -> number
|
|||
|
||||
-- Проверяет, происходит ли в данный момент переключение погоды
|
||||
gfx.weather.is_transition() -> boolean
|
||||
```
|
||||
```
|
||||
|
|
|
|||
|
|
@ -114,15 +114,29 @@ mat4.decompose(m: matrix)
|
|||
} или nil
|
||||
```
|
||||
|
||||
## Отслеживание точки *mat4.look_at(...)*
|
||||
## Отслеживание точки - *mat4.look_at(...)*
|
||||
|
||||
```lua
|
||||
-- cоздает матрицу вида с точки 'eye' на точку 'center', где вектор 'up' определяет верх.
|
||||
-- cоздаёт матрицу вида с точки 'eye' на точку 'center', где вектор 'up' определяет верх.
|
||||
mat4.look_at(eye: vec3, center: vec3, up: vec3)
|
||||
-- записывает матрицу вида в dst
|
||||
mat4.look_at(eye: vec3, center: vec3, up: vec3, dst: matrix)
|
||||
```
|
||||
|
||||
## Расчёт матрицы перспективы - *mat4.perspective*
|
||||
|
||||
```lua
|
||||
-- возвращает расчитанную матрицу перспективы.
|
||||
-- параметр fov принимает значение вертикального поля зрения в градусах.
|
||||
-- параметр ratio задаёт отношение сторон (сторона X к стороне Y, пример: для монитора 800:600 отношение сторон равно 4 к 3, или 4 / 3).
|
||||
-- параметр near задаёт расстояние от камеры до плоскости Near.
|
||||
-- параметр far задаёт расстояние от камеры до плоскости Far.
|
||||
mat4.perspective(fov: number, ratio: number, near: number, far: number) -> mat4
|
||||
|
||||
-- расчитывает матрицу перспективы на основе переданных значений и записывает её в переменную dst.
|
||||
mat4.perspective(fov: number, ratio: number, near: number, far: number, dst: mat4) -> nil
|
||||
```
|
||||
|
||||
## Перевод в строку - *mat4.tostring(...)*
|
||||
|
||||
```lua
|
||||
|
|
|
|||
|
|
@ -82,6 +82,7 @@ pack.get_info(packid: string) -> {
|
|||
- `!` - required
|
||||
- `?` - optional
|
||||
- `~` - weak
|
||||
|
||||
например `!teal`
|
||||
|
||||
Для получения информации о нескольких паках используйте таблицу id, чтобы не
|
||||
|
|
@ -101,4 +102,4 @@ pack.assemble(packids: table<string>) -> table<string>
|
|||
pack.request_writeable(packid: string, callback: function(string))
|
||||
```
|
||||
|
||||
Запрашивает у пользователя право на модификацию пака. При подтвержении новая точка входа будет передана в callback.
|
||||
Запрашивает у пользователя право на модификацию пака. При подтвержении новая точка входа будет передана в callback.
|
||||
|
|
|
|||
|
|
@ -2,22 +2,34 @@
|
|||
|
||||
Библиотека для работы с кватернионами.
|
||||
|
||||
## Кватернион из матрицы - *mat4.from_quat(...)*
|
||||
## Кватернион из матрицы - *quat.from_mat4(...)*
|
||||
|
||||
```lua
|
||||
-- создает кватернион на основе матрицы вращения
|
||||
-- создаёт кватернион на основе матрицы вращения
|
||||
quat.from_mat4(m: matrix) -> quat
|
||||
|
||||
-- записывает кватернион по матрице вращения в dst
|
||||
quat.from_mat4(m: matrix, dst: quat)
|
||||
```
|
||||
|
||||
## Кватернион из углов Эйлера - *quat.from_euler(...)*
|
||||
|
||||
```lua
|
||||
-- создаёт кватернион на основе вектора, содержащего углы Эйлера в порядке XYZ (pitch, yaw, roll)
|
||||
-- (значения углов строго в градусах)
|
||||
quat.from_euler(euler: vec3) -> quat
|
||||
|
||||
-- записывает кватернион в dst на основе вектора, содержащего углы Эйлера в порядке XYZ (pitch, yaw, roll)
|
||||
-- (значения углов строго в градусах)
|
||||
quat.from_euler(euler: vec3, dst: quat)
|
||||
```
|
||||
|
||||
## Сферическая линейная интерполяция - *quat.slerp(...)*
|
||||
|
||||
Интерполяция всегда выполняется по короткому пути, а вращение выполняется с постоянной скоростью.
|
||||
|
||||
```lua
|
||||
-- создает кватернион как интерполяцию между a и b,
|
||||
-- создаёт кватернион как интерполяцию между a и b,
|
||||
-- где t - фактор интерполяции
|
||||
quat.slerp(a: quat, b: quat, t: number) -> quat
|
||||
|
||||
|
|
@ -29,6 +41,6 @@ quat.slerp(a: quat, b: quat, t: number, dst: quat)
|
|||
## Перевод в строку - *quat.tostring(...)*
|
||||
|
||||
```lua
|
||||
-- возвращает строку представляющую содержимое кватерниона
|
||||
-- возвращает строку, представляющую содержимое кватерниона
|
||||
quat.tostring(q: quat) -> string
|
||||
```
|
||||
|
|
|
|||
|
|
@ -114,6 +114,21 @@ body:set_crouching(enabled: bool)
|
|||
body:get_body_type() -> str
|
||||
-- Устанавливает тип физического тела
|
||||
body:set_body_type(type: str)
|
||||
|
||||
-- Возвращает материал тела (то же, что и у блоков)
|
||||
body:get_material() -> str
|
||||
-- Устанавливает материал тела
|
||||
body:set_material(material: str)
|
||||
|
||||
-- Возвращает массу тела
|
||||
body:get_mass() -> number
|
||||
-- Устанавливает массу тела
|
||||
body:set_mass(mass: number)
|
||||
|
||||
-- Возвращает упругость тела
|
||||
body:get_elasticity() -> number
|
||||
-- Устанавливает упругость тела
|
||||
body:set_elasticity(elasticity: number)
|
||||
```
|
||||
|
||||
### Skeleton
|
||||
|
|
|
|||
|
|
@ -137,6 +137,18 @@ io_stream:write_line(string)
|
|||
io_stream:read_fully(
|
||||
[опционально] useTable: boolean
|
||||
) -> Bytearray | table<number> | table<string> | string
|
||||
|
||||
--[[
|
||||
Устанавливает позицию в потоке
|
||||
Режимы:
|
||||
b - Задаёт позицию относительно начало файла
|
||||
c - Задаёт позицию относительно текущей позиции
|
||||
e - Задаёт позицию относительно конца файла
|
||||
--]]
|
||||
io_stream:seek(
|
||||
mode: string
|
||||
offset: number
|
||||
)
|
||||
```
|
||||
|
||||
## Методы Buffered-режима
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue