:github_url: hide .. Generated automatically by doc/tools/make_rst.py in Godot's source tree. .. DO NOT EDIT THIS FILE, but the SpriteBase3D.xml source instead. .. The source is found in doc/classes or modules//doc_classes. .. _class_SpriteBase3D: SpriteBase3D ============ **Inherits:** :ref:`GeometryInstance` **<** :ref:`VisualInstance` **<** :ref:`CullInstance` **<** :ref:`Spatial` **<** :ref:`Node` **<** :ref:`Object` **Inherited By:** :ref:`AnimatedSprite3D`, :ref:`Sprite3D` 2D sprite node in 3D environment. Description ----------- A node that displays 2D texture information in a 3D environment. Properties ---------- +----------------------------------------------------------+---------------------------------------------------------------+-------------------------+ | :ref:`AlphaCutMode` | :ref:`alpha_cut` | ``0`` | +----------------------------------------------------------+---------------------------------------------------------------+-------------------------+ | Vector3.Axis | :ref:`axis` | ``2`` | +----------------------------------------------------------+---------------------------------------------------------------+-------------------------+ | :ref:`BillboardMode` | :ref:`billboard` | ``0`` | +----------------------------------------------------------+---------------------------------------------------------------+-------------------------+ | :ref:`bool` | :ref:`centered` | ``true`` | +----------------------------------------------------------+---------------------------------------------------------------+-------------------------+ | :ref:`bool` | :ref:`double_sided` | ``true`` | +----------------------------------------------------------+---------------------------------------------------------------+-------------------------+ | :ref:`bool` | :ref:`flip_h` | ``false`` | +----------------------------------------------------------+---------------------------------------------------------------+-------------------------+ | :ref:`bool` | :ref:`flip_v` | ``false`` | +----------------------------------------------------------+---------------------------------------------------------------+-------------------------+ | :ref:`Color` | :ref:`modulate` | ``Color( 1, 1, 1, 1 )`` | +----------------------------------------------------------+---------------------------------------------------------------+-------------------------+ | :ref:`Vector2` | :ref:`offset` | ``Vector2( 0, 0 )`` | +----------------------------------------------------------+---------------------------------------------------------------+-------------------------+ | :ref:`float` | :ref:`opacity` | ``1.0`` | +----------------------------------------------------------+---------------------------------------------------------------+-------------------------+ | :ref:`float` | :ref:`pixel_size` | ``0.01`` | +----------------------------------------------------------+---------------------------------------------------------------+-------------------------+ | :ref:`bool` | :ref:`shaded` | ``false`` | +----------------------------------------------------------+---------------------------------------------------------------+-------------------------+ | :ref:`bool` | :ref:`transparent` | ``true`` | +----------------------------------------------------------+---------------------------------------------------------------+-------------------------+ Methods ------- +-----------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`TriangleMesh` | :ref:`generate_triangle_mesh` **(** **)** |const| | +-----------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`get_draw_flag` **(** :ref:`DrawFlags` flag **)** |const| | +-----------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Rect2` | :ref:`get_item_rect` **(** **)** |const| | +-----------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`set_draw_flag` **(** :ref:`DrawFlags` flag, :ref:`bool` enabled **)** | +-----------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------+ Enumerations ------------ .. _enum_SpriteBase3D_DrawFlags: .. _class_SpriteBase3D_constant_FLAG_TRANSPARENT: .. _class_SpriteBase3D_constant_FLAG_SHADED: .. _class_SpriteBase3D_constant_FLAG_DOUBLE_SIDED: .. _class_SpriteBase3D_constant_FLAG_MAX: enum **DrawFlags**: - **FLAG_TRANSPARENT** = **0** --- If set, the texture's transparency and the opacity are used to make those parts of the sprite invisible. - **FLAG_SHADED** = **1** --- If set, lights in the environment affect the sprite. - **FLAG_DOUBLE_SIDED** = **2** --- If set, texture can be seen from the back as well, if not, it is invisible when looking at it from behind. - **FLAG_MAX** = **3** --- Represents the size of the :ref:`DrawFlags` enum. ---- .. _enum_SpriteBase3D_AlphaCutMode: .. _class_SpriteBase3D_constant_ALPHA_CUT_DISABLED: .. _class_SpriteBase3D_constant_ALPHA_CUT_DISCARD: .. _class_SpriteBase3D_constant_ALPHA_CUT_OPAQUE_PREPASS: enum **AlphaCutMode**: - **ALPHA_CUT_DISABLED** = **0** - **ALPHA_CUT_DISCARD** = **1** - **ALPHA_CUT_OPAQUE_PREPASS** = **2** Property Descriptions --------------------- .. _class_SpriteBase3D_property_alpha_cut: - :ref:`AlphaCutMode` **alpha_cut** +-----------+---------------------------+ | *Default* | ``0`` | +-----------+---------------------------+ | *Setter* | set_alpha_cut_mode(value) | +-----------+---------------------------+ | *Getter* | get_alpha_cut_mode() | +-----------+---------------------------+ ---- .. _class_SpriteBase3D_property_axis: - Vector3.Axis **axis** +-----------+-----------------+ | *Default* | ``2`` | +-----------+-----------------+ | *Setter* | set_axis(value) | +-----------+-----------------+ | *Getter* | get_axis() | +-----------+-----------------+ The direction in which the front of the texture faces. ---- .. _class_SpriteBase3D_property_billboard: - :ref:`BillboardMode` **billboard** +-----------+---------------------------+ | *Default* | ``0`` | +-----------+---------------------------+ | *Setter* | set_billboard_mode(value) | +-----------+---------------------------+ | *Getter* | get_billboard_mode() | +-----------+---------------------------+ ---- .. _class_SpriteBase3D_property_centered: - :ref:`bool` **centered** +-----------+---------------------+ | *Default* | ``true`` | +-----------+---------------------+ | *Setter* | set_centered(value) | +-----------+---------------------+ | *Getter* | is_centered() | +-----------+---------------------+ If ``true``, texture will be centered. ---- .. _class_SpriteBase3D_property_double_sided: - :ref:`bool` **double_sided** +-----------+----------------------+ | *Default* | ``true`` | +-----------+----------------------+ | *Setter* | set_draw_flag(value) | +-----------+----------------------+ | *Getter* | get_draw_flag() | +-----------+----------------------+ If ``true``, texture can be seen from the back as well, if ``false``, it is invisible when looking at it from behind. ---- .. _class_SpriteBase3D_property_flip_h: - :ref:`bool` **flip_h** +-----------+-------------------+ | *Default* | ``false`` | +-----------+-------------------+ | *Setter* | set_flip_h(value) | +-----------+-------------------+ | *Getter* | is_flipped_h() | +-----------+-------------------+ If ``true``, texture is flipped horizontally. ---- .. _class_SpriteBase3D_property_flip_v: - :ref:`bool` **flip_v** +-----------+-------------------+ | *Default* | ``false`` | +-----------+-------------------+ | *Setter* | set_flip_v(value) | +-----------+-------------------+ | *Getter* | is_flipped_v() | +-----------+-------------------+ If ``true``, texture is flipped vertically. ---- .. _class_SpriteBase3D_property_modulate: - :ref:`Color` **modulate** +-----------+-------------------------+ | *Default* | ``Color( 1, 1, 1, 1 )`` | +-----------+-------------------------+ | *Setter* | set_modulate(value) | +-----------+-------------------------+ | *Getter* | get_modulate() | +-----------+-------------------------+ A color value used to *multiply* the texture's colors. Can be used for mood-coloring or to simulate the color of light. **Note:** If a :ref:`GeometryInstance.material_override` is defined on the ``SpriteBase3D``, the material override must be configured to take vertex colors into account for albedo. Otherwise, the color defined in :ref:`modulate` will be ignored. For a :ref:`SpatialMaterial`, :ref:`SpatialMaterial.vertex_color_use_as_albedo` must be ``true``. For a :ref:`ShaderMaterial`, ``ALBEDO *= COLOR.rgb;[/color] must be inserted in the shader's [code]fragment()`` function. ---- .. _class_SpriteBase3D_property_offset: - :ref:`Vector2` **offset** +-----------+---------------------+ | *Default* | ``Vector2( 0, 0 )`` | +-----------+---------------------+ | *Setter* | set_offset(value) | +-----------+---------------------+ | *Getter* | get_offset() | +-----------+---------------------+ The texture's drawing offset. ---- .. _class_SpriteBase3D_property_opacity: - :ref:`float` **opacity** +-----------+--------------------+ | *Default* | ``1.0`` | +-----------+--------------------+ | *Setter* | set_opacity(value) | +-----------+--------------------+ | *Getter* | get_opacity() | +-----------+--------------------+ The texture's visibility on a scale from ``0`` (fully invisible) to ``1`` (fully visible). :ref:`opacity` is a multiplier for the :ref:`modulate` color's alpha channel. **Note:** If a :ref:`GeometryInstance.material_override` is defined on the ``SpriteBase3D``, the material override must be configured to take vertex colors into account for albedo. Otherwise, the opacity defined in :ref:`opacity` will be ignored. For a :ref:`SpatialMaterial`, :ref:`SpatialMaterial.vertex_color_use_as_albedo` must be ``true``. For a :ref:`ShaderMaterial`, ``ALPHA *= COLOR.a;[/color] must be inserted in the shader's [code]fragment()`` function. ---- .. _class_SpriteBase3D_property_pixel_size: - :ref:`float` **pixel_size** +-----------+-----------------------+ | *Default* | ``0.01`` | +-----------+-----------------------+ | *Setter* | set_pixel_size(value) | +-----------+-----------------------+ | *Getter* | get_pixel_size() | +-----------+-----------------------+ The size of one pixel's width on the sprite to scale it in 3D. ---- .. _class_SpriteBase3D_property_shaded: - :ref:`bool` **shaded** +-----------+----------------------+ | *Default* | ``false`` | +-----------+----------------------+ | *Setter* | set_draw_flag(value) | +-----------+----------------------+ | *Getter* | get_draw_flag() | +-----------+----------------------+ If ``true``, the :ref:`Light` in the :ref:`Environment` has effects on the sprite. ---- .. _class_SpriteBase3D_property_transparent: - :ref:`bool` **transparent** +-----------+----------------------+ | *Default* | ``true`` | +-----------+----------------------+ | *Setter* | set_draw_flag(value) | +-----------+----------------------+ | *Getter* | get_draw_flag() | +-----------+----------------------+ If ``true``, the texture's transparency and the opacity are used to make those parts of the sprite invisible. Method Descriptions ------------------- .. _class_SpriteBase3D_method_generate_triangle_mesh: - :ref:`TriangleMesh` **generate_triangle_mesh** **(** **)** |const| ---- .. _class_SpriteBase3D_method_get_draw_flag: - :ref:`bool` **get_draw_flag** **(** :ref:`DrawFlags` flag **)** |const| Returns the value of the specified flag. ---- .. _class_SpriteBase3D_method_get_item_rect: - :ref:`Rect2` **get_item_rect** **(** **)** |const| Returns the rectangle representing this sprite. ---- .. _class_SpriteBase3D_method_set_draw_flag: - void **set_draw_flag** **(** :ref:`DrawFlags` flag, :ref:`bool` enabled **)** If ``true``, the specified flag will be enabled. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`