2017-09-12 22:42:36 +02:00
<?xml version="1.0" encoding="UTF-8" ?>
2020-03-30 18:22:57 +02:00
<class name= "SpriteBase3D" inherits= "GeometryInstance3D" version= "4.0" >
2017-09-12 22:42:36 +02:00
<brief_description >
2019-06-22 01:04:47 +02:00
2D sprite node in 3D environment.
2017-09-12 22:42:36 +02:00
</brief_description>
<description >
2020-09-10 21:38:36 +02:00
A node that displays 2D texture information in a 3D environment. See also [Sprite3D] where many other properties are defined.
2017-09-12 22:42:36 +02:00
</description>
<tutorials >
</tutorials>
<methods >
2018-06-13 22:29:54 +02:00
<method name= "generate_triangle_mesh" qualifiers= "const" >
<return type= "TriangleMesh" >
</return>
<description >
2020-09-10 21:38:36 +02:00
Returns a [TriangleMesh] with the sprite's vertices following its current configuration (such as its [member axis] and [member pixel_size]).
2018-06-13 22:29:54 +02:00
</description>
</method>
2019-06-27 16:10:09 +02:00
<method name= "get_draw_flag" qualifiers= "const" >
<return type= "bool" >
</return>
<argument index= "0" name= "flag" type= "int" enum= "SpriteBase3D.DrawFlags" >
</argument>
<description >
2020-03-03 19:21:21 +01:00
Returns the value of the specified flag.
2019-06-27 16:10:09 +02:00
</description>
</method>
2017-09-12 22:42:36 +02:00
<method name= "get_item_rect" qualifiers= "const" >
<return type= "Rect2" >
</return>
<description >
2020-03-03 19:21:21 +01:00
Returns the rectangle representing this sprite.
2017-09-12 22:42:36 +02:00
</description>
</method>
2019-06-27 16:10:09 +02:00
<method name= "set_draw_flag" >
<return type= "void" >
</return>
<argument index= "0" name= "flag" type= "int" enum= "SpriteBase3D.DrawFlags" >
</argument>
<argument index= "1" name= "enabled" type= "bool" >
</argument>
<description >
2020-09-10 21:38:36 +02:00
If [code]true[/code], the specified flag will be enabled. See [enum SpriteBase3D.DrawFlags] for a list of flags.
2019-06-27 16:10:09 +02:00
</description>
</method>
2017-09-12 22:42:36 +02:00
</methods>
<members >
2019-06-29 12:38:01 +02:00
<member name= "alpha_cut" type= "int" setter= "set_alpha_cut_mode" getter= "get_alpha_cut_mode" enum= "SpriteBase3D.AlphaCutMode" default= "0" >
2020-09-10 21:38:36 +02:00
The alpha cutting mode to use for the sprite. See [enum AlphaCutMode] for possible values.
2017-09-12 22:42:36 +02:00
</member>
2019-06-29 12:38:01 +02:00
<member name= "axis" type= "int" setter= "set_axis" getter= "get_axis" enum= "Vector3.Axis" default= "2" >
2017-10-06 18:33:16 +02:00
The direction in which the front of the texture faces.
2017-09-12 22:42:36 +02:00
</member>
2020-02-12 09:59:06 +01:00
<member name= "billboard" type= "int" setter= "set_billboard_mode" getter= "get_billboard_mode" enum= "BaseMaterial3D.BillboardMode" default= "0" >
2020-09-10 21:38:36 +02:00
The billboard mode to use for the sprite. See [enum BaseMaterial3D.BillboardMode] for possible values.
2019-08-29 15:33:52 +02:00
</member>
2019-06-29 12:38:01 +02:00
<member name= "centered" type= "bool" setter= "set_centered" getter= "is_centered" default= "true" >
2019-06-29 15:24:23 +02:00
If [code]true[/code], texture will be centered.
2017-09-12 22:42:36 +02:00
</member>
2019-06-29 12:38:01 +02:00
<member name= "double_sided" type= "bool" setter= "set_draw_flag" getter= "get_draw_flag" default= "true" >
2019-06-29 15:24:23 +02:00
If [code]true[/code], texture can be seen from the back as well, if [code]false[/code], it is invisible when looking at it from behind.
2017-09-12 22:42:36 +02:00
</member>
2019-06-29 12:38:01 +02:00
<member name= "flip_h" type= "bool" setter= "set_flip_h" getter= "is_flipped_h" default= "false" >
2019-06-29 15:24:23 +02:00
If [code]true[/code], texture is flipped horizontally.
2017-09-12 22:42:36 +02:00
</member>
2019-06-29 12:38:01 +02:00
<member name= "flip_v" type= "bool" setter= "set_flip_v" getter= "is_flipped_v" default= "false" >
2019-06-29 15:24:23 +02:00
If [code]true[/code], texture is flipped vertically.
2017-09-12 22:42:36 +02:00
</member>
2019-06-29 12:38:01 +02:00
<member name= "modulate" type= "Color" setter= "set_modulate" getter= "get_modulate" default= "Color( 1, 1, 1, 1 )" >
2017-10-06 18:33:16 +02:00
A color value that gets multiplied on, could be used for mood-coloring or to simulate the color of light.
2017-09-12 22:42:36 +02:00
</member>
2019-06-29 12:38:01 +02:00
<member name= "offset" type= "Vector2" setter= "set_offset" getter= "get_offset" default= "Vector2( 0, 0 )" >
2017-10-06 18:33:16 +02:00
The texture's drawing offset.
2017-09-12 22:42:36 +02:00
</member>
2019-06-29 12:38:01 +02:00
<member name= "opacity" type= "float" setter= "set_opacity" getter= "get_opacity" default= "1.0" >
2017-10-06 18:33:16 +02:00
The objects visibility on a scale from [code]0[/code] fully invisible to [code]1[/code] fully visible.
2017-09-12 22:42:36 +02:00
</member>
2019-06-29 12:38:01 +02:00
<member name= "pixel_size" type= "float" setter= "set_pixel_size" getter= "get_pixel_size" default= "0.01" >
2019-06-22 01:04:47 +02:00
The size of one pixel's width on the sprite to scale it in 3D.
2017-09-12 22:42:36 +02:00
</member>
2019-06-29 12:38:01 +02:00
<member name= "shaded" type= "bool" setter= "set_draw_flag" getter= "get_draw_flag" default= "false" >
2020-03-30 18:22:57 +02:00
If [code]true[/code], the [Light3D] in the [Environment] has effects on the sprite.
2017-09-12 22:42:36 +02:00
</member>
2019-06-29 12:38:01 +02:00
<member name= "transparent" type= "bool" setter= "set_draw_flag" getter= "get_draw_flag" default= "true" >
2019-06-29 15:24:23 +02:00
If [code]true[/code], the texture's transparency and the opacity are used to make those parts of the sprite invisible.
2017-09-12 22:42:36 +02:00
</member>
</members>
<constants >
2017-11-24 23:16:30 +01:00
<constant name= "FLAG_TRANSPARENT" value= "0" enum= "DrawFlags" >
2019-06-22 01:04:47 +02:00
If set, the texture's transparency and the opacity are used to make those parts of the sprite invisible.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "FLAG_SHADED" value= "1" enum= "DrawFlags" >
2019-06-22 01:04:47 +02:00
If set, lights in the environment affect the sprite.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "FLAG_DOUBLE_SIDED" value= "2" enum= "DrawFlags" >
2020-09-10 21:38:36 +02:00
If set, texture can be seen from the back as well. If not, the texture is invisible when looking at it from behind.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "FLAG_MAX" value= "3" enum= "DrawFlags" >
2019-06-27 11:10:53 +02:00
Represents the size of the [enum DrawFlags] enum.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "ALPHA_CUT_DISABLED" value= "0" enum= "AlphaCutMode" >
2020-09-10 21:38:36 +02:00
This mode performs standard alpha blending. It can display translucent areas, but transparency sorting issues may be visible when multiple transparent materials are overlapping.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "ALPHA_CUT_DISCARD" value= "1" enum= "AlphaCutMode" >
2021-02-19 13:35:31 +01:00
This mode only allows fully transparent or fully opaque pixels. Harsh edges will be visible unless some form of screen-space antialiasing is enabled (see [member ProjectSettings.rendering/anti_aliasing/quality/screen_space_aa]). On the bright side, this mode doesn't suffer from transparency sorting issues when multiple transparent materials are overlapping. This mode is also known as [i]alpha testing[/i] or [i]1-bit transparency[/i].
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "ALPHA_CUT_OPAQUE_PREPASS" value= "2" enum= "AlphaCutMode" >
2020-09-10 21:38:36 +02:00
This mode draws fully opaque pixels in the depth prepass. This is slower than [constant ALPHA_CUT_DISABLED] or [constant ALPHA_CUT_DISCARD], but it allows displaying translucent areas and smooth edges while using proper sorting.
2017-09-12 22:42:36 +02:00
</constant>
</constants>
</class>