TextureProgress

Inherits: Range < Control < CanvasItem < Node < Object

Texture-based progress bar. Useful for loading screens and life or stamina bars.

Description

TextureProgress works like ProgressBar, but uses up to 3 textures instead of Godot's Theme resource. It can be used to create horizontal, vertical and radial progress bars.

Properties

int

fill_mode

0

MouseFilter

mouse_filter

1 (parent override)

bool

nine_patch_stretch

false

Vector2

radial_center_offset

Vector2( 0, 0 )

float

radial_fill_degrees

360.0

float

radial_initial_angle

0.0

int

stretch_margin_bottom

0

int

stretch_margin_left

0

int

stretch_margin_right

0

int

stretch_margin_top

0

Texture

texture_over

Texture

texture_progress

Texture

texture_under

Color

tint_over

Color( 1, 1, 1, 1 )

Color

tint_progress

Color( 1, 1, 1, 1 )

Color

tint_under

Color( 1, 1, 1, 1 )

Methods

int

get_stretch_margin ( Margin margin ) const

void

set_stretch_margin ( Margin margin, int value )

Enumerations

enum FillMode:

Property Descriptions

int fill_mode

Default

0

Setter

set_fill_mode(value)

Getter

get_fill_mode()

The fill direction. See FillMode for possible values.

bool nine_patch_stretch

Default

false

Setter

set_nine_patch_stretch(value)

Getter

get_nine_patch_stretch()

If true, Godot treats the bar's textures like in NinePatchRect. Use the stretch_margin_* properties like stretch_margin_bottom to set up the nine patch's 3×3 grid. When using a radial fill_mode, this setting will enable stretching.

Vector2 radial_center_offset

Default

Vector2( 0, 0 )

Setter

set_radial_center_offset(value)

Getter

get_radial_center_offset()

Offsets texture_progress if fill_mode is FILL_CLOCKWISE or FILL_COUNTER_CLOCKWISE.

float radial_fill_degrees

Default

360.0

Setter

set_fill_degrees(value)

Getter

get_fill_degrees()

Upper limit for the fill of texture_progress if fill_mode is FILL_CLOCKWISE or FILL_COUNTER_CLOCKWISE. When the node's value is equal to its max_value, the texture fills up to this angle.

See Range.value, Range.max_value.

float radial_initial_angle

Default

0.0

Setter

set_radial_initial_angle(value)

Getter

get_radial_initial_angle()

Starting angle for the fill of texture_progress if fill_mode is FILL_CLOCKWISE or FILL_COUNTER_CLOCKWISE. When the node's value is equal to its min_value, the texture doesn't show up at all. When the value increases, the texture fills and tends towards radial_fill_degrees.

int stretch_margin_bottom

Default

0

Setter

set_stretch_margin(value)

Getter

get_stretch_margin()

The height of the 9-patch's bottom row. A margin of 16 means the 9-slice's bottom corners and side will have a height of 16 pixels. You can set all 4 margin values individually to create panels with non-uniform borders.

int stretch_margin_left

Default

0

Setter

set_stretch_margin(value)

Getter

get_stretch_margin()

The width of the 9-patch's left column.

int stretch_margin_right

Default

0

Setter

set_stretch_margin(value)

Getter

get_stretch_margin()

The width of the 9-patch's right column.

int stretch_margin_top

Default

0

Setter

set_stretch_margin(value)

Getter

get_stretch_margin()

The height of the 9-patch's top row.

Texture texture_over

Setter

set_over_texture(value)

Getter

get_over_texture()

Texture that draws over the progress bar. Use it to add highlights or an upper-frame that hides part of texture_progress.

Texture texture_progress

Setter

set_progress_texture(value)

Getter

get_progress_texture()

Texture that clips based on the node's value and fill_mode. As value increased, the texture fills up. It shows entirely when value reaches max_value. It doesn't show at all if value is equal to min_value.

The value property comes from Range. See Range.value, Range.min_value, Range.max_value.

Texture texture_under

Setter

set_under_texture(value)

Getter

get_under_texture()

Texture that draws under the progress bar. The bar's background.

Color tint_over

Default

Color( 1, 1, 1, 1 )

Setter

set_tint_over(value)

Getter

get_tint_over()

Multiplies the color of the bar's texture_over texture. The effect is similar to CanvasItem.modulate, except it only affects this specific texture instead of the entire node.

Color tint_progress

Default

Color( 1, 1, 1, 1 )

Setter

set_tint_progress(value)

Getter

get_tint_progress()

Multiplies the color of the bar's texture_progress texture.

Color tint_under

Default

Color( 1, 1, 1, 1 )

Setter

set_tint_under(value)

Getter

get_tint_under()

Multiplies the color of the bar's texture_under texture.

Method Descriptions

int get_stretch_margin ( Margin margin ) const

void set_stretch_margin ( Margin margin, int value )

© 2014–2021 Juan Linietsky, Ariel Manzur, Godot Engine contributors
Licensed under the MIT License.
https://docs.godotengine.org/en/3.3/classes/class_textureprogress.html