diff --git a/content/posts/newsletter-020/index.md b/content/posts/newsletter-020/index.md index e275b2965..7e391fb02 100644 --- a/content/posts/newsletter-020/index.md +++ b/content/posts/newsletter-020/index.md @@ -284,6 +284,33 @@ _Discussions: [/r/rust_gamedev](https://www.reddit.com/r/rust_gamedev/comments/m [@wumpf]: https://github.com/Wumpf [graphics team blog]: https://mozillagfx.wordpress.com/2021/03/10/webgpu-progress/ +### [rafx] + +![rafx tilemap rendering](rafx-tilemap-rendering.png) +_Rafx rendering an example tilemap from [LDTK level editor][rafx-ldtk]_ + +Rafx is a multi-backend renderer that optionally integrates with the +[distill][rafx-distill] asset pipeline. This month, we introduced a fourth +layer to the library, `rafx-renderer`. It provides a plugin system, simplifying +framework setup in a project. + +The demo now includes a tilemap renderer that integrates with the [LDTK level +editor][rafx-ldtk]. The `distill` integration processes the level files offline +for very efficient loading/rendering at runtime. + +Sprite rendering in general is also much faster now. Scenes with 40k-100k +sprites can render at 60fps (measured on M1 mini) depending on +transparency/distinct Z values in the scene. New examples demonstrate tilemap +and sprite rendering. + +Early work was also done to reuse descriptor sets across frames and reduce +dynamic memory allocation when working with descriptor sets. Rafx also +includes more options for HDR tonemapping. + +[rafx]: https://github.com/aclysma/rafx +[rafx-distill]: https://github.com/amethyst/distill +[rafx-ldtk]: https://ldtk.io + ### [WhatTheFrame] ![whattheframe gui](whattheframe.png) diff --git a/content/posts/newsletter-020/rafx-tilemap-rendering.png b/content/posts/newsletter-020/rafx-tilemap-rendering.png new file mode 100644 index 000000000..036bf35af Binary files /dev/null and b/content/posts/newsletter-020/rafx-tilemap-rendering.png differ