Up to date

This page is up to date for Godot 4.1. If you still find outdated information, please open an issue.

Sprite3D

Inherits: SpriteBase3D < GeometryInstance3D < VisualInstance3D < Node3D < Node < Object

2D sprite node in a 3D world.

Description

A node that displays a 2D texture in a 3D environment. The texture displayed can be a region from a larger atlas texture, or a frame from a sprite sheet animation. See also SpriteBase3D where properties such as the billboard mode are defined.

Properties

int

frame

0

Vector2i

frame_coords

Vector2i(0, 0)

int

hframes

1

bool

region_enabled

false

Rect2

region_rect

Rect2(0, 0, 0, 0)

Texture2D

texture

int

vframes

1


Signals

frame_changed ( )

Emitted when the frame changes.


texture_changed ( )

Emitted when the texture changes.


Property Descriptions

int frame = 0

  • void set_frame ( int value )

  • int get_frame ( )

Current frame to display from sprite sheet. hframes or vframes must be greater than 1.


Vector2i frame_coords = Vector2i(0, 0)

Coordinates of the frame to display from sprite sheet. This is as an alias for the frame property. hframes or vframes must be greater than 1.


int hframes = 1

  • void set_hframes ( int value )

  • int get_hframes ( )

The number of columns in the sprite sheet.


bool region_enabled = false

  • void set_region_enabled ( bool value )

  • bool is_region_enabled ( )

If true, the sprite will use region_rect and display only the specified part of its texture.


Rect2 region_rect = Rect2(0, 0, 0, 0)

  • void set_region_rect ( Rect2 value )

  • Rect2 get_region_rect ( )

The region of the atlas texture to display. region_enabled must be true.


Texture2D texture

Texture2D object to draw. If GeometryInstance3D.material_override is used, this will be overridden. The size information is still used.


int vframes = 1

  • void set_vframes ( int value )

  • int get_vframes ( )

The number of rows in the sprite sheet.