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
Eredita: GeometryInstance3D < VisualInstance3D < Node3D < Node < Object
Un nodo per visualizzare testo semplice nello spazio 3D.
Descrizione
Un nodo per visualizzare testo semplice nello spazio 3D. Regolando varie proprietà di questo nodo, puoi configurare cose come l'aspetto del testo e se è sempre rivolto verso la telecamera.
Tutorial
Proprietà
|
||
|
||
|
||
|
||
|
||
|
||
BitField[LineBreakFlag] |
|
|
|
||
cast_shadow |
|
|
|
||
|
||
|
||
gi_mode |
|
|
|
||
BitField[JustificationFlag] |
|
|
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
Metodi
generate_triangle_mesh() const |
|
get_draw_flag(flag: DrawFlags) const |
|
void |
set_draw_flag(flag: DrawFlags, enabled: bool) |
Enumerazioni
enum DrawFlags: 🔗
DrawFlags FLAG_SHADED = 0
Se impostato, le luci nell'ambiente influiscono sull'etichetta.
DrawFlags FLAG_DOUBLE_SIDED = 1
Se impostato, il testo può essere visto anche dal retro. Altrimenti, il testo è invisibile guardandolo da dietro.
DrawFlags FLAG_DISABLE_DEPTH_TEST = 2
Disattiva il test di profondità, quindi questo oggetto viene disegnato sopra tutti gli altri. Tuttavia, gli oggetti disegnati dopo di esso nell'ordine di disegno potrebbero coprirlo.
DrawFlags FLAG_FIXED_SIZE = 3
L'etichetta è ridimensionata in base alla profondità in modo che appaia sempre delle stesse dimensioni sullo schermo.
DrawFlags FLAG_MAX = 4
Rappresenta la dimensione dell'enumerazione DrawFlags.
enum AlphaCutMode: 🔗
AlphaCutMode ALPHA_CUT_DISABLED = 0
Questa modalità esegue la fusione alfa standard. Può visualizzare aree traslucide, ma potrebbero essere visibili problemi di ordinamento della trasparenza quando più materiali trasparenti si sovrappongono. GeometryInstance3D.cast_shadow non ha effetto quando si usa questa modalità di trasparenza; Il Label3D non proietterà mai ombre.
AlphaCutMode ALPHA_CUT_DISCARD = 1
Questa modalità consente solo pixel completamente trasparenti o completamente opachi. Saranno visibili bordi netti a meno che non sia abilitata una qualche forma di antialiasing di spazio dello schermo (vedi ProjectSettings.rendering/anti_aliasing/quality/screen_space_aa). Questa modalità è anche nota come alpha testing o trasparenza a 1 bit.
Nota: Questa modalità potrebbe causare problemi con font e contorni con antialiasing, provare a regolare alpha_scissor_threshold o utilizzare un font MSDF.
Nota: Quando si utilizza testo con glifi sovrapposti (ad esempio, corsivi), questa modalità potrebbe causare problemi di ordinamento della trasparenza tra il testo principale e il contorno.
AlphaCutMode ALPHA_CUT_OPAQUE_PREPASS = 2
Questa modalità disegna pixel completamente opachi nel pre-passaggio di profondità. È più lenta di ALPHA_CUT_DISABLED o ALPHA_CUT_DISCARD, ma consente di visualizzare aree traslucide e bordi lisci usando un ordinamento corretto.
Nota: Quando si utilizza testo con glifi sovrapposti (ad esempio, corsivi), questa modalità potrebbe causare problemi di ordinamento della trasparenza tra il testo principale e il contorno.
AlphaCutMode ALPHA_CUT_HASH = 3
Questa modalità taglia tutti i valori al di sotto di una soglia spazialmente deterministica, il resto rimarrà opaco.
Descrizioni delle proprietà
float alpha_antialiasing_edge = 0.0 🔗
Soglia alla quale sarà applicato l'antialiasing sul canale alfa.
AlphaAntiAliasing alpha_antialiasing_mode = 0 🔗
void set_alpha_antialiasing(value: AlphaAntiAliasing)
AlphaAntiAliasing get_alpha_antialiasing()
Il tipo di antialiasing dell'alfa da applicare.
AlphaCutMode alpha_cut = 0 🔗
void set_alpha_cut_mode(value: AlphaCutMode)
AlphaCutMode get_alpha_cut_mode()
La modalità di ritaglio alfa da utilizzare per lo sprite.
float alpha_hash_scale = 1.0 🔗
La scala di hashing per l'Alpha Hash. Valori consigliati tra 0 e 2.
float alpha_scissor_threshold = 0.5 🔗
Soglia oltre la quale l'alpha scissor scarterà i valori.
AutowrapMode autowrap_mode = 0 🔗
void set_autowrap_mode(value: AutowrapMode)
AutowrapMode get_autowrap_mode()
Se impostato su un valore diverso da TextServer.AUTOWRAP_OFF, il testo è avvolto all'interno del rettangolo di delimitazione del nodo. Se ridimensioni il nodo, cambierà automaticamente la sua altezza per mostrare tutto il testo.
BitField[LineBreakFlag] autowrap_trim_flags = 192 🔗
void set_autowrap_trim_flags(value: BitField[LineBreakFlag])
BitField[LineBreakFlag] get_autowrap_trim_flags()
Flag di troncamento spazi per il ritorno a capo automatico. Vedi TextServer.BREAK_TRIM_START_EDGE_SPACES e TextServer.BREAK_TRIM_END_EDGE_SPACES per ulteriori informazioni.
BillboardMode billboard = 0 🔗
void set_billboard_mode(value: BillboardMode)
BillboardMode get_billboard_mode()
La modalità di billboard da usare per l'etichetta.
Se true, il testo è visibile anche da dietro, se false, è invisibile guardandolo da dietro.
Se true, l'etichetta viene renderizzata con le stesse dimensioni a prescindere dalla distanza. Le dimensioni dell'etichetta sullo schermo sono le stesse che avrebbe se la telecamera fosse a 1.0 unità di distanza dall'origine dell'etichetta, a prescindere dalla distanza effettiva dalla telecamera. Il campo visivo della Camera3D (o Camera3D.size in modalità ortogonale/tronco) influenza comunque le dimensioni dell'etichetta disegnata.
Configurazione del font utilizzata per visualizzare il testo.
Dimensione del font del testo del Label3D. Per rendere il carattere più dettagliato da vicino, aumenta font_size e diminuisci pixel_size allo stesso tempo.
Dimensioni del font più elevate richiedono più tempo per renderizzare i nuovi caratteri, il che può causare scatti durante il gioco.
HorizontalAlignment horizontal_alignment = 1 🔗
void set_horizontal_alignment(value: HorizontalAlignment)
HorizontalAlignment get_horizontal_alignment()
Controlla l'allineamento orizzontale del testo. Supporta sinistra, centro, destra, e riempi (noto anche come giustifica).
BitField[JustificationFlag] justification_flags = 163 🔗
void set_justification_flags(value: BitField[JustificationFlag])
BitField[JustificationFlag] get_justification_flags()
Regole di allineamento del riempimento per le righe.
Language code used for line-breaking and text shaping algorithms. If left empty, the current locale is used instead.
Spaziatura verticale aggiuntiva tra le righe (in pixel), la spaziatura è aggiunta alla discesa della riga. Questo valore può essere negativo.
Color modulate = Color(1, 1, 1, 1) 🔗
Il Color del testo di Label3D.
Se true, il test di profondità è disabilitato e l'oggetto sarà disegnato in ordine di rendering.
Vector2 offset = Vector2(0, 0) 🔗
Lo scostamento del disegno del testo (in pixel).
Color outline_modulate = Color(0, 0, 0, 1) 🔗
La tinta del contorno del testo.
int outline_render_priority = -1 🔗
Imposta la priorità di rendering per il contorno del testo. Gli oggetti con priorità più alta saranno ordinati davanti agli oggetti con priorità più bassa.
Nota: Questo si applica solo se alpha_cut è impostato su ALPHA_CUT_DISABLED (valore predefinito).
Nota: Questo si applica solo all'ordinamento degli oggetti trasparenti. Non avrà alcun impatto sul modo in cui gli oggetti trasparenti sono ordinati rispetto agli oggetti opachi. Questo perché gli oggetti opachi non sono ordinati, mentre gli oggetti trasparenti sono ordinati da dietro in avanti (in base a priorità).
La dimensione del contorno del testo.
La dimensione della larghezza di un pixel sull'etichetta per ridimensionarla in 3D. Per far apparire il font più dettagliato da vicino, aumenta font_size e diminuisci pixel_size allo stesso tempo.
Imposta la priorità di rendering per il testo. Gli oggetti con priorità più alta saranno ordinati prima degli oggetti con priorità più bassa.
Nota: Questo si applica solo se alpha_cut è impostato su ALPHA_CUT_DISABLED (valore predefinito).
Nota: Questo si applica solo all'ordinamento degli oggetti trasparenti. Non avrà alcun impatto sul modo in cui gli oggetti trasparenti sono ordinati rispetto agli oggetti opachi. Questo perché gli oggetti opachi non sono ordinati, mentre gli oggetti trasparenti sono ordinati da dietro in avanti (in base alla priorità).
Se true, la Light3D nell'Environment ha effetti sull'etichetta.
StructuredTextParser structured_text_bidi_override = 0 🔗
void set_structured_text_bidi_override(value: StructuredTextParser)
StructuredTextParser get_structured_text_bidi_override()
Imposta la sostituzione dell'algoritmo BiDi per il testo strutturato.
Array structured_text_bidi_override_options = [] 🔗
void set_structured_text_bidi_override_options(value: Array)
Array get_structured_text_bidi_override_options()
Imposta opzioni aggiuntive per la sostituzione BiDi.
Il testo da visualizzare sullo schermo.
Direction text_direction = 0 🔗
Direzione di scrittura del testo di base.
TextureFilter texture_filter = 3 🔗
void set_texture_filter(value: TextureFilter)
TextureFilter get_texture_filter()
Flag di filtro per la texture.
Se true, tutto il testo è visualizzato in MAIUSCOLO.
VerticalAlignment vertical_alignment = 1 🔗
void set_vertical_alignment(value: VerticalAlignment)
VerticalAlignment get_vertical_alignment()
Controlla l'allineamento verticale del testo. Supporta sopra, centro, sotto.
Larghezza del testo (in pixel), utilizzata per l'allineamento automatico e di riempimento.
Descrizioni dei metodi
TriangleMesh generate_triangle_mesh() const 🔗
Restituisce un TriangleMesh con i vertici dell'etichetta che seguono la sua configurazione attuale (ad esempio il suo pixel_size).
bool get_draw_flag(flag: DrawFlags) const 🔗
Restituisce il valore del flag specificato.
void set_draw_flag(flag: DrawFlags, enabled: bool) 🔗
Se true, il flag specificato verrà abilitato.