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...
SpriteBase3D
Eredita: GeometryInstance3D < VisualInstance3D < Node3D < Node < Object
Ereditato da: AnimatedSprite3D, Sprite3D
Nodo di sprite 2D nell'ambiente 3D.
Descrizione
Un nodo che visualizza informazioni di una texture 2D in un ambiente 3D. Vedi anche Sprite3D dove sono definite molte altre proprietà.
Proprietà
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
Metodi
generate_triangle_mesh() const |
|
get_draw_flag(flag: DrawFlags) const |
|
get_item_rect() const |
|
void |
set_draw_flag(flag: DrawFlags, enabled: bool) |
Enumerazioni
enum DrawFlags: 🔗
DrawFlags FLAG_TRANSPARENT = 0
Se è impostata, la trasparenza e l'opacità della texture sono utilizzate per rendere invisibili quelle parti dello sprite.
DrawFlags FLAG_SHADED = 1
Se impostato, le luci nell'ambiente influiscono sullo sprite.
DrawFlags FLAG_DOUBLE_SIDED = 2
Se impostato, la texture può essere vista anche dal retro. Altrimenti, la texture è invisibile se guardata da dietro.
DrawFlags FLAG_DISABLE_DEPTH_TEST = 3
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 = 4
L'etichetta è ridimensionata in base alla profondità in modo che appaia sempre delle stesse dimensioni sullo schermo.
DrawFlags FLAG_MAX = 5
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.
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.
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.
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.
La direzione in cui è rivolta la faccia frontale della texture.
BillboardMode billboard = 0 🔗
void set_billboard_mode(value: BillboardMode)
BillboardMode get_billboard_mode()
La modalità billboard da usare per lo sprite.
Nota: Quando il billboarding è abilitato e il materiale proietta anche ombre, i billboard saranno rivolti verso la telecamera nella scena durante il rendering delle ombre. Nelle scene con più telecamere, non è possibile determinare l'ombra desiderata e ciò comporterà un comportamento indefinito. Vedi Richiesta di pull su GitHub #72638 per i dettagli.
Se true, la texture sarà centrata.
Se true, la texture è visibile anche dal retro, se false, è invisibile se guardata da dietro.
Se true, la texture viene renderizzata con le stesse dimensioni a prescindere dalla distanza. Le dimensioni della texture sullo schermo sono le stesse che avrebbe se la telecamera fosse a 1.0 unità di distanza dall'origine della texture, a prescindere dalla distanza effettiva dalla telecamera. Il campo visivo della Camera3D (o Camera3D.size in modalità ortogonale/tronco) influenza comunque le dimensioni della texture disegnata.
Se true, la texture è capovolta orizzontalmente.
Se true, la texture è capovolta verticalmente.
Color modulate = Color(1, 1, 1, 1) 🔗
Un valore di colore usato per moltiplicare i colori della texture. Può essere usato per la colorazione dell'atmosfera o per simulare il colore della luce ambientale.
Nota: A differenza di CanvasItem.modulate per il 2D, i colori con valori superiori a 1.0 (sovra-luminosi) non sono supportati.
Nota: Se un GeometryInstance3D.material_override è definito sul SpriteBase3D, la sostituzione del materiale deve essere configurata per tenere conto dei colori dei vertici per l'albedo. Altrimenti, il colore definito in modulate sarà ignorato. Per un BaseMaterial3D, BaseMaterial3D.vertex_color_use_as_albedo deve essere true. Per uno ShaderMaterial, ALBEDO *= COLOR.rgb; deve essere inserito nella funzione fragment() dello shader.
Se true, il test di profondità è disabilitato e l'oggetto sarà disegnato in ordine di rendering.
Vector2 offset = Vector2(0, 0) 🔗
L'offset di disegno della texture.
Nota: Quando si aumenta offset.y in Sprite3D, lo sprite si sposta verso l'alto nello spazio mondiale (ovvero +Y punta verso l'alto).
La dimensione della larghezza di un pixel sullo sprite per ridimensionarlo in 3D.
Imposta la priorità di rendering per lo sprite. 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. Ciò 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 influisce sullo sprite.
TextureFilter texture_filter = 3 🔗
void set_texture_filter(value: TextureFilter)
TextureFilter get_texture_filter()
Flag di filtro per la texture.
Nota: Il filtraggio lineare può causare artefatti attorno ai bordi, che sono particolarmente evidenti sulle texture opache. Per evitare ciò, usa texture con colori trasparenti o identici attorno ai bordi.
Se true, la trasparenza e l'opacità della texture sono utilizzate per rendere invisibili quelle parti dello sprite.
Descrizioni dei metodi
TriangleMesh generate_triangle_mesh() const 🔗
Restituisce un TriangleMesh con i vertici dello sprite che seguono la sua configurazione attuale (ad esempio, axis e pixel_size).
bool get_draw_flag(flag: DrawFlags) const 🔗
Restituisce il valore del flag specificato.
Restituisce il rettangolo che rappresenta questo sprite.
void set_draw_flag(flag: DrawFlags, enabled: bool) 🔗
Se true, il flag specificato sarà abilitato.