Skip to content

Conversation

adamscott
Copy link
Member

@adamscott adamscott commented Aug 11, 2025

The latest preview "snapshot" is available here: https://adamscott.github.io/godot-website/releases/4.5/
(it doesn't work on first load, you need to refresh at least once)

Todo

  • Add new animation player features into a single big feature
  • Add some of GDExtension missing features
    • Allow calling Object::set_script_instance() from GDExtension
    • Add mechanism to get which classes an extension is using / build profiles
  • Add most of Android missing features
  • Add most of XR missing features
  • Fixing some texts tagged with TODO
    • Recursive overrides
  • Add media content as much as possible
  • Add release thumbnail
  • Update blog post content

@adamscott adamscott added topic:content Issues and PRs related to static content topic:blog New blogposts and corrections labels Aug 11, 2025
@adamscott adamscott changed the title 4.5 release 4.5 release page Aug 11, 2025
@JohnVeness
Copy link
Collaborator

I've only skimmed it so far, but this looks great, well done :)

One initial problem, though: from an accessibility viewpoint, I don't like the video at the top which animates behind the "Making dreams accessible" and "Before you update" textboxes. Even with the blur, the sudden background colour changes, and the moving background behind the text, can be very distracting and make it hard to read.

Copy link
Contributor

@paddy-exe paddy-exe left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Small nitpick. Looks great otherwise

@Alex2782
Copy link
Member

Add most of Android missing features

I checked 4.5 Interactive Changelog: link
I think all important Android changes were listed in beta1-blog
https://godotengine.org/article/dev-snapshot-godot-4-5-beta-1/#android

I can't estimate what else is worth mentioning besides TouchActionsPanel.
Because of Camera Feed support, we have also stopped supporting Android 5 + 6.
godotengine/godot#106148
there were 3 x 😕 as a reaction

Copy link
Member

@AThousandShips AThousandShips left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Initial pass

Copy link
Member

@clayjohn clayjohn left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Left some feedback on the rendering section!

@@ -0,0 +1,24 @@
---
type: entry
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This needs to have a before/after photo attached. This is a case where a picture is worth 1000 words

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This needs to have a before/after photo attached. This is a case where a picture is worth 1000 words

I absolutely agree.

Copy link
Collaborator

@JohnVeness JohnVeness left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overall very good, just some suggested tweaks, and a couple of questions :)

SVGs are different from bitmap images as they are vector-based. It means that no matter how much you zoom, the shapes will never break down into discrete pixels.
Until this release, Godot was converting every SVG file into a bitmap-based image. It is now possible to load SVG file (even dynamically) properly with the new `SVGTexture` resource.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Worth mentioning that it is used for default theme elements, making UI controls smoothly scalable with enabled oversampling and canvas_item scale mode (and can be used in custom themes for the same purpose):

Same scene in 4.4.1 vs. 4.5 (look at slider drag handle and check button scaling).

Screen.Recording.2025-08-11.at.23.41.58.mov

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The difference in this example is hard to spot on smaller screens. Would cropping the video work?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A bit more zoomed in versions

Screen.Recording.2025-08-12.at.21.36.35.mov

@Calinou
Copy link
Member

Calinou commented Aug 12, 2025

@adamscott Do you have access to the project used to render the background video? I'd like to re-record and re-encode it for better quality if possible (less aliasing, less macroblocking in the first seconds).

@JohnVeness
Copy link
Collaborator

JohnVeness commented Aug 13, 2025

Thanks for applying my suggestions, @adamscott :). There were a couple where you gave it a thumbs up and resolved the conversation, but it looks like you overlooked applying them...? I unresolved the conversations in those instances.

Copy link
Collaborator

@JohnVeness JohnVeness left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A further pass...

