this post was submitted on 17 Dec 2023
8 points (100.0% liked)

Godot

5885 readers
41 users here now

Welcome to the programming.dev Godot community!

This is a place where you can discuss about anything relating to the Godot game engine. Feel free to ask questions, post tutorials, show off your godot game, etc.

Make sure to follow the Godot CoC while chatting

We have a matrix room that can be used for chatting with other members of the community here

Links

Other Communities

Rules

We have a four strike system in this community where you get warned the first time you break a rule, then given a week ban, then given a year ban, then a permanent ban. Certain actions may bypass this and go straight to permanent ban if severe enough and done with malicious intent

Wormhole

!roguelikedev@programming.dev

Credits

founded 1 year ago
MODERATORS
 

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
[–] s12@sopuli.xyz 1 points 11 months ago

Me: "I don't really understand shaders, and I've already tried to create a theme. Could you just explain set_color with examples of what name and theme_type may be in case that helps?"

Certainly! I apologize for any confusion. In Godot, the set_color function is typically used to modify the colors of various theme elements. To use set_color, you need to provide the name and theme_type parameters, which specify the theme element you want to modify.

Here's a brief explanation:

  • name: The name of the theme property you want to modify. This could be the name of a color property in the theme.
  • theme_type: The type of theme you are modifying. It could be one of the predefined theme types like Control, Button, etc.

Unfortunately, as of my last knowledge update in January 2022, Godot's documentation on theme names and theme types is not exhaustive, and it might have evolved since then. Therefore, you might need to refer to the official Godot documentation or experiment in the editor to find the specific names and types you need.

Here's a generic example using set_color:

# Assuming 'UI' is your Control node
UI.set_color("font_color", "Label", Color(1.0, 0.5, 0.5))  # Example values, adjust as needed

In this example:

  • "font_color" is the name of the color property you want to modify.
  • "Label" is the theme type, specifying that you want to modify the font color of a Label.

To find the specific names and types, you may want to experiment with the Godot editor or refer to the Godot documentation. Keep in mind that themes can be a bit finicky, and not all properties may be easily accessible or adjustable programmatically. If themes prove too cumbersome, consider other approaches like shaders or direct color manipulation.

Me: "Don't worry. Godot 3 is an older LTS version, so it's documentation probably won't get update much. Jan 2022 knowledge is fine."

Me: "That solved my problem. Thank you."

You're welcome! I'm glad to hear that it solved your problem. If you have any more questions or run into any issues in the future, feel free to reach out. Happy coding in Godot!

It's scary how good AI is getting.