Hi! It's time for another #bevymergetrain :) Every week on Monday (pending illness and vacation), I go through #bevy's PR backlog to evaluate and hopefully merge any PR with two community approvals!
This week, there's 6 PRs ready: let's take a look!
Take a look at this project by Runi: a preliminary language server for WGSL. IMO this is one of the biggest barriers in making graphics programming genuinely approachable: I'd love to see this catch on!
#Bevy#RustLang I need some help. I'm trying to implement orbiting spaceship movement kinda like Eve Online. It works.. but the positions slowly drift apart as they continue orbiting, instead of remaining stable.
Anyone got any ideas?
I've already exhausted my knowledge by 1) normalizing all vectors and 2) making the actual update code dependent on delta time. This improved things a lot, but it's still an unstable system.
I realized I never finished a project in the #bevy game engine, even though I'm an active contributor.
To rectify this, I spent a full day this weekend writing an Asteroid clone. It's incredibly basic, but it works!
The visuals are implemented with gizmos, the hitboxes are a mess, and half of my code is converting between Vec2s and Vec3s, but I'm still happy with the outcome. :)
This year, I have a goal of programming a software application every quarter (~13 weeks / 90 days).
My first completed application was a game in the #Bevy game engine written in #Rust that is a rogue like game displayed in an emulated terminal emulator.
I learned a lot about Entity Component Systems, the benefit of design docs, and became a more knowledgeable ("better"?) programmer as a result.
Introducing renet2, a fork of the networking library renet that implements the game-oriented netcode standard.
Highlights:
Allow netcode servers to manage multiple data sources at once (e.g. UDP sockets and a WebTransport server).
Add built-in in-memory sockets and WebTransport sockets. You can now run a netcode server with native AND browser clients, with the same exact authentication workflow for all clients (using ConnectTokens).
Pretty basic, but I’m proud to have a “game” up and running. My brother even threw together a custom sprite for the animation.
Took me WAY longer than anticipated (almost threw in the towel several times). But starting to feel like I’ve turned a corner; it’s becoming more fun than tedious.
#OpenSource ist die Grundlage moderner #Softwareentwicklung und spielt auch bei der Produktion von Computer- und Videospielen eine immer größere Rolle.
Niklas Eicker stellt uns die Open Source-Engine #Bevy vor, mit der Spiele in #Rust entwickelt werden können. Niklas entwickelt nicht nur Spiele mit Bevy, sondern auch Plugins für Bevy und hat auch schon zu Bevy selbst beigetragen.
Does asset management in #bevy have you tangled in knots? Do you wish there was a clear, robust way you could structure your #gamedev data? Wish you knew how to design content formats that you can just hand off to your game designers to populate? @sixfold and I have you covered! Introducing leafwing_manifest, our newest crate. Built with the care, attention to detail and #[deny(missing_docs)] that you've come to expect from :leafwing:
I released a new tiny ergonomics crate a couple days ago https://github.com/Seldom-SE/seldom_singleton. I have 3 larger crates done, but I'd like to battle-test them first. Also, seldom_pixel will going from maintenance to active development pretty soon. I'd like to use it for my game's UI. So, I'll be replacing bevy_ecs_tilemap as the tilemap frontend so I can keep it updated with Bevy. Uh, and I have a bit of unreleased seldom_state work to release eventually. #bevy#gamedev#rustlang
That said, I'll wait for a second review: this is only a few hours old, super easy to review, and has a moderate number of lines changed. There's no rush :) Maybe you want to try your hand at reviewing Bevy PRs for the first time?
Thanks for following along! I've been slowly ramping back into work mode as my partner recovers: Sixfold and I have a #bevy crate cooking that we think you'll enjoy! Looks like just another full day of writing docs first before release though ;)
Here's part 2 of my Bevy Status Bar post from my Bevy Adventures series. In this one, I create a bevy plugin around our status bar from the previous post, into a functioning plugin, using rust generics!
We've long wanted a #bevy playground, just like the official #rustlang one, where you can type in code in the browser and quickly mess around with Bevy. Now, thanks to Liam, you can experience this for yourself! https://learnbevy.com/playground
While this is currently unofficial, it looks like a great learning tool, and checks off all my boxes for an MVP: editing, logging, visual window... So cool!
Introducing Svarog! A #bevy#roguelike all-you-can-eat library. I'm starting a bi-weekly devlog of this library here. This week, data-driven config and a hello-world of sorts!
Happy #bevymergetrain :) The other maintainers have been doing a great job staying on top of our #rustlang PRs for #bevy, so there's only 7 in our backlog to review and merge this week. I've been busy and stressed with life in the past week, so it's much appreciated. Let's take a look!
I finally have UI layers natively in my game engine! This is a rewrite of the roguelike engine I used for #7drl where I went with ImGUI because I didn't have exactly these five days to figure out all the ropes. I'm limiting myself to creating a roguelike library within #bevy that would actually move a lot of the config stuff (grids, fonts, tilesets, UI layouts) out of code and into data. So far 40% there, all the static stuff now loads from shiny CSV files (thanks @Kyzrati) and this IS the way.