title: Allow selecting multiple remote nodes at runtime
blockquote: TODO
text: |
The new embedded game window [introduced in 4.4](https://godotengine.org/releases/4.4/#embedded-game-window) highlighted an issue the editor had for many years now: the remote node list didn’t support selecting more than one item.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why did the embedded game window highlight this issue?

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Perhaps because users were more likely to be selecting objects in the game during runtime, thanks to the game window being more tightly integrated with the editor?

Regardless, for brevity's sake I think there could be merit in removing this, and just focusing on the problem and how it was solved.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Perhaps because users were more likely to be selecting objects in the game during runtime, thanks to the game window being more tightly integrated with the editor?

This ^

Regardless, for brevity's sake I think there could be merit in removing this, and just focusing on the problem and how it was solved.

I don't know. That feature is already quite terse.

text: |
SVGs are different from bitmap images as they are vector-based. It means that no matter how much you zoom, the shapes will never break down into discrete pixels.
Until this release, Godot was converting every SVG files into a bitmap-based image. It is now possible to load SVG file (even dynamically) properly with the new `SVGTexture` resource.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think "properly" is a little woolly here. Maybe "as scalable vector images"?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I need to reword this feature, especially since it doesn't do everything (for now) that users may expect of it.

text: |
Not everyone can read colors. So we added a little color preview besides every `Color` value.
We even pushed the idea further: if you click that preview icon, you can edit the value on the spot using a color picker.
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could a short video clip be added to demonstrate this?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, it's in the plans.

- /releases/4.5/
---

Look forward to plenty of quality of life improvements hidden within this release. Faster load speeds, reduced stutter, streamlined processes — spotting all the optimizations that have been applied in the background will take some time.
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For me at least, the sentence ending with "...will take some time" just leaves the idea of things "taking time" as the last thought in my head, which is probably the opposite of what we want here 😅 If others don't have the same instinct then this can be disregarded, but for now I think it might be worth considering if there's a different way it could be phrased, that puts more of an emphasis on speed itself.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That text is the same as the blog post for the last release. I should maybe reword it a little bit (even if 99% of the people will never read it).


Look forward to plenty of quality of life improvements hidden within this release. Faster load speeds, reduced stutter, streamlined processes — spotting all the optimizations that have been applied in the background will take some time.

On top of that, long-awaited comfort features like embedded game windows and interactive in-game editing will feel more in line with other software on the market, making transitioning between them an even smoother experience. The editor overhaul alone takes up a big chunk of this release, after all.
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What is the "editor overhaul" being referred to here? The "Editor" section certainly has some nice improvements, but nothing sticks out to me as quite an "overhaul".

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Again, this was the last release text I need to change. Sorry.

@adamscott
Copy link
Member Author

One initial problem, though: from an accessibility viewpoint, I don't like the video at the top which animates behind the "Making dreams accessible" and "Before you update" textboxes. Even with the blur, the sudden background colour changes, and the moving background behind the text, can be very distracting and make it hard to read.

I'll see what I can do, @JohnVeness.

contributors:
- name: Darío
github: DarioSamo
read_more: https://github.com/godotengine/godot/pull/99551
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

PR godotengine/godot#99768 is also important here

Suggested change
read_more: https://github.com/godotengine/godot/pull/99551
read_more: https://github.com/godotengine/godot/pulls?q=is%253Apr+is%253Amerged+99551+99768

rank: 1
importance: 4
anchor: allow-calling-object-set-script-instance-from-gdextension
title: Allow calling `Object::set_script_instance()` from GDExtension
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is such a small feature, I'm not totally sure we need to call it out in the release notes?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I can remove it!

@adamscott
Copy link
Member Author

I added a way to manually highlight code without resorting to html tags. It inspires itself from the markdown links. (note: the two backticks are important for non-blocked code.)

Hello, ``@[World](enginetype)``

The new highlight_code filter will convert this to

Hello, <span class="code-highlight enginetype">World</span>

@JohnVeness
Copy link
Collaborator

I added a way to manually highlight code without resorting to html tags.

Love it :)

@adamscott
Copy link
Member Author

adamscott commented Sep 4, 2025

I added the SCSS @mixin text-punch() for more... punch!

Notice how after, there's more oomph to letters, as there's a little small drop shadows applied.

BeforeAfter
LightScreenshot 2025-09-04 at 18-19-31 Godot 4 5 making dreams accessible – Godot EngineScreenshot 2025-09-04 at 18-18-39 Godot 4 5 making dreams accessible – Godot Engine
DarkScreenshot 2025-09-04 at 18-19-46 Godot 4 5 making dreams accessible – Godot EngineScreenshot 2025-09-04 at 18-18-18 Godot 4 5 making dreams accessible – Godot Engine

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
topic:blog New blogposts and corrections topic:content Issues and PRs related to static content
Projects
None yet
Development

Successfully merging this pull request may close these issues.