diff --git a/content/news/052/index.md b/content/news/052/index.md index 4ff2f58e1..eab300938 100644 --- a/content/news/052/index.md +++ b/content/news/052/index.md @@ -2,7 +2,7 @@ title = "This Month in Rust GameDev #52 - June 2024" transparent = true date = 2024-07-03 -draft = true +draft = false +++ <!-- no toc --> @@ -38,7 +38,7 @@ Feel free to send PRs about your own projects! - [Interviews](#interviews) - [Blog Posts](#blog-posts) - [Jobs](#jobs) -- [Misc. Links](#misc-links) +- [Engine Newsletters](#engine-newsletters) - [Future News](#future-news) <!-- @@ -80,8 +80,8 @@ We will switch this to an actual @gamedev.rs address in the future. Please tell ### [Untitled Pixel Wizards Game][pixel-wizards] -{{ embed_video(type="video/mp4", src="untitled-pixel-wizards-game.mp4", -caption="Enemies now perceive, pursue and attack.. and occasionally get burned to death.") }} +{{ embed_video(type="video/mp4", src="untitled-pixel-wizards-game.mp4") }} +*Enemies now perceive, pursue, and attack... and occasionally get burned to death.* [Untitled Pixel Wizards Game][pixel-wizards] is a local-multiplayer [Noita]-like platformer about killing baddies using spells powered by pixel physics. This month was focused on juicing up said baddies: @@ -123,8 +123,8 @@ It includes questions about Rust, libraries, experiences writing a custom game e ### [Gunbug][gunbug] -[][gunbug] -_Gunbugs shooting at a bunch of eggplants_ +[][gunbug] +*Gunbugs shooting at a bunch of eggplants* Gunbug is a 2D online co-op horde survival shoot'em up game. @@ -135,7 +135,7 @@ It is built with [Bevy] and uses [bevy_rapier] for ray casting, [bevy_kira_audio] for audio, and [renet] for networking. The iOS and macOS versions are built with [xbuild]. -You can wishlist the game on [Steam][gunbug]. Playtests start in the upcomingv months. +You can wishlist the game on [Steam][gunbug]. Playtests start in the upcoming months. iOS and Android builds already work, but store pages don't exist yet. [gunbug]: https://store.steampowered.com/app/2946990?utm_source=this_month_in_rust @@ -183,8 +183,8 @@ _See also the [devlog article][gd-dev-june]._ ### [Bevy 0.14 Release Candidate][bevy-0.14-rc] - -_Sharp Screen-Space Reflections in Bevy 0.14_ + +*Sharp Screen-Space Reflections in Bevy 0.14* The Bevy game engine is gearing up to release version 0.14. The (probably) last release candidate is out now and ready for testing. @@ -231,27 +231,28 @@ and how to release the game on multiple platforms. ## Tooling Updates -### [Rusty Playdate] +### [Rusty Playdate 0.5][Rusty Playdate] - -_The Playdate console_ + +*The Playdate console* [Rusty Playdate] ([GitHub][Rusty Playdate], [Mastodon][Rusty Playdate Masto]) by [@boozook](https://github.com/boozook) -is the large set of crates with bindings, toolset for the full cycle of creating games for the [Playdate handheld console][playdate]. +is a large set of crates and tools for the full cycle of creating games for the [Playdate handheld console][playdate]. -Big part of the Rusty Playdate project is the `cargo-playdate` tool ([Crates.io][cargo-playdate crates-io], [GitHub][cargo-playdate gh]) -that helps to build games for [Playdate] hardware or a simulator. It works as a cargo-plugin as well as standalone. -The tool -- manages the compilation of your program, +A big part of the Rusty Playdate project is the [`cargo-playdate`][cargo-playdate gh] tool that functions as a build system. +It works as a cargo-plugin as well as a standalone, and does several things: +- It manages the compilation of your program, - builds assets for the crate and its dependencies, - generates a manifest, - and assembles it all into a bundle that runs on the device or a simulator. In this month `cargo-playdate` v0.5 has been [released][Rusty Playdate Release] and received massive refactoring, bugfixes and new features: -- support of [cargo's auto-targets][cargo-target-auto-discovery] _(targets such as `bin` or `example` that aren't declared in the Cargo.toml)_ -- [target-specific package-info][pdb-pdxinfo-override] inheritance from the main package-info -- `package.metadata.playdate.options` inheritance from the `workspace.metadata` -- incremental builds now work as expected - fixed an old problem where the tool corrupts cargo's cache, which triggered full rebuild + +- support for [cargo's auto-targets][cargo-target-auto-discovery], i.e. targets such as `bin` or `example` that aren't declared in the Cargo.toml +- [target-specific package-info][pdb-pdxinfo-override] is inherited from the main package-info +- `package.metadata.playdate.options` is inherited from the `workspace.metadata` +- incremental builds now work as expected + The register decoder in the [`pd-symbolize-crashlog`][playdate-symbolize-v0.2.0] was also updated. It now properly decodes all available registers such as @@ -263,7 +264,6 @@ _Discussions: [GitHub][Rusty Playdate Gh-discuss], [Matrix][Rusty Playdate Matri [playdate-symbolize-v0.2.0]: https://crates.io/crates/playdate-symbolize/0.2.0 [cargo-target-auto-discovery]: https://doc.rust-lang.org/cargo/reference/cargo-targets.html#target-auto-discovery -[cargo-playdate crates-io]: https://crates.io/crates/cargo-playdate [pdb-pdxinfo-override]: https://github.com/boozook/playdate/blob/main/support/build/README.md#target-specific-package-info "More about target-specific package-info" [cargo-playdate gh]: https://github.com/boozook/playdate/tree/main/cargo "cargo-playdate tool is a part of 'Rusty Playdate' project" [Rusty Playdate Release]: https://github.com/boozook/playdate/releases/tag/2024.06.18 "Release from June 18, 2024" @@ -279,7 +279,7 @@ _Discussions: [GitHub][Rusty Playdate Gh-discuss], [Matrix][Rusty Playdate Matri ### [egui_ratatui][egui_ratatui]  -_egui_ratatui running in Bevy_ +*egui_ratatui running in Bevy* [egui_ratatui][egui_ratatui] by [gold-silver-copper][gold] is an [egui][egui] widget that is also a [ratatui][ratatui] backend. It allows you to create Terminal User Interfaces (TUIs) inside egui. @@ -307,8 +307,8 @@ Certain APIs, such as loading banks from a pointer, are marked as unsafe, but ar ### [Bevy Lunex][bevy-lunex] - -_Bevypunk: a recreation of Cyberpunk 2077's UI made with Lunex_ + +*Bevypunk: a recreation of Cyberpunk 2077's UI made with Lunex* Lunex is a path based retained layout engine for Bevy entities, built around vanilla Bevy ECS. @@ -325,7 +325,8 @@ You can get started by reading the [bevy_lunex book][bevy-lunex-book]. ### [haalka] -{{ embed_video(type="video/mp4", src="haalka.mp4", caption="A Minecraft-like UI made with haalka") }} +{{ embed_video(type="video/mp4", src="haalka.mp4") }} +*A Minecraft-like UI made with haalka* হালকা: _in bengali, haalka means "light" (e.g. not heavy) and can also be used to mean "easy"_ @@ -340,22 +341,22 @@ its core abstraction can be used to manage signals-powered reactivity for any en ### [bevy_light_2d][bevy_light_2d] - + _A candle shining 2D light_ bevy_light_2d is a new general purpose 2D lighting for the Bevy game engine. -Designed to be simple to use, yet expressive enough to fit a variety of needs. Features include +Designed to be simple to use, yet expressive enough to fit a variety of needs. Features include: - Component driven design - Configurable point lights -- Camera specific ambient light -- Single camera rendering +- Camera-specific ambient light +- Single-camera rendering [bevy_light_2d]: https://github.com/jgayfer/bevy_light_2d ### [bevy_hanabi][bevy_hanabi] 0.11 - + _Trails in Hanabi_ Hanabi is a GPU particle system plugin for the Bevy game engine. @@ -365,7 +366,7 @@ The most notable new feature in [bevy_hanabi 0.11][bevy_hanabi] is support for t ### [berdicles][berdicles] - + _A fountain of particles_ berdicles is an expressive CPU particle system for the Bevy engine. Features include: @@ -397,7 +398,7 @@ berdicles is an expressive CPU particle system for the Bevy engine. Features inc ### [Metalmancy @ OpenSauce][metalmancy_interview] - + _Arcade cabinet close up_ [Metalmancy][metalmancy_website] are creating custom and configurable arcade machines. Their flagship game [Thetawave] is coded in Rust. @@ -413,7 +414,7 @@ and arcade machines at [OpenSauce][opensauce_website]. ### [Tiny Glade Developers Discuss Bevy, Proceduralism, Publishers & Cozy Games][tiny-glade-interview] - + _An idyllic scenery made in Tidy Glade_ To celebrate the release of Tiny Glade's [demo version][tiny-glade-steam], Pounce Light's Anastasia Opara and @@ -430,7 +431,7 @@ Bevy, Rust, self-publishing, and the "cozy games" genre. ### [Dioxus Labs + "High-level Rust"][dioxus-post] -This post by the founder of [Dioxus Labs][dioxus-labs] is a direct response to +[This post][dioxus-post] by the founder of [Dioxus Labs][dioxus-labs] is a direct response to the recently published ["Leaving Rust gamedev after 3 years"][leaving-post] by LogLogGames. If you've missed the original post, it has made its rounds as a well-written critique of Rust's gamedev ecosystem and shortcomings inherent to the language itself. @@ -448,10 +449,10 @@ _Discussions: [lobste.rs](https://lobste.rs/s/dsqumn/dioxus_labs_high_level_rust ### Virtual Geometry in Bevy 0.14 - + _The Stanford bunny split into meshlets_ -Ever wondered how [Unreal 5's Nanite][nanite] works under the hood? +Ever wondered how [Unreal 5's Nanite][nanite] works under the hood? Jasmine, who reimplemented the virtual geometry technology for Bevy's upcoming 0.14 release, wrote a [post][meshlets-post] explaining the concepts and the nitty-gritty details of the implementation. The post is very technical in nature, so if you've never heard of this technology before, @@ -469,14 +470,7 @@ for an unannounced project. [ubisoft-job]: https://www.ubisoft.com/en-us/company/careers/search/743999993500090-programmer-online-unannounced-project -## Misc. Links - -### Notable GDC talks - -- [Larian Cinematics: A Top-Down Look at Our Bottom-Up Approach in 'Baldur's Gate 3'](https://www.youtube.com/watch?v=MdmY9Mt-vz8&t) -- ['Valheim': Vikings, Roadmaps & Buying a Horse During Early Access](https://www.youtube.com/watch?v=YoOCUpdYYm4) - -### Engine Newsletters +## Engine Newsletters - This Week In Bevy - [Tiny Glade, VJ performances, and 2d lighting](https://thisweekinbevy.com/issue/2024-06-03-tiny-glade-vj-performances-and-2d-lighting) @@ -486,7 +480,7 @@ for an unannounced project. - This Week In Quads - [`blocking_event_loop` on ios opengl/metal, Docker article, and libxkbcommon on NixOS](https://macroquad.rs/twiq/week5/) -## Future news +## Future News <!-- Section to get more people involved in writing news. --> diff --git a/sass/_extra.scss b/sass/_extra.scss index c9cfc4ea0..2ef075ad6 100644 --- a/sass/_extra.scss +++ b/sass/_extra.scss @@ -99,7 +99,8 @@ h6:hover .anchor { margin-bottom: 0; } -input, button { +input, +button { font-size: inherit; } @@ -107,7 +108,8 @@ input { min-width: 0; // Allow the input to shrink on small devices. } -a.btn, // Trick to increase the specificity and win against rules such as a:visited +a.btn, +// Trick to increase the specificity and win against rules such as a:visited .btn { text-decoration: none; border-radius: 3px; @@ -149,6 +151,10 @@ video+em { color: $grey-color; } +video { + max-width: 100%; +} + .email-form { display: grid; margin-top: $spacing-unit; @@ -180,9 +186,9 @@ video+em { display: grid; grid-template-columns: repeat(2, auto); gap: 5px; - + label { grid-column: 1 / 3; font-size: .8em; } -} +} \ No newline at end of file