Texture2D

Eredita: Texture < Resource < RefCounted < Object

Ereditato da: AnimatedTexture, AtlasTexture, CameraTexture, CanvasTexture, CompressedTexture2D, CurveTexture, CurveXYZTexture, DPITexture, ExternalTexture, GradientTexture1D, GradientTexture2D, ImageTexture, MeshTexture, NoiseTexture2D, PlaceholderTexture2D, PortableCompressedTexture2D, Texture2DRD, ViewportTexture

Texture per 2D e 3D.

Descrizione

Una texture funziona registrando un'immagine nell'hardware video, che può poi essere utilizzata in modelli 3D, 2D Sprite2D o Control in una GUI.

Le texture sono spesso create caricandole da un file. Vedi @GDScript.load().

Texture2D è una base per altre risorse. Non può essere utilizzata direttamente.

Nota: La dimensione massima di una texture è 16384×16384 pixel a causa delle limitazioni dell'hardware grafico. Potrebbe non essere possibile importare texture più grandi.

Metodi

void

_draw(to_canvas_item: RID, pos: Vector2, modulate: Color, transpose: bool) virtual const

void

_draw_rect(to_canvas_item: RID, rect: Rect2, tile: bool, modulate: Color, transpose: bool) virtual const

void

_draw_rect_region(to_canvas_item: RID, rect: Rect2, src_rect: Rect2, modulate: Color, transpose: bool, clip_uv: bool) virtual const

int

_get_height() virtual required const

int

_get_width() virtual required const

bool

_has_alpha() virtual const

bool

_is_pixel_opaque(x: int, y: int) virtual const

Resource

create_placeholder() const

void

draw(canvas_item: RID, position: Vector2, modulate: Color = Color(1, 1, 1, 1), transpose: bool = false) const

void

draw_rect(canvas_item: RID, rect: Rect2, tile: bool, modulate: Color = Color(1, 1, 1, 1), transpose: bool = false) const

void

draw_rect_region(canvas_item: RID, rect: Rect2, src_rect: Rect2, modulate: Color = Color(1, 1, 1, 1), transpose: bool = false, clip_uv: bool = true) const

int

get_height() const

Image

get_image() const

Vector2

get_size() const

int

get_width() const

bool

has_alpha() const


Descrizioni dei metodi

void _draw(to_canvas_item: RID, pos: Vector2, modulate: Color, transpose: bool) virtual const 🔗

Chiamato quando si richiede che l'intera Texture2D sia disegnata su un CanvasItem, con l'offset in alto a sinistra specificato in pos. modulate specifica un moltiplicatore per i colori disegnati, mentre transpose specifica se il disegno deve essere eseguito in ordine di colonna anziché in ordine di riga (disegnando la texture ruotata di 90 gradi in senso orario).

Nota: Questo è utilizzato solo nel rendering 2D, non in quello 3D.


void _draw_rect(to_canvas_item: RID, rect: Rect2, tile: bool, modulate: Color, transpose: bool) virtual const 🔗

Chiamato quando si richiede che la Texture2D sia disegnata nel rettangolo rect sul CanvasItem specificato. modulate specifica un moltiplicatore per i colori disegnati, mentre transpose specifica se il disegno deve essere eseguito in ordine di colonna anziché in ordine di riga (disegnando la texture ruotata di 90 gradi in senso orario).

Nota: Questo è utilizzato solo nel rendering 2D, non in quello 3D.


void _draw_rect_region(to_canvas_item: RID, rect: Rect2, src_rect: Rect2, modulate: Color, transpose: bool, clip_uv: bool) virtual const 🔗

Chiamato quando una parte della Texture2D specificata dalle coordinate di src_rect deve essere disegnata nel rettangolo rect sul CanvasItem specificato. modulate specifica un moltiplicatore per i colori disegnati, mentre transpose specifica se il disegno deve essere eseguito in ordine di colonna anziché in ordine di riga (disegnando la texture ruotata di 90 gradi in senso orario).

Nota: Questo è utilizzato solo nel rendering 2D, non in quello 3D.


int _get_height() virtual required const 🔗

Chiamato quando viene richiesta l'altezza della Texture2D.


int _get_width() virtual required const 🔗

Chiamato quando viene richiesta la larghezza della Texture2D.


bool _has_alpha() virtual const 🔗

Chiamato quando viene richiesta la presenza di un canale alfa nella Texture2D.


bool _is_pixel_opaque(x: int, y: int) virtual const 🔗

Chiamato quando lo stato opaco di un pixel nella Texture2D viene richiesto nella posizione (x, y) specificata.


Resource create_placeholder() const 🔗

Crea una versione segnaposto di questa risorsa (PlaceholderTexture2D).


void draw(canvas_item: RID, position: Vector2, modulate: Color = Color(1, 1, 1, 1), transpose: bool = false) const 🔗

Disegna la texture attraverso un CanvasItem con l'API del RenderingServer nella posizione position.


void draw_rect(canvas_item: RID, rect: Rect2, tile: bool, modulate: Color = Color(1, 1, 1, 1), transpose: bool = false) const 🔗

Disegna la texture attraverso un CanvasItem con l'API del RenderingServer.


void draw_rect_region(canvas_item: RID, rect: Rect2, src_rect: Rect2, modulate: Color = Color(1, 1, 1, 1), transpose: bool = false, clip_uv: bool = true) const 🔗

Disegna una parte della texture attraverso un CanvasItem con l'API del RenderingServer.


int get_height() const 🔗

Restituisce l'altezza della texture in pixel.


Image get_image() const 🔗

Restituisce un'Image che è una copia dei dati da questa Texture2D (viene creata una nuova Image ogni volta). È possibile accedere alle Image e manipolarle direttamente.

Nota: Questo restituirà null se questa Texture2D non è valida.

Nota: Questo recupererà i dati della texture dalla GPU, il che potrebbe causare problemi di prestazioni in caso di uso eccessivo. Evita di chiamare get_image() ad ogni frame, soprattutto su texture di grandi dimensioni.


Vector2 get_size() const 🔗

Restituisce le dimensioni della texture in pixel.


int get_width() const 🔗

Restituisce la larghezza della texture in pixel.


bool has_alpha() const 🔗

Restituisce true se questa Texture2D ha un canale alfa.