Texture2D

Наследует: Texture < Resource < RefCounted < Object

Наследуется от: AnimatedTexture, AtlasTexture, CameraTexture, CanvasTexture, CompressedTexture2D, CurveTexture, CurveXYZTexture, DPITexture, ExternalTexture, GradientTexture1D, GradientTexture2D, ImageTexture, MeshTexture, NoiseTexture2D, PlaceholderTexture2D, PortableCompressedTexture2D, Texture2DRD, ViewportTexture

Текстура для 2D и 3D.

Описание

Текстура работает путем регистрации изображения в видеооборудовании, которое затем может использоваться в 3D-моделях или 2D Sprite2D или GUI Control.

Текстуры часто создаются путем загрузки их из файла. См. @GDScript.load().

Texture2D является базой для других ресурсов. Его нельзя использовать напрямую.

Примечание: Максимальный размер текстуры составляет 16384×16384 пикселей из-за ограничений графического оборудования. Большие текстуры могут не импортироваться.

Методы

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


Описания метода

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

Вызывается, когда запрашивается отрисовка всего Texture2D поверх CanvasItem со смещением в левом верхнем углу, указанным в pos. modulate указывает множитель для отрисовываемых цветов, а transpose указывает, следует ли выполнять отрисовку в порядке столбцов вместо порядка строк (что приводит к повороту на 90 градусов по часовой стрелке).

Примечание: Это используется только в 2D-рендеринге, а не в 3D.


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

Вызывается, когда Texture2D запрашивается для рисования на указанном rect CanvasItem. modulate указывает множитель для рисуемых цветов, а transpose указывает, должно ли рисование выполняться в порядке столбцов вместо порядка строк (что приводит к повороту на 90 градусов по часовой стрелке).

Примечание: Это используется только в 2D-рендеринге, а не в 3D.


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

Вызывается, когда часть Texture2D, указанная координатами src_rect, запрашивается для рисования на указанном rect CanvasItem. modulate указывает множитель для рисуемых цветов, а transpose указывает, должно ли рисование выполняться в порядке столбцов вместо порядка строк (что приводит к повороту на 90 градусов по часовой стрелке).

Примечание: Это используется только в 2D-рендеринге, а не в 3D.


int _get_height() virtual required const 🔗

Вызывается при запросе высоты Texture2D.


int _get_width() virtual required const 🔗

Вызывается при запросе ширины Texture2D.


bool _has_alpha() virtual const 🔗

Вызывается при запросе наличия альфа-канала в Texture2D.


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

Вызывается, когда запрашивается непрозрачное состояние пикселя в Texture2D в указанной позиции (x, y).


Resource create_placeholder() const 🔗

Создайте замещающую версию этого ресурса (PlaceholderTexture2D).


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

Рисует текстуру, используя CanvasItem с API RenderingServer в указанной position.


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

Рисует текстуру, используя CanvasItem с API 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 🔗

Рисует часть текстуры, используя CanvasItem с API RenderingServer.


int get_height() const 🔗

Возвращает высоту текстуры в пикселях.


Image get_image() const 🔗

Возвращает Image, являющийся копией данных из этого Texture2D (каждый раз создается новый Image). К Image можно получать доступ и управлять ими напрямую.

Примечание: Это вернет null, если этот Texture2D недействителен.

Примечание: Это извлечет данные текстуры из графического процессора, что может вызвать проблемы с производительностью при чрезмерном использовании. Избегайте вызова get_image() в каждом кадре, особенно на больших текстурах.


Vector2 get_size() const 🔗

Возвращает размер текстуры в пикселях.


int get_width() const 🔗

Возвращает ширину текстуры в пикселях.


bool has_alpha() const 🔗

Возвращает true, если у этого Texture2D есть альфа-канал.