> For the complete documentation index, see [llms.txt](https://docs.overdare.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.overdare.com/development/api-reference/classes/progressbar.md).

# ProgressBar

ProgressBar : `GuiObject`

## Overview

ProgressBar is a GUI object that visually displays the current progress or value.

In addition to horizontal and vertical gauges, it can be used to create circular and semicircular gauges. The ratio of the fill area can be set through the Value property. Images can be applied to the gauge background and fill area using `TrackImage` and `FillImage`.

## Properties

### ArcSize

`number`

Specifies the range of the arc displayed in a circular or semicircular `ProgressBar`.

The value is specified as an angle between `0` and `360`.

* `360`: Displays a circular gauge.
* `180` or less: Can be used to display a semicircular gauge.

This property is available only when `FillDirection` is set to `Clockwise` or `CounterClockwise`.

#### Code Samples

```lua
local ProgressBar = script.Parent
ProgressBar.FillDirection = Enum.ProgressBarFillDirection.Clockwise
ProgressBar.ArcSize = 180
```

### CornerClipEnabled

`boolean`

Specifies how the fill area is rendered in a linear `ProgressBar` with rounded corners.

* `true`: Simply clips the fill area.
* `false`: Fills the area while preserving the corner radius.

This property is available only when `FillDirection` is set to a linear fill direction.

#### Code Samples

```lua
local ProgressBar = script.Parent
ProgressBar.CornerClipEnabled = false
```

### FillColor3

`Color3`

Specifies the color applied to the fill area.

#### Code Samples

```lua
local ProgressBar = script.Parent
ProgressBar.FillColor3 = Color3.fromRGB(0, 255, 0)
```

### FillCornerRadius

`UDim`

Specifies the corner radius of the fill area.

`Scale` represents a ratio relative to the size of the parent UI element, while `Offset` represents an additional value in pixels. The value is specified in the format `UDim.new(scale, offset)`.

This property is available when `FillDirection` is set to a linear fill direction.

#### Code Samples

```lua
local ProgressBar = script.Parent
ProgressBar.FillCornerRadius = UDim.new(0.5, 0)
```

### FillDirection

`Enum.ProgressBarFillDirection`

Specifies the direction in which the fill area expands based on the `Value` property.

You can configure linear and angular fill directions.

Linear Fill Directions

* `LeftToRight`
* `RightToLeft`
* `TopToBottom`
* `BottomToTop`
* `CenterHorizontal`
* `CenterVertical`

Angular Fill Directions

* `Clockwise`
* `CounterClockwise`

When `FillDirection` is set to an angular fill direction, the `StartAngle` and `ArcSize` properties can be used.

#### Code Samples

```lua
local ProgressBar = script.Parent
ProgressBar.FillDirection = Enum.ProgressBarFillDirection.LeftToRight
```

### FillImage

`string`

Specifies the `AssetId` of the image displayed in the fill area of the `ProgressBar`.

The value must be specified in the format `ovdrassetid:number`.

#### Code Samples

```lua
local ProgressBar = script.Parent
ProgressBar.FillImage = "ovdrassetid:12345"
```

### FillTransparency

`number`

Specifies the transparency of the fill area.

`0` means completely opaque, while `1` means completely transparent.

#### Code Samples

```lua
local ProgressBar = script.Parent
ProgressBar.FillTransparency = 0.5
```

### StartAngle

`number`

Specifies the angle at which the fill area begins in a circular or semicircular `ProgressBar`.

The value is specified as an angle between `0` and `360`. The fill direction is determined by the `FillDirection` property.

This property is available only when `FillDirection` is set to `Clockwise` or `CounterClockwise`.

#### Code Samples

```lua
local ProgressBar = script.Parent
ProgressBar.FillDirection = Enum.ProgressBarFillDirection.Clockwise
ProgressBar.StartAngle = 90
```

### TrackColor3

`Color3`

Specifies the color applied to the background area.

#### Code Samples

```lua
local ProgressBar = script.Parent
ProgressBar.TrackColor3 = Color3.fromRGB(80, 80, 80)
```

### TrackCornerRadius

`UDim`

Specifies the corner radius of the background area.

`Scale` represents a ratio relative to the size of the parent UI element, while `Offset` represents an additional value in pixels. The value is specified in the format `UDim.new(scale, offset)`.

This property is available when `FillDirection` is set to a linear fill direction.

#### Code Samples

```lua
local ProgressBar = script.Parent
ProgressBar.TrackCornerRadius = UDim.new(0.5, 0)
```

### TrackImage

`string`

Specifies the `AssetId` of the image displayed in the background area of the `ProgressBar`.

The value must be specified in the format `ovdrassetid:number`.

#### Code Samples

```lua
local ProgressBar = script.Parent
ProgressBar.TrackImage = "ovdrassetid:12345"
```

### TrackTransparency

`number`

Specifies the transparency of the background area.

`0` means completely opaque, while `1` means completely transparent.

#### Code Samples

```lua
local ProgressBar = script.Parent
ProgressBar.TrackTransparency = 0.5
```

### Value

`number`

Specifies the ratio of the fill area.

The value must be set between `0` and `1`.

* `0`: The fill area is not displayed.
* `1`: The entire fill area is displayed.

Values outside this range are automatically clamped between `0` and `1`.

#### Code Samples

```lua
local ProgressBar = script.Parent
ProgressBar.Value = 0.4
```

## Methods

## Events

## See also

{% content-ref url="/pages/Hgp8bh8C44modKPwUBkg" %}
[GUI](/manual/studio-manual/gui.md)
{% endcontent-ref %}

{% content-ref url="/pages/Uoqn2fjerIEwUfMRHcOy" %}
[ProgressBarFillDirection](/development/api-reference/enums/progressbarfilldirection.md)
{% endcontent-ref %}
