commit
5039bdfc63
86
doc/en/3d-text.md
Normal file
86
doc/en/3d-text.md
Normal file
@ -0,0 +1,86 @@
|
||||
# 3D Text
|
||||
|
||||
2D text displayed in 3D space.
|
||||
|
||||
The appearance of 3D text, is configured via a table, like [particles](particles.md). All fields are optional.
|
||||
|
||||
| Field | Description | Default |
|
||||
| -------------- | ---------------------------- | ---------------- |
|
||||
| display | Display format | static_billboard |
|
||||
| color | Text color | {1, 1, 1, 1} |
|
||||
| scale | Text scale | 1 |
|
||||
| renderDistance | Text rendering distance | 32 |
|
||||
| xray_opacity | Visibility through obstacles | 0 |
|
||||
| perspective | Perspective coefficient | 1 |
|
||||
|
||||
Available display formats:
|
||||
|
||||
| Format | Description |
|
||||
| ----------------- | ----------------------------------------------------------------- |
|
||||
| static_billboard | Simple 3D text in the world with manual size and rotation control |
|
||||
| y_free_billboard | Freely rotating text on the Y axis facing the camera |
|
||||
| xy_free_billboard | Freely rotating text facing the camera |
|
||||
| projected | Projected text (displayed in screen coordinates) |
|
||||
|
||||
## *gfx.text3d* library
|
||||
|
||||
```lua
|
||||
gfx.text3d.show(
|
||||
-- text position
|
||||
position: vec3,
|
||||
-- text to display
|
||||
text: str,
|
||||
-- text display settings table
|
||||
preset: table,
|
||||
-- additional text display settings table
|
||||
[optional] extension: table
|
||||
) -> int
|
||||
```
|
||||
|
||||
Creates 3D text, returning its id.
|
||||
|
||||
```lua
|
||||
gfx.text3d.hide(id: int)
|
||||
```
|
||||
|
||||
Removes 3D text.
|
||||
|
||||
```lua
|
||||
gfx.text3d.get_text(id: int) -> str
|
||||
gfx.text3d.set_text(id: int, text: str)
|
||||
```
|
||||
|
||||
Text getter and setter.
|
||||
|
||||
```lua
|
||||
gfx.text3d.get_pos(id: int) -> vec3
|
||||
gfx.text3d.set_pos(id: int, pos: vec3)
|
||||
```
|
||||
|
||||
Text position getter and setter.
|
||||
|
||||
```lua
|
||||
gfx.text3d.get_axis_x(id: int) -> vec3
|
||||
gfx.text3d.set_axis_x(id: int, pos: vec3)
|
||||
```
|
||||
|
||||
Getter and setter of vector X.
|
||||
|
||||
```lua
|
||||
gfx.text3d.get_axis_y(id: int) -> vec3
|
||||
gfx.text3d.set_axis_y(id: int, pos: vec3)
|
||||
```
|
||||
|
||||
Getter and setter of vector Y.
|
||||
|
||||
```lua
|
||||
gfx.text3d.set_rotation(id: int, rotation: mat4)
|
||||
```
|
||||
|
||||
Sets the text rotation (Sets the rotated vectors X,Y).
|
||||
|
||||
```lua
|
||||
gfx.text3d.update_settings(id: int, preset: table)
|
||||
```
|
||||
|
||||
Updates text display settings.
|
||||
@ -9,10 +9,14 @@ Subsections:
|
||||
- [UI properties and methods](scripting/ui.md)
|
||||
- [Entities and components](scripting/ecs.md)
|
||||
- [Libraries](#)
|
||||
- [base64](scripting/builtins/libbase64.md)
|
||||
- [bjson, json, toml](scripting/filesystem.md)
|
||||
- [block](scripting/builtins/libblock.md)
|
||||
- [cameras](scripting/builtins/libcameras.md)
|
||||
- [entities](scripting/builtins/libentities.md)
|
||||
- [file](scripting/builtins/libfile.md)
|
||||
- [gfx.particles](particles.md#gfxparticles-library)
|
||||
- [gfx.text3d](3d-text.md#gfxtext3d-library)
|
||||
- [gui](scripting/builtins/libgui.md)
|
||||
- [hud](scripting/builtins/libhud.md)
|
||||
- [inventory](scripting/builtins/libinventory.md)
|
||||
|
||||
11
doc/en/scripting/builtins/libbase64.md
Normal file
11
doc/en/scripting/builtins/libbase64.md
Normal file
@ -0,0 +1,11 @@
|
||||
# *base64* library
|
||||
|
||||
Library for base64 encoding/decoding.
|
||||
|
||||
```lua
|
||||
-- Encode bytes to base64 string
|
||||
base64.encode(bytes: table|ByteArray) -> str
|
||||
|
||||
-- Decode base64 string to ByteArray or lua table if second argument is set to true
|
||||
base64.decode(base64string: str, [optional]usetable: bool=false) -> table|ByteArray
|
||||
```
|
||||
86
doc/ru/3d-text.md
Normal file
86
doc/ru/3d-text.md
Normal file
@ -0,0 +1,86 @@
|
||||
# 3D Текст
|
||||
|
||||
2D текст отображаемый в 3D пространстве.
|
||||
|
||||
Вид 3D текста, как и [частицы](particles.md), настраивается через таблицу, все поля которой опциональны.
|
||||
|
||||
| Поле | Описание | По-умолчанию |
|
||||
| --------------- | ------------------------------------------------------- | ----------------- |
|
||||
| display | Формат отображения | static_billboard |
|
||||
| color | Цвет текста | {1, 1, 1, 1} |
|
||||
| scale | Масштаб | 1 |
|
||||
| renderDistance | Дистанция отрисовки текста | 32 |
|
||||
| xray_opacity | Коэффициент видимости через препятствия (просвечивание) | 0 |
|
||||
| perspective | Коэффициент перспективы | 1 |
|
||||
|
||||
Доступные форматы отображения:
|
||||
|
||||
| Формат | Описание |
|
||||
| ----------------- | ----------------------------------------------------------------- |
|
||||
| static_billboard | Простой 3D текст в мире с ручным управлением размером и вращением |
|
||||
| y_free_billboard | Свободно вращающийся по оси Y текст, направляющийся на камеру |
|
||||
| xy_free_billboard | Свободно вращающийся текст, направляющийся на камеру |
|
||||
| projected | Проецируемый текст (отображается в экранной системе координат) |
|
||||
|
||||
## Библиотека *gfx.text3d*
|
||||
|
||||
```lua
|
||||
gfx.text3d.show(
|
||||
-- позиция текста
|
||||
position: vec3,
|
||||
-- отображаемый текст
|
||||
text: str,
|
||||
-- таблица настроек отображение текста
|
||||
preset: table,
|
||||
-- дополнительная таблица настроек отображения текста
|
||||
[опционально] extension: table
|
||||
) -> int
|
||||
```
|
||||
|
||||
Создаёт 3D текст, возвращая его id.
|
||||
|
||||
```lua
|
||||
gfx.text3d.hide(id: int)
|
||||
```
|
||||
|
||||
Удаляет 3D текст.
|
||||
|
||||
```lua
|
||||
gfx.text3d.get_text(id: int) -> str
|
||||
gfx.text3d.set_text(id: int, text: str)
|
||||
```
|
||||
|
||||
Геттер и сеттер текста.
|
||||
|
||||
```lua
|
||||
gfx.text3d.get_pos(id: int) -> vec3
|
||||
gfx.text3d.set_pos(id: int, pos: vec3)
|
||||
```
|
||||
|
||||
Геттер и сеттер позиции текста.
|
||||
|
||||
```lua
|
||||
gfx.text3d.get_axis_x(id: int) -> vec3
|
||||
gfx.text3d.set_axis_x(id: int, pos: vec3)
|
||||
```
|
||||
|
||||
Геттер и сеттер вектора X.
|
||||
|
||||
```lua
|
||||
gfx.text3d.get_axis_y(id: int) -> vec3
|
||||
gfx.text3d.set_axis_y(id: int, pos: vec3)
|
||||
```
|
||||
|
||||
Геттер и сеттер вектора Y.
|
||||
|
||||
```lua
|
||||
gfx.text3d.set_rotation(id: int, rotation: mat4)
|
||||
```
|
||||
|
||||
Устанавливает вращение текста (Устанавливает повернутые вектора X,Y).
|
||||
|
||||
```lua
|
||||
gfx.text3d.update_settings(id: int, preset: table)
|
||||
```
|
||||
|
||||
Обновляет настройки отображения текста.
|
||||
@ -9,10 +9,14 @@
|
||||
- [Свойства и методы UI элементов](scripting/ui.md)
|
||||
- [Сущности и компоненты](scripting/ecs.md)
|
||||
- [Библиотеки](#)
|
||||
- [base64](scripting/builtins/libbase64.md)
|
||||
- [bjson, json, toml](scripting/filesystem.md)
|
||||
- [block](scripting/builtins/libblock.md)
|
||||
- [cameras](scripting/builtins/libcameras.md)
|
||||
- [entities](scripting/builtins/libentities.md)
|
||||
- [file](scripting/builtins/libfile.md)
|
||||
- [gfx.particles](particles.md#библиотека-gfxparticles)
|
||||
- [gfx.text3d](3d-text.md#библиотека-gfxtext3d)
|
||||
- [gui](scripting/builtins/libgui.md)
|
||||
- [hud](scripting/builtins/libhud.md)
|
||||
- [inventory](scripting/builtins/libinventory.md)
|
||||
|
||||
11
doc/ru/scripting/builtins/libbase64.md
Normal file
11
doc/ru/scripting/builtins/libbase64.md
Normal file
@ -0,0 +1,11 @@
|
||||
# Библиотека *base64*
|
||||
|
||||
Библиотека для base64 кодирования/декодирования.
|
||||
|
||||
```lua
|
||||
-- Кодирует массив байт в base64 строку
|
||||
base64.encode(bytes: table|ByteArray) -> str
|
||||
|
||||
-- Декодирует base64 строку в ByteArray или таблицу чисел, если второй аргумент установлен на true
|
||||
base64.decode(base64string: str, [опционально]usetable: bool=false) -> table|ByteArray
|
||||
```
|
||||
@ -1,3 +1,4 @@
|
||||
display = "projected"
|
||||
xray_opacity = 0.3
|
||||
render_distance = 128
|
||||
perspective = 0.0
|
||||
|
||||
@ -20,9 +20,9 @@ struct NotePreset : public Serializable {
|
||||
NoteDisplayMode displayMode = NoteDisplayMode::STATIC_BILLBOARD;
|
||||
glm::vec4 color {1.0f};
|
||||
float scale = 1.0f;
|
||||
float renderDistance = 10.0f;
|
||||
float renderDistance = 32.0f;
|
||||
float xrayOpacity = 0.0f;
|
||||
float perspective = 0.0f;
|
||||
float perspective = 1.0f;
|
||||
|
||||
dv::value serialize() const override;
|
||||
void deserialize(const dv::value& src) override;
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user