Godot Radial Menu

An asset by tavurth
The page banner background of a mountain and forest
Godot Radial Menu hero image

Quick Information

0 ratings
Godot Radial Menu icon image
tavurth
Godot Radial Menu

Godot Radial menu for Godot 4.xI created this Radial Menu as an addon for a few of my projects.The rendering of the menu is primarily done through shader code and so should be pretty performant.

Supported Engine Version
4.0
Version String
1.0
License Version
MIT
Support Level
community
Modified Date
1 year ago
Git URL
Issue URL

Table of Contents

  1. Godot Radial Menu
    1. Setup
    2. Supported signals
    3. Supported controls
      1. Center Node
      2. Width max
      3. Width min
      4. Cursor size
      5. Cursor deg
      6. Color BG
      7. Color FG
      8. Bevel Enabled
      9. Bevel Color
      10. Bevel Width
      11. Modulate Enabled
      12. Modulate Color
      13. Modulate Width

Godot Radial Menu

README img README img README img README img

I created this Radial Menu as an addon for a few of my projects.

The rendering of the menu is primarily done through shader code and so should be pretty performant.

https://user-images.githubusercontent.com/100964/155878180-1aabfeb7-f246-46c4-b6a6-e60346d8279c.mov

Setup

README img

func _ready():
    $RadialMenu.connect("selected", self, "_on_selected")

func _input(event: InputEvent):
    if event is InputEventScreenTouch:
        $RadialMenu.set_visible(event.pressed)

func _on_selected(child: Node):
    prints("Child was selected:", child)

Supported signals

hovered(child) Emitted when a button or child is hovered

selected(child) Emitted when a button or child is selected

Supported controls

README img

Center Node

set_center_node(Node)

Controls display in center of the spinner

Width max

set_width_max(Float)

  • Minimum: 0
  • Maximum: 1

The outside edge size of the spinner

Width min

set_width_min(Float)

  • Minimum: 0
  • Maximum: 1

The inside edge size of the spinner

Cursor size

set_cursor_size(Float)

  • Minimum: 0
  • Maximum: +ve PI

The size of the radial arc (blue portion)

Cursor deg

set_cursor_deg(Float)

  • Minimum: -ve PI
  • Maximum: +ve PI

The starting degree of the cursor (will update with mouse or touch events)

Color BG

set_color_bg(Color)

Background color of the radial (supports RGBA)

Color FG

set_color_fg(Color)

Foreground color of the radial (supports RGBA)

Bevel Enabled

set_bevel_enabled(bool)

Should a bevel be present on the edges of the modal

Bevel Color

set_bevel_color(Color)

What color should the bevel be (if present)

Bevel Width

set_bevel_width(float)

What should the width of the bevel be (if present)

Modulate enabled

set_modulate_enabled(bool)

If enabled, buttons will be automatically modulated to the colors selected when hovered and unhovered

Modulate hover

set_modulate_hover(Color)

Color modulation to be applied to each button (or control) when it's hovered. This is only applied i modulate_enabled is true

Modulate default

set_modulate_default(Color)

Color modulation to be applied to each button (or control) in it's default state. This is only applied i modulate_enabled is true

Support

Buy Me A Coffee

Godot Radial menu for Godot 4.x

I created this Radial Menu as an addon for a few of my projects.

The rendering of the menu is primarily done through shader code and so should be pretty performant.

Reviews

0 ratings

Your Rating

Headline must be at least 3 characters but not more than 50
Review must be at least 5 characters but not more than 500
Please sign in to add a review

Quick Information

0 ratings
Godot Radial Menu icon image
tavurth
Godot Radial Menu

Godot Radial menu for Godot 4.xI created this Radial Menu as an addon for a few of my projects.The rendering of the menu is primarily done through shader code and so should be pretty performant.

Supported Engine Version
4.0
Version String
1.0
License Version
MIT
Support Level
community
Modified Date
1 year ago
Git URL
Issue URL

Open Source

Released under the AGPLv3 license

Plug and Play

Browse assets directly from Godot

Community Driven

Created by developers for developers