Bevy 0.14 – Data driven game engine
bevyengine.orgThe 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).
You can also check out my 3rd-party crate `pyri_state` for easier state refreshing (https://github.com/benfrankel/pyri_state/blob/main/examples/...) + other features like state pattern-matching. Just released v0.2.0 for bevy 0.14 :)
Bevy's creator and project lead here. Feel free to ask me anything!
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!
Any information you can provide on the automation for the release posting? This seems to be the hardest part for me.
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.)
Our new release notes process is outlined here: https://github.com/bevyengine/bevy-website/issues/1163
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).
Thanks for replying! I’ve gone to a bunch of bevy ui third party crates. Can’t really try quill yet I think.
Currently haalka is and sickle is looking excellent. Really looking forward to the official deal though!
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!
Any idea why the WASM+WebGL examples fail on Android Chrome?
Thanks to the whole Bevy team for their hard work on this release!
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.
Effectively a dupe - this just got attention 3 months ago (https://news.ycombinator.com/item?id=39672947, https://news.ycombinator.com/item?id=39677009) and 8 months ago (https://news.ycombinator.com/item?id=38144417).
Once a year has been suggested as the typical maximum frequency: https://news.ycombinator.com/item?id=9775868 . Consider reposting in 2025.
Also, coordinating comments and upvotes won’t do you any favors. It’s an easy way to get all submissions banned.
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.
A long modsplanation here:
https://news.ycombinator.com/item?id=23071428
Recent big Bevy articles:
https://news.ycombinator.com/item?id=38144417
https://news.ycombinator.com/item?id=39412940
https://news.ycombinator.com/item?id=36657970
https://news.ycombinator.com/item?id=39672947
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.
I'd rather have a few bevy posts every month than the daily deluge of AI articles.
Sure but I can't see how such a trade is either possible or on offer - it's one of the things discussed in the modsplanation blob.
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”).
Please reread it yourself: this isn't a “show HN” submission.
The relevant comment is here: https://news.ycombinator.com/item?id=23071428
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.
> to qualify as a new Show HN there needs to be some major new development, not just a new feature
One could argue a major version qualifies. Apart from the genuine dupe 3 months ago all of these are separate stories.
dang's comment also specifically covers "show hn" posts which this is not. Some clarification from dang would be helpful though.
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.)
>for all intents and purposes, this is a show HN
I don't really see how. Is it a Show HN because Bevy isn't a trillion dollar corporation making the news every other day?
It appears that Show HN has special algorithmic handling, which is why you would expect stricter rules.
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
What a bad faith comment. How is a new version announcement a dupe? If you don’t care then you don’t have to comment.
How is a new version announcement a dupe?
Lengthy explainer here 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.
https://hn.algolia.com/?dateRange=pastYear&page=0&prefix=tru...
The brief frontpage life of a couple of the highly upvoted ones:
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.
Don’t rely on my assessment, go read https://news.ycombinator.com/item?id=9775868. If you disagree, don’t tell me, suggest an improvement to Dan.
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 ? ;)
These are different articles being posted, not dupes.
Thanks for editing out the line where you told me to go get my brain checked.
Not sure what you’re talking about. Perhaps you saw a different comment.
> don’t tell me
You are the one initiative here.
> 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)