2022-03-15 13:29:32 +01:00
<?xml version="1.0" encoding="UTF-8" ?>
2023-06-13 16:51:37 +02:00
<class name= "Texture" inherits= "Resource" version= "3.12" >
2022-03-15 13:29:32 +01:00
<brief_description >
Texture for 2D and 3D.
</brief_description>
<description >
A texture works by registering an image in the video hardware, which then can be used in 3D models or 2D [Sprite] or GUI [Control].
Textures are often created by loading them from a file. See [method @GDScript.load].
[Texture] is a base for other resources. It cannot be used directly.
[b]Note:[/b] The maximum texture size is 16384× 16384 pixels due to graphics hardware limitations. Larger textures may fail to import.
</description>
<tutorials >
</tutorials>
<methods >
<method name= "draw" qualifiers= "const" >
<return type= "void" />
<argument index= "0" name= "canvas_item" type= "RID" />
<argument index= "1" name= "position" type= "Vector2" />
<argument index= "2" name= "modulate" type= "Color" default= "Color( 1, 1, 1, 1 )" />
<argument index= "3" name= "transpose" type= "bool" default= "false" />
<argument index= "4" name= "normal_map" type= "Texture" default= "null" />
<description >
2022-08-19 20:50:20 +02:00
Draws the texture using a [CanvasItem] with the [RenderingServer] API at the specified [code]position[/code]. Equivalent to [method RenderingServer.canvas_item_add_texture_rect] with a rect at [code]position[/code] and the size of this [Texture].
2022-03-15 13:29:32 +01:00
</description>
</method>
<method name= "draw_rect" qualifiers= "const" >
<return type= "void" />
<argument index= "0" name= "canvas_item" type= "RID" />
<argument index= "1" name= "rect" type= "Rect2" />
<argument index= "2" name= "tile" type= "bool" />
<argument index= "3" name= "modulate" type= "Color" default= "Color( 1, 1, 1, 1 )" />
<argument index= "4" name= "transpose" type= "bool" default= "false" />
<argument index= "5" name= "normal_map" type= "Texture" default= "null" />
<description >
2022-08-19 20:50:20 +02:00
Draws the texture using a [CanvasItem] with the [RenderingServer] API. Equivalent to [method RenderingServer.canvas_item_add_texture_rect].
2022-03-15 13:29:32 +01:00
</description>
</method>
<method name= "draw_rect_region" qualifiers= "const" >
<return type= "void" />
<argument index= "0" name= "canvas_item" type= "RID" />
<argument index= "1" name= "rect" type= "Rect2" />
<argument index= "2" name= "src_rect" type= "Rect2" />
<argument index= "3" name= "modulate" type= "Color" default= "Color( 1, 1, 1, 1 )" />
<argument index= "4" name= "transpose" type= "bool" default= "false" />
<argument index= "5" name= "normal_map" type= "Texture" default= "null" />
<argument index= "6" name= "clip_uv" type= "bool" default= "true" />
<description >
2022-08-19 20:50:20 +02:00
Draws a part of the texture using a [CanvasItem] with the [RenderingServer] API. Equivalent to [method RenderingServer.canvas_item_add_texture_rect_region].
2022-03-15 13:29:32 +01:00
</description>
</method>
<method name= "get_data" qualifiers= "const" >
<return type= "Image" />
<description >
Returns an [Image] that is a copy of data from this [Texture]. [Image]s can be accessed and manipulated directly.
</description>
</method>
<method name= "get_height" qualifiers= "const" >
<return type= "int" />
<description >
Returns the texture height.
</description>
</method>
<method name= "get_size" qualifiers= "const" >
<return type= "Vector2" />
<description >
Returns the texture size.
</description>
</method>
<method name= "get_width" qualifiers= "const" >
<return type= "int" />
<description >
Returns the texture width.
</description>
</method>
<method name= "has_alpha" qualifiers= "const" >
<return type= "bool" />
<description >
Returns [code]true[/code] if this [Texture] has an alpha channel.
</description>
</method>
</methods>
<members >
2023-01-14 13:38:58 +01:00
<member name= "flags" type= "int" setter= "set_flags" getter= "get_flags" default= "0" >
2022-03-15 13:29:32 +01:00
The texture's [enum Flags]. [enum Flags] are used to set various properties of the [Texture].
</member>
2023-06-13 16:51:37 +02:00
<member name= "resource_local_to_scene" type= "bool" setter= "set_local_to_scene" getter= "is_local_to_scene" overrides= "Resource" default= "true" />
2022-03-15 13:29:32 +01:00
</members>
<constants >
<constant name= "FLAGS_DEFAULT" value= "7" enum= "Flags" >
Default flags. [constant FLAG_MIPMAPS], [constant FLAG_REPEAT] and [constant FLAG_FILTER] are enabled.
</constant>
<constant name= "FLAG_MIPMAPS" value= "1" enum= "Flags" >
Generates mipmaps, which are smaller versions of the same texture to use when zoomed out, keeping the aspect ratio.
</constant>
<constant name= "FLAG_REPEAT" value= "2" enum= "Flags" >
Repeats the texture (instead of clamp to edge).
[b]Note:[/b] Ignored when using an [AtlasTexture] as these don't support repetition.
</constant>
<constant name= "FLAG_FILTER" value= "4" enum= "Flags" >
Uses a magnifying filter, to enable smooth zooming in of the texture.
</constant>
<constant name= "FLAG_ANISOTROPIC_FILTER" value= "8" enum= "Flags" >
Uses anisotropic mipmap filtering. Generates smaller versions of the same texture with different aspect ratios.
This results in better-looking textures when viewed from oblique angles.
</constant>
<constant name= "FLAG_CONVERT_TO_LINEAR" value= "16" enum= "Flags" >
Converts the texture to the sRGB color space.
</constant>
<constant name= "FLAG_MIRRORED_REPEAT" value= "32" enum= "Flags" >
Repeats the texture with alternate sections mirrored.
[b]Note:[/b] Ignored when using an [AtlasTexture] as these don't support repetition.
</constant>
<constant name= "FLAG_VIDEO_SURFACE" value= "2048" enum= "Flags" >
Texture is a video surface.
</constant>
</constants>
</class>