Attention: Here be dragons
This is the latest
(unstable) version of this documentation, which may document features
not available in or compatible with released stable versions of Godot.
Checking the stable version of the documentation...
Label3D
Успадковує: GeometryInstance3D < VisualInstance3D < Node3D < Node < Object
Вузлом для відображення звичайного тексту в просторі 3D.
Опис
Вузлом для відображення звичайного тексту в просторі 3D. Налаштуйте різні властивості цього вузла, ви можете налаштувати такі речі, як зовнішній вигляд тексту і чи завжди він стикається з камерою.
Посібники
Властивості
|
||
|
||
|
||
|
||
|
||
AutowrapMode |
|
|
BitField[LineBreakFlag] |
|
|
|
||
cast_shadow |
|
|
|
||
|
||
|
||
gi_mode |
|
|
|
||
BitField[JustificationFlag] |
|
|
String |
|
|
|
||
|
||
|
||
Vector2 |
|
|
|
||
|
||
|
||
|
||
|
||
|
||
StructuredTextParser |
|
|
|
||
String |
|
|
Direction |
|
|
|
||
|
||
|
||
|
Методи
TriangleMesh |
generate_triangle_mesh() const |
get_draw_flag(flag: DrawFlags) const |
|
void |
set_draw_flag(flag: DrawFlags, enabled: bool) |
Переліки
enum DrawFlags: 🔗
DrawFlags FLAG_SHADED = 0
Якщо встановити, вогні в середовищі впливають на етикетку.
DrawFlags FLAG_DOUBLE_SIDED = 1
Якщо встановити, текст можна побачити з спини. Якщо ні, то текст невидимий при його пошуку ззаду.
DrawFlags FLAG_DISABLE_DEPTH_TEST = 2
Вимкнено глибинний тест, тому цей об'єкт намальовується на вершині всіх інших. Однак об'єкти, що намальовані після нього в порядку фіксування, можуть закривати його.
DrawFlags FLAG_FIXED_SIZE = 3
Етикетка масштабується глибиною, щоб він завжди виглядав на екрані.
DrawFlags FLAG_MAX = 4
Представляємо розмір DrawFlags enum.
enum AlphaCutMode: 🔗
AlphaCutMode ALPHA_CUT_DISABLED = 0
Цей режим виконує стандартну альфа-змішування. Це може відображати непрозорі зони, але проблеми, які відповідають прозорості, можуть бути видимими, коли багато прозорих матеріалів перекриття. GeometryInstance3D.cast_shadow не має ефекту, коли використовується цей режим прозорості; Label3D ніколи не буде лити тіні.
AlphaCutMode ALPHA_CUT_DISCARD = 1
Цей режим дозволяє повністю прозорі або повністю прозорі пікселів. Збережені краю будуть видимі, якщо ввімкнено деяку форму антиалюзування екрана (див. ProjectSettings.rendering/anti_aliasing/quality/screen_space_aa). Цей режим також відомий як alpha test або 1-bit прозорості.
Примітка: Цей режим може мати питання з антиалюзованими шрифтами та контурами, намагатися налаштування alpha_scissor_threshold або за допомогою MSDF шрифту.
Примітка: При використанні тексту з перекриттям glyphs (наприклад, cursive scripts), цей режим може мати питання, що стосуються прозорості між основним текстом та контуром.
AlphaCutMode ALPHA_CUT_OPAQUE_PREPASS = 2
Цей режим малює повністю опалювальні пікселів на глибину проходу. Це повільніше, ніж ALPHA_CUT_DISABLED або ALPHA_CUT_DISCARD, але це дозволяє відображати непрозорі ділянки і гладкі краї при використанні належного сортування.
Примітка: При використанні тексту з перекриттям glyphs (наприклад, cursive scripts), цей режим може мати питання, що стосуються прозорості між основним текстом та контуром.
AlphaCutMode ALPHA_CUT_HASH = 3
Цей режим відбиває всі значення нижче просторово-детермінаційного порогу, решта залишиться непрозорим.
Описи властивостей
float alpha_antialiasing_edge = 0.0 🔗
Порогове значення, при якому згладжування буде застосовано до альфа-каналу.
AlphaAntiAliasing alpha_antialiasing_mode = 0 🔗
void set_alpha_antialiasing(value: AlphaAntiAliasing)
AlphaAntiAliasing get_alpha_antialiasing()
Тип альфа-згладжування, який слід застосувати.
AlphaCutMode alpha_cut = 0 🔗
void set_alpha_cut_mode(value: AlphaCutMode)
AlphaCutMode get_alpha_cut_mode()
Режим альфа-вирізання, який буде використано для спрайта.
float alpha_hash_scale = 1.0 🔗
Шкала хешування для Alpha Hash. Рекомендовані значення від 0 до 2.
float alpha_scissor_threshold = 0.5 🔗
Пороги, в яких аспор альфа буде відхиляти значення.
AutowrapMode autowrap_mode = 0 🔗
void set_autowrap_mode(value: AutowrapMode)
AutowrapMode get_autowrap_mode()
Якщо встановлено значення, відмінне від TextServer.AUTOWRAP_OFF, текст обтікається всередині прямокутника, що обмежує вузол. Якщо змінити розмір вузла, його висота автоматично зміниться, щоб відобразити весь текст.
BitField[LineBreakFlag] autowrap_trim_flags = 192 🔗
void set_autowrap_trim_flags(value: BitField[LineBreakFlag])
BitField[LineBreakFlag] get_autowrap_trim_flags()
Прапорці обрізання пробілів при автоматичному перенесенні. Див. TextServer.BREAK_TRIM_START_EDGE_SPACES та TextServer.BREAK_TRIM_END_EDGE_SPACES для отримання додаткової інформації.
BillboardMode billboard = 0 🔗
void set_billboard_mode(value: BillboardMode)
BillboardMode get_billboard_mode()
Режим рекламного щита, який буде використано для етикетки.
Якщо true, текст можна побачити з спини, якщо false, він невидимий при перегляді його ззаду.
Якщо значення true, мітка відображається з однаковим розміром незалежно від відстані. Розмір мітки на екрані такий самий, як якби камера знаходилася на відстані 1.0 одиниць від початку координат мітки, незалежно від фактичної відстані від камери. Поле зору Camera3D (або Camera3D.size в ортогональному/усіченому режимі) все ще впливає на розмір, з яким малюється мітка.
Налаштування шрифту, що використовується для відображення тексту.
Розмір шрифту тексту Label3D. Щоб зробити шрифт більш детальним, коли закрийте, збільшуйте font_size при зменшенні pixel_size одночасно.
Більші розміри шрифтів вимагають більшого часу, щоб надати нові символи, які можуть викликати затирання під час гри.
HorizontalAlignment horizontal_alignment = 1 🔗
void set_horizontal_alignment(value: HorizontalAlignment)
HorizontalAlignment get_horizontal_alignment()
Керує горизонтальним вирівнюванням тексту. Підтримує вирівнювання по лівому краю, по центру, по правому краю та заповнення (також відоме як вирівнювання по ширині).
BitField[JustificationFlag] justification_flags = 163 🔗
void set_justification_flags(value: BitField[JustificationFlag])
BitField[JustificationFlag] get_justification_flags()
Правила вирівнювання заповнення рядків.
String language = "" 🔗
void set_language(value: String)
String get_language()
Код мови, що використовується для алгоритмів розриву рядків та формування тексту. Якщо залишити поле порожнім, використовується поточна локалізація.
Додатковий вертикальний інтервал між рядками (у пікселях), інтервал додається до рядкового спуску. Це значення може бути негативним.
Color modulate = Color(1, 1, 1, 1) 🔗
Текст Color Label3D.
Якщо true, тестування глибини вимкнено, а об’єкт буде намальовано в порядку візуалізації.
Vector2 offset = Vector2(0, 0) 🔗
void set_offset(value: Vector2)
Vector2 get_offset()
Зняття тексту (в пікселях).
Color outline_modulate = Color(0, 0, 0, 1) 🔗
Вміст текстового контуру.
int outline_render_priority = -1 🔗
Встановлює пріоритет рендерингу для текстового контуру. Більші пріоритетні об'єкти будуть відсортовані перед нижніми пріоритетними об'єктами.
Примітка: Це тільки стосується, якщо alpha_cut встановлюється на ALPHA_CUT_DISABLED (за замовчуванням значення).
Примітка: Це стосується сортування прозорих об'єктів. Це не вплине на те, що прозорі предмети сортуються відносно непрозорих об'єктів. Це тому, що об'єкти не відсортовані, при цьому прозорі об'єкти відсортовані від спини до фронту (до пріоритету).
Розмір контуру тексту.
Розмір ширини одного пікселя на етикетці для масштабування у 3D. Щоб шрифт виглядав детальнішим зблизька, збільште font_size та одночасно зменште pixel_size.
Встановлює пріоритет рендерингу для тексту. Більші пріоритетні об'єкти будуть відсортовані перед нижніми пріоритетними об'єктами.
Примітка: Це тільки стосується, якщо alpha_cut встановлюється на ALPHA_CUT_DISABLED (за замовчуванням значення).
Примітка: Це стосується сортування прозорих об'єктів. Це не вплине на те, що прозорі предмети сортуються відносно непрозорих об'єктів. Це тому, що об'єкти не відсортовані, при цьому прозорі об'єкти відсортовані від спини до фронту (до пріоритету).
Якщо true, то Light3D в Environment має вплив на етикетку.
StructuredTextParser structured_text_bidi_override = 0 🔗
void set_structured_text_bidi_override(value: StructuredTextParser)
StructuredTextParser get_structured_text_bidi_override()
Настроювання алгоритму BiDi для структурованого тексту.
Array structured_text_bidi_override_options = [] 🔗
void set_structured_text_bidi_override_options(value: Array)
Array get_structured_text_bidi_override_options()
Налаштуйте додаткові параметри для перенади BiDi.
String text = "" 🔗
void set_text(value: String)
String get_text()
Текст відображення на екрані.
Direction text_direction = 0 🔗
void set_text_direction(value: Direction)
Direction get_text_direction()
Основний напрямок написання тексту.
TextureFilter texture_filter = 3 🔗
void set_texture_filter(value: TextureFilter)
TextureFilter get_texture_filter()
Фільтруйте прапорці для текстури.
Якщо true, всі текстові дисплеї як UPPERCASE.
VerticalAlignment vertical_alignment = 1 🔗
void set_vertical_alignment(value: VerticalAlignment)
VerticalAlignment get_vertical_alignment()
Керує вертикальним вирівнюванням тексту. Підтримує вирівнювання по верху, по центру та знизу.
Ширина тексту (в пікселях), що використовується для автоматичного розриву та вирівнювання заповнення.
Описи методів
TriangleMesh generate_triangle_mesh() const 🔗
Повертаємо TriangleMesh з вершинами етикетки, які слідують за поточною конфігурацією (наприклад, її пам'ятний піксель_розмір).
bool get_draw_flag(flag: DrawFlags) const 🔗
Повертає значення вказаного прапора.
void set_draw_flag(flag: DrawFlags, enabled: bool) 🔗
Якщо значення true, то вказаний flag буде ввімкнено.