TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Bevy 0.8: data oriented game engine built in Rust

97 pointsby _cartalmost 3 years ago

6 comments

culialmost 3 years ago
I watched a recorded livestream the other day of a game developer making a game in Bevy. It was maybe the 5th one and I hadn&#x27;t caught the first 4. It had about 500 views. The video started off reviewing a PR made by a viewer who improved the inventory system they had going on as well as a few other contributions.<p>It was delightful to watch. Regardless of any criticisms of Rust compared to other &quot;next C++&quot; languages (e.g. Zig, Vale, Hare, Odin, Carbon, etc) the amazing community is what&#x27;s already ensured Rust&#x27;s place at the top made me realize that the community is going to drive Rust to stardom
评论 #32294170 未加载
ChadNauseamalmost 3 years ago
The pace of Bevy improvement is amazing. I think the current lack of an editor may almost be a blessing in disguise - game engines like Unity invest a ton of effort into their editor and if you don&#x27;t use it you start to feel the pain of leaving the beaten path. (e.g. built-in unity components with fields that can&#x27;t be easily modified through scripting, or have crazy-unintuitive APIs). Bevy has no such distractions and they put a lot of effort in making their API great. (You can see multiple examples of that into these release notes!) Though Bevy is still limited, it&#x27;s not uncommon for me to write something in Bevy and imagine what a pain it would have been in Unity. The reverse is true even more often, but that&#x27;s because Unity has a huge first-party library of plug-n-play features like pathfinding and physics that Bevy simply doesn&#x27;t have yet. When bevy is nicer, it&#x27;s because their architecture and API is nicer :D<p>Edit: this is coming from an ex-professional Unity dev
cityofdelusionalmost 3 years ago
Nice to see this release!<p>I hope the rendering pipeline is much more ergonomic -- I found doing shaders in Bevy 0.7 was incredibly painful. Most things in Bevy just &quot;make sense&quot;, but the render internals were somehow both low-level (lots of explicit memory sizing and boilerplate) and convoluted (think FizzBuzzEnterpriseEdition). It doesn&#x27;t help that WGPU and WGSL have very limited resources online compared to, well, OpenGL and GLSL or anything DirectX. It almost made me just reach for good old C++, especially since the normally amazing Rust errors were absolutely terrible with anything going on in render land. Hopefully I can check out 0.8 soon and see those improvements!<p>I hope Bevy going forward continues to put a lot of effort into the render pipeline so it is as ergonomic and intuitive as the rest of it. I think the ECS core is absolutely brilliant -- the rest just needs to be at the same level. A challenging language plus a difficult render path and a niche library (WGPU) is a tough sell to game devs IMO.
_cartalmost 3 years ago
Lead Bevy developer (and creator) here. Ask me anything!
评论 #32288163 未加载
评论 #32288148 未加载
评论 #32288241 未加载
评论 #32288153 未加载
dangalmost 3 years ago
Related:<p><i>Bevy 0.7: data oriented game engine built in Rust</i> - <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=31043668" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=31043668</a> - April 2022 (63 comments)<p><i>Bevy game engine 0.6</i> - <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=29854416" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=29854416</a> - Jan 2022 (89 comments)<p><i>Bevy&#x27;s First Birthday: a year of open source Rust game engine development</i> - <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=28132114" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=28132114</a> - Aug 2021 (13 comments)<p><i>Bevy 0.5: data oriented game engine built in Rust</i> - <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=26716166" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=26716166</a> - April 2021 (65 comments)<p><i>Bevy: A game engine built in Rust</i> - <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=26131350" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=26131350</a> - Feb 2021 (117 comments)<p><i>Bevy 0.4: data oriented game engine built in Rust</i> - <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=25480321" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=25480321</a> - Dec 2020 (23 comments)<p><i>Making a Snake Clone with Bevy</i> - <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=24999073" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=24999073</a> - Nov 2020 (11 comments)<p><i>Bevy 0.3: game engine built in Rust</i> - <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=24983956" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=24983956</a> - Nov 2020 (55 comments)<p><i>Bevy 0.2</i> - <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=24530698" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=24530698</a> - Sept 2020 (43 comments)<p><i>Bevy: A Game Engine in Rust</i> - <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=24334307" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=24334307</a> - Aug 2020 (42 comments)<p><i>Bevy: A data-driven game engine and app framework built in Rust</i> - <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=24123283" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=24123283</a> - Aug 2020 (103 comments)
armchairhackeralmost 3 years ago
Wow, I remember Bevy 0.7 being recent, wasn&#x27;t that just released a few months ago? (Update: 0.7 was released 3 months ago, 0.6 was released 6 months ago, Bevy itself was introduced around 2 years ago).<p>Anyways, Rust seems viable for gamedev and IMO Bevy is taking a great approach wrt the borrow checker (by using ECS, more liberal types even if it technically creates UB). I really hope this project takes off and actually leads to some great games, and <i>maybe</i> it will manage to be less bloated than some other game engines...<p>&gt; Bevy officially only supports Rust as the &quot;one true way to define app logic&quot;. We have very good reasons for this and that philosophy likely won&#x27;t change any time soon<p>This is one thing disagree with. At least until&#x2F;unless Rust gets a way to write code without worrying about borrow checker, like a Rust DSL which provides automatic Cow or Rc&lt;RefCell on everything.<p>Rust&#x27;s performance is critical for some game logic but a lot of logic really <i>doesn&#x27;t</i> need performance, and the borrow checker is going to make that non-performance-sensitive code <i>much</i> harder to write, for no gain. This is especially an issue because most game devs work in teams and have team members who aren&#x27;t as experienced with performance or the borrow checker or coding in general. It would be nice to have a &quot;sandboxed&quot; environment where a) you don&#x27;t worry about the borrow checker and b) everything it checked so you don&#x27;t worry about annoying memory corruption issues, but in exchange the code is a lot slower.<p>&gt; These, when combined with our reflection APIs, provide the tools needed to start building scripting support!<p>&gt; @jakobhellermann has started building their own JavaScript &#x2F; TypeScript plugin for Bevy.<p>But it looks like they&#x27;re making it possible to interface with other languages anyways! Which is the right move IMO. The Bevy maintainers and I can disagree with using multiple languages, but it doesn&#x27;t matter as long as they provide the minimal bare-bones tools to do whatever.