News for hackers. Stuff that matters.
Re:Bevy game engine 0.6 by twofornone on Saturday January 08, 2022 @01:43PM (#29854726)
Looks like a good reason to finally try out Rust. Does HN have any recommended IDEs?
Re:Bevy game engine 0.6 by djmcnab on Saturday January 08, 2022 @01:47PM (#29854785)
You can either use rust-analyzer[1] (for which vscode is most well supported), or IntelliJ Rust [2]. Personally, I use `rust-analyzer` with vscode as a bevy developer.

[1]: https://github.com/rust-analyzer/rust-analyzer

[2]: https://www.jetbrains.com/rust/

Re:Bevy game engine 0.6 by justinhj on Saturday January 08, 2022 @02:27PM (#29855214)
I use Neovim 0.6.0 with its built LSP with some plugins including simrat39/rust-tools.nvim. It uses rust-analyzer. It works extremely well but I don't use the debugger at all. I've used IntelliJ with a Rust plugin, to and it has debugger support of sorts, but the overall experience was sluggish and I never went back.
Re:Bevy game engine 0.6 by petee on Saturday January 08, 2022 @01:45PM (#29854754)
I'm just learning myself, and I found just Visual Studio Code and the Rust extension are great on Windows
Re:Bevy game engine 0.6 by friedman23 on Saturday January 08, 2022 @02:21PM (#29855144)
Make sure to use the Rust Analyzer extension, it's is significantly better than the default Rust extension.
Re:Bevy game engine 0.6 by petee on Saturday January 08, 2022 @03:05PM (#29855602)
I tried for a minute but it just wouldn't work out of the box and I didn't have time to investigate, so I reenabled the default for now.

I thought I saw somewhere rust devs themselves recommending Rust Analyzer too

Re:Bevy game engine 0.6 by bobbyskelton41 on Sunday January 09, 2022 @12:49AM (#29860615)
Re:Bevy game engine 0.6 by fsloth on Saturday January 08, 2022 @01:55PM (#29854861)
Seconded! It all works incredibly well. Rust with Visual Studio Code and the relevant suggested extensions (CodeLLDB, rust-analyzer) must be least hostile expert system I've ever used (and I've tried a few).
Re:Bevy game engine 0.6 by nu11ptr on Saturday January 08, 2022 @03:34PM (#29855895)
I _love_ the Rust plugin for Intellij. I have used VSCode a ton as well, but never for Rust. In general, I think Intellij is heads and shoulders above VSCode, but it is possible that 'rust analyzer' makes all the difference (I might check it out sometime).
Re:Bevy game engine 0.6 by eklavya on Saturday January 08, 2022 @10:39PM (#29859768)
It does, rust-analyser is much better than IntelliJ rust right now.
Re:Bevy game engine 0.6 by lordnacho on Saturday January 08, 2022 @02:18PM (#29855115)
Yep, and I've used bevy. Just get VSCode and the rust-analyzer. It's remarkable how well it works together with the language. There's also a thing that prints the errors and warnings in line to make it stand out more, sometimes you'll miss a squiggle.

But also the suggestions are spot on quite often, eg finding the right import that you can just click without scrolling up to the top to insert, or adding/removing the & and * operators. You'll almost never come across a situation where you think it will compile but it doesn't.

Re:Bevy game engine 0.6 by pizza234 on Saturday January 08, 2022 @02:20PM (#29855141)
I've tried Bevy v0.5 and it was very immature (as a matter of fact, all the Bevy "games" are single-screen). By looking at the release notes, it's not clear if it now supports OpenGL, which means that on some setups, it's not even possible to run correctly at all.

It may be fun to write a hello world, but in this case, there are much easier (and more stable) engines.

A typical setup if VSCode + Rust Analyzer. RA wasn't very stable around 6 months ago, but it was stable enough to be used regularly.

Re:Bevy game engine 0.6 by mden on Saturday January 08, 2022 @08:20PM (#29858761)
What do you mean by single screen? There's no technical reason for that to be the case and there are already games that have multiple screens, even past the basic main menu + main game loop ones. You can find multiple functioning and fun, if small, games here https://bevyengine.org/assets/#games.

> it's not clear if it now supports OpenGL

Why do you need opengl when you have support for D3D, Vulkan, Metal, OpenglES, and WebGL2? What amount of the market are you missing?

The reason you don't see many Bevy games is 1) yes, it's new and relatively immature and 2) it takes a long time to make a game. That said, I've had a lot of fun building out a tbs game with it and have been very impressed with the foundation so far. On top of that you get to write in Rust which for me is a huge productivity boost when compared to writing in say C# for Unity, but that's subjective.

Re:Bevy game engine 0.6 by pizza234 on Sunday January 09, 2022 @04:22AM (#29861749)
> What do you mean by single screen? There's no technical reason for that to be the case

I've programmed on v0.5, and SystemSet, which is the base for state management, was very immature - it didn't even work with FixedTimeStamp (because they will compete on RunCriteria); I think it's this one: https://github.com/bevyengine/bevy/issues/2233.

I've tried implementing multiple states in a game, and it just didn't work. And I don't even know if it was a bug in my code or in Bevy, because state support is not stable, and the documentation is lacking.

Without proper state management, you'll end up running either a large amount systems, or fewer systems, with code for all the cases inside.

Due to the problematic RunCriteria design, even synchronous assets loading is problematic. There is a plugin for that, but what if another plugin causes RunCriteria conflicts? Who knows.

> Why do you need opengl when you have support for D3D, Vulkan

Because Vulkan may be broken for one reason or another, and then one ends up with a system where OpenGL is not supported, and Vulkan doesn't work. My (modern) system is such case.

Re:Bevy game engine 0.6 by Hemospectrum on Sunday January 09, 2022 @12:48AM (#29860611)
> Why do you need opengl when you have support for D3D, Vulkan, Metal, OpenglES, and WebGL2? What amount of the market are you missing?

My take: Software isn't used exclusively on new computers.

I was just reading a forum thread full of complaints that a certain emulator won't work on 4th-gen i5 laptops. I want the software I write to be accessible to owners of machines at least as old as that, and I hope I can do that with Bevy.

Re:Bevy game engine 0.6 by nchi3 on Sunday January 09, 2022 @08:20AM (#29862955)
Bevy is still in its very early days. Using their limited development time to develop for what is already today old hardware doesn't make much sense considering its peak is likely another 5+ years in the future. By the time Bevy is very mature, the hardware that is only able to run OpenGL will be even less relevant and a very small niche.

That being said, as far as I know Bevy is modular enough to write third party render backends. If it keeps growing, I'm sure someone will do that.

Re:Bevy game engine 0.6 by mahulst on Saturday January 08, 2022 @01:49PM (#29854807)
I’m in favor of intelliJ or CLion but I hear good stuff about rust analyzer and vacode as well.
Re:Bevy game engine 0.6 by pjmlp on Saturday January 08, 2022 @02:32PM (#29855255)
It pains to suggest it, but VSCode is one of the best experiences.

Don't forget to also add Microsoft's C/C++ tooling for the debugging support.

Re:Bevy game engine 0.6 by skavi on Sunday January 09, 2022 @01:28AM (#29860831)
Helix is nice, especially if you have rust-analyzer installed.