I want to create a "gradual colour change" effect in Godot.

eg: some_set_font_color_func(Color8(255,n,n) where n gradually decreases to make the text fade from white to red.

I can't figure out what function I would use in place of some_set_font_color_func to change a font's colour.

Godot themes are somewhat confusing. Given some var var UI:control how would I set the colour of any font(s) contained within that node?

you are viewing a single comment's thread
view the rest of the comments
[–] 3 points 2 years ago* (1 child)

You can edit font colors from the theme, theme override or by using modulate

Theres a function called set_color in the theme

docs: https://docs.godotengine.org/en/stable/classes/class_theme.html#class-theme-method-set-color

Canvas items have a modulate property that can be set to a new color to tint the element

docs: https://docs.godotengine.org/en/stable/classes/class_canvasitem.html#class-canvasitem-property-modulate

For this I would do the modulate route

  • source
  • hideshow 1 child comment
  • [–] [S] 1 point 2 years ago*

    I tried set_color, but I couldn't get it to work. I couldn't figure out what name and theme_type should be. I imagine name should be "font_color" after creating it in a theme. Would theme_type be like "Control" or "Label"?

  • source
  • parent