The states improvements are definitely nice, and I did run into the whole "Unable to transition into current state" issue, as I was using it for a respawn. I ended up just making a "Respawn" state, and then quickly switch out of it to reset back to the original.
With this being in it definitely would make things a lot cleaner in some ways, as I can at least get the whole "Re-enter State" a bit easier.
Also the Observers and Hooks are really nice and will allow me to more cleanly implement a feature that I've been needing (Optional Components).
Noteworthy: this was our first release that used our new Release Candidate (RC) process and automation to facilitate collaboration on the release blog post. Both of which were a great success! The quality bar of the release has been raised significantly: expect fewer bugs and faster 3rd party plugin updates!
There is a Rust tool named `generate-release` within the website repository[0]. It handles interacting with the Github API to get a list of significant changes, breaking changes, and contributors. (The main Bevy repository has pull request labels for all of these, so this is pretty easy.)
I know the latest UI update/plan is not released yet, but do you feel like you’ve discovered the way forward in that area? Or are there still lots of unknowns?
Yup! I've had 95% of the new design written out for weeks now. The last unresolved questions revolved around some scene inheritance details, which I've largely sorted. I've been distracted by release prep, but now that its out I should have this ready in short order. I'll note that the primary focus is rolling out the new scene system / format. This enables and improves UI use cases, but the reactivity bits are still being investigated (ex: check out the bevy_quill and bevy_reactor experiments).
Outside of the core reactivity and scenes work, I'm really excited about the improvements in both text rendering and picking. I think both of those will make a huge difference in terms of usability and correctness.
Once those are a bit more stable, I'd like to target a focus system for UI, to enable good keyboard and gamepad menu navigation and to hook up to screen readers.
Probably been answered already (feel free to point me there) but how does Bevy compare with Godot (other than one might prefer Rust)? What type of game/situations would Bevy be much more performant where it matters?
Bevy makes it much easier to write reasonably fast, easily maintained, refactorable code. It's great for situations where you have a lot of complex logic, want to do something particularly weird, or require a lot of non-rendering performance (Unreal still crushes us on rendering performance due to several decades and billions of dollars of investment).
Factory builder and simulation games are the classic example of "when should you use Bevy". You should absolutely pick Godot right now for games that are more content-focused that need a lot of level design: puzzle games, platformers, walking simulators...
That makes sense. So Bevy would be a good choice is you want to example build a Hearts of Iron clone where rendering (i guess) isnt the heavy part but instead simulationg alot of events and complex AI actions. Thanks!
This release has Observer and Hooks which in my opinion really elevate the ability to express complex, reusable structures in the ECS.
For example, one of the well-known challenges in the paradigm is working with hierarchies or graphs - observers are a powerful tool for communicating between specific entities, and should make this a lot easier to express.
Hooks offer the ability to enforce cross-component consistency in a way that wasn’t previously available.
This is _not_ a repost from our perspective. This is a massive new chunk of features and content (993 pull requests from 256 contributors) including new hot-topic features like Virtual Geometry.
The GP comment is a bit overstated (I doubt anyone is going to ban Bevy posts) but Bevy has had plenty of recent exposure on HN and most release posts are moderated away on HN because the discussion is almost always about the project in general rather than the release, unless the changes are truly monumental.
That's your last three releases plus something about a foundation, in the last year alone. It's great it's getting traction but it's also quite a bit more than most other projects as it is.
The issue is that that refers to "Show HN" posts. If some engaged dev posts your updates, how is thst different from spamming every Opeani update? That's just organic interest, given that this is the one of the most well known Rust game engines, a mix of two topics that traditionally get attention here
Please reread https://news.ycombinator.com/item?id=9775868. It says one year since it received significant attention, not one year except when a massive chunk of features and content is added. Dan explicitly addresses that case (“but that only applies after the "significant attention" test has been passed”).
And as you can see, the criteria is “Whether or not it contains significant new information (SNI)” which is indeed exactly the opposite of what you are saying.
Your quote omits the portion where Dan explicitly addressed that case. It needs to be one year since it received “significant attention,” and also major new development. Dan’s post could be worded more clearly, though.
(We’re pretty far in the weeds here, but as long as we’re here – for all intents and purposes, this is a show HN.)
Good point - I just linked to the first relevant explanation. pvg linked to a much longer explanation that isn’t specific to, or about, Show HN: https://news.ycombinator.com/item?id=23071428
According to this, the submission is fine: it's a major version announcement, unlike the examples given in the post, with significant changes, which rule out the “the diff between Foo 1.3.3 and the last time Foo came out is not enough to support an interestingly different discussion”
'Major' to the developers and users but the focus is on the total HN audience to whom it's neither major nor minor, it's simply another Bevy release post and there have been several of these very recently. It's a pretty straightforward release dupe, all sorts of seemingly 'major' releases from huge projects get categorized and moderated like that all the time. E.g.
Then why are you linking to a post where dang spends lots of tome explaining how the criteria is “Whether or not it contains significant new information (SNI)” if you believe this criteria isn't relevant?
Because there's absolutely zero doubt that this release matches this criteria.
I didn't say anything of the sort so I don't understand the question. The post looks like a completely routine release dupe to me and you can check that yourself by searching for your favourite projects with the search box at the bottom of the page. Both of the things you pasted say exactly the opposite of what you're implying, when read in their context
Here's "SNI":
That's one reason I'm using a silly acronym: SNI! — to convey that it's a specialized use of those words. When we say things like "this is not significant new information, so we're treating this post as a dupe", or even the gentlest, most watered-down and tiptoey version of that language, there are always people who feel aggrieved on the project's behalf, as if we're putting it down or belittling the hard work of its devs. This explanation is for those readers.
It's a made up term because it's a weird, made-up local meaning, it doesn't mean 'someone who uses the project might think it's significant'. So that's why I'm linking it, because it matches this submission very well.
> The post looks like a completely routine release dupe to me
It may looks like dupe to you, but it definitely doesn't fit the description of dupe given in the comment you linked to.
> It's a made up term because it's a weird, made-up local meaning, it doesn't mean 'someone who uses the project might think it's significant'.
Please re-read the comment you linked to, because it indeed defines what constitute SNI in a pretty clear fashion, and by this definition the aforementioned post definitely contains SNI.
Or maybe you didn't even both reading the actual post you are commenting, and because of that you fail to see how a “Bevy 0.14” post could contain SNI.
Now that I'm thinking about it, it's the most likely answer because I don't see how someone who's read the post could claim in good faith that it doesn't fit the description of SNI.
Even just the implementation of Unreal Nanite in Bevy by itself is well beyond this bar, and it's only a fraction of the diff that the post is talking about.
You've pointing a a “Show HN”, it obviously doesn't apply to other kinds of posts (or are you gonna limit OpenAI's announcement links to once a year too ? ;)
> Effectively a dupe - this just got attention 3 months ago
Wait until you realize Rust new version makes it to the front page every 6 weeks… (It's a bit less true these days because Rust release are much more boring than they used to, but it was definitely the case just a couple years back)
With this being in it definitely would make things a lot cleaner in some ways, as I can at least get the whole "Re-enter State" a bit easier.
Also the Observers and Hooks are really nice and will allow me to more cleanly implement a feature that I've been needing (Optional Components).