Newsletter 43: Feb 2023

tags: newsletter

Editors: @ozkriff, @AngelOnFira

Another month has gone by, so it's time to put together the Rust Gamedev newsletter with February's news!

Current Schedule

The soft deadline for all section PRs is March 4.

We may still accept PRs that are submitted later than this, as long as they're ready before the newsletter's release, but this isn't guaranteed. If you want your section to be included, don't leave it till the last minute!

How to Contribute

If you want to help writing the newsletter:

  • Read CONTRIBUTING.md.
  • Choose one or more of the "πŸ†“ free" sections listed below, and leave a comment letting us know you want to work on them.
    • The links in brackets (like "1, 2, 3") are suggestions of links to include in the section. Feel free to add more!
    • The username listed next to the section (like "@ozkriff?") is a suggestion of who may want to pick up the work (usually the project's developer, or someone who has expressed interest in the past).
    • You are not obligated to write a section if you're tagged or your project is listed! You're welcome to ask someone else to write the section, or to ask for your project to be excluded from this month's post.
    • Extra sections not listed in the plan are welcomed - just leave a comment and open a PR!
  • Write a short overview in the newsletter's Markdown file, making sure to follow the style guidelines (see below).
  • Send a PR to the source branch (example: #336).
  • Mention this issue in your PR's description to link it all together.

Style Guidelines

The full style guide is in CONTRIBUTING.md, but here are the most important rules:

  • Write in third-person perspective.
  • Each line must be 80 characters or less, for ease of reviewing/diffing.
  • Only one image per section is allowed.
    • The maximum size is 300kb for static images and 2.5mb for GIFs.
    • The image should come before the text, and must have alt text for accessibility.
    • Prefer static images to GIFs, to keep the page load times down.
  • Each section should be under 1000 characters, and under 6 paragraphs.
    • This only applies to the rendered text, not the markup.
  • Keep formatting minimal - no bold/italics/etc.
  • Avoid long/nested bullet point lists - no changelogs!

Please use these templates as a starting point:

Games/apps/libraries:

### [Game name]

![alt text](img)
_optional image label_

[Game name] ([GitHub], [Discord], [Twitter]) by [@nickname]
is... {short project description in one sentence}.

{An overview of the recent updates with links to more details}.

_Discussions: [/r/rust_gamedev](link), [Twitter](link), [etc](link)_

[Game name]: http://example.com

Articles/blog posts/videos/etc:

### [Article name]

![alt text](img)
_optional image label_

[@nickname] published an [article] about...
{overview what the resource is about}.

_Discussions: [/r/rust_gamedev](link), [Twiter](link), [etc](link)_

[Article name]: http://example.com

Current Structure & Status

Below is our current planned structure for the newsletter, and the status of each PR (which we'll try to keep updated).

This is not an exhaustive list - if you have your own project that you want to write about, just make a comment on this issue and open a PR!

Rust Gamedev Meetup

  • Details of this month's meetup - βœ”οΈ done by @ozkriff

Game Updates

  • Veloren (1) - βœ”οΈ done by @AngelOnFira
  • Tiny Glade (1, 2) - βœ”οΈ done by @anopara
  • Hydrofoil Generation (1) - βœ”οΈ done by @kunos
  • Cargo Space (1) - βœ”οΈ done by @johanhelsing
  • triverse (1, 2) - βœ”οΈ done by @ozkriff
  • Open Combat (1) - βœ”οΈ done by @buxx
  • Hoive (1) - πŸ†“ free (@cooscoos?)
  • Tigris and Euphrates (1) - πŸ†“ free (@0b01?)
  • CootsMania (1) - βœ”οΈ done by @kuviman
  • Idu (1, 2, 3) - βœ”οΈ done by @ozkriff
  • Tantan’s Voxel Project (1) - πŸ†“ free (@TanTanDev?)
  • Primitive Engineering (1, 2) - πŸ†“ free (@Defernus?)
  • scalp invaders (1) - πŸ†“ free (@cdsupina?)
  • Necking (1) - βœ”οΈ done by @ozkriff
  • Legend of Worlds (1) - βœ”οΈ done by @troyedwardsjr
  • Tunnet - βœ”οΈ done by @puzzled-squid
  • CyberGate - βœ”οΈ done by @cybersoulK

Learning Material Updates

  • First Person Game in 2KB (1) - βœ”οΈ done by @grantshandy
  • Exploring Rust for Vulkan drivers (1, 2) - πŸ†“ free (@gfxstrand?)
  • Making Galaga in Rust with Bevy (1) - βœ”οΈ done by @ozkriff
  • Learn WGPU (1) - πŸ†“ free (@sotrh?)
  • PhaestusFox's Bevy videos (1) - πŸ†“ free (@PhaestusFox?)
  • FPS Limiter in Rust by Hooking DirectX (1) - πŸ†“ free (@Zazama?)
  • Bevy Cheatbook (1, 2) - πŸ†“ free (@inodentry?)
  • Voxel Meshing (1, 2) - βœ”οΈ done by @ozkriff

Engine Updates

  • alkahest-rs (1, 2) - πŸ†“ free (@AnthonyUtt?)
  • Ambient (1) - βœ”οΈ done by @philpax
  • fyrox (1, 2) - βœ”οΈ done by @ozkriff
  • godot-rs - βœ”οΈ done by @Bromeon
  • Blue - βœ”οΈ done by @ElhamAryanpur
  • Geng - βœ”οΈ done by @kuviman

Tooling Updates

  • Graphite - βœ”οΈ done by @Keavon
  • denog (1. 2) - πŸ†“ free (@jbatez?)
  • yds' sprite & p/art editor (1) - βœ”οΈ done by @yds12
  • rerun.io (1) - βœ”οΈ done by @ozkriff
  • Rust on Nintendo DS (1) - πŸ†“ free (@SeleDreams?)

Library Updates

  • cvars (1) - βœ”οΈ done by @martin-t
  • seldom_state v0.4 (1) - βœ”οΈ done by @Seldom-SE
  • blink-alloc (1) - βœ”οΈ done by @zakarumych
  • hexx (1) - βœ”οΈ done by @ManevilleF
  • Taffy v0.3 (1, 2) - βœ”οΈ done by @alice-i-cecile
  • pecs (1) - βœ”οΈ done by @jkb0o
  • oxidized_navigation v0.2 (1) - πŸ†“ free (@TheGrimsey?)
  • warbler_grass - βœ”οΈ done by @EmanuelBoehm
  • nanoshredder - βœ”οΈ done by @not-fl3

Other News

  • Bullet points of any interesting news that doesn't have its own section - βœ”οΈ done by @ozkriff

Discussions

  • "We're not really game yet" (1)
  • "Does anyone here work in gamedev with Rust?" (1)

Publishing Steps

  • Final review - by everyone
  • Publish - by @ozkriff
  • Post on /r/rust, /r/rust_gamedev, /r/gamedev, URLO, twitter, mastodon - by @ozkriff
  • Pin thread on Twitter - by @ozkriff
  • Add comment links - by @ozkriff
  • Add a draft of next month's newsletter - by @ozkriff