@@ -963,6 +963,89 @@ scripting language, and game design of programming puzzles.
963963
964964## Library & Tooling Updates
965965
966+ ### [ genesis]
967+
968+ [ genesis] by [ @StygianLightning ] is a library for generating statically-typed
969+ ECS worlds by using a procedural macro.
970+
971+ Unlike other ECS libraries and frameworks, which do dynamic borrow-checking
972+ at runtime, you define all your components upfront and generate
973+ a completely statically typed ECS, with borrow checking done at compile time.
974+ Gone are the days of passing a World between functions,
975+ only to encounter a dynamic borrow checking problem!
976+
977+ genesis is a lightweight ECS library that doesn't provide any scheduling capabilities.
978+ Instead, you can query the storage for each component type directly.
979+
980+ [ genesis ] : https://github.com/StygianLightning/genesis
981+ [ @StygianLightning ] : https://github.com/StygianLightning
982+
983+ ### [ Shipyard v0.5] [ shipyard-0-5 ]
984+
985+ [ Shipyard] by [ @leudz ] is an ECS library built on top of sparse sets
986+ and focused on usability and speed.
987+
988+ Main changes of the [ latest version] [ shipyard-0-5 ] :
989+
990+ - The ` system! ` macro, packs, and ` Shiperator ` trait were removed.
991+ - Bulk add entity - faster way than adding entities one by one.
992+ - Accurate modification tracking by default.
993+ - No more ` try_* ` - now all functions that can fail because of storage access
994+ return a Result while almost all others panic.
995+ - More flexible workload building and debugging.
996+ - Customizable views and storages.
997+ - Significant performance improvements.
998+
999+ [ Shipyard ] : https://crates.io/crates/shipyard
1000+ [ shipyard-0-5 ] : https://users.rust-lang.org/t/shipyard-0-5-release/57203
1001+ [ @leudz ] : https://github.com/leudz
1002+
1003+ ### [ gba] v0.4
1004+
1005+ [ gba] is a crate for making GBA games with Rust.
1006+ This month it was updated to 0.4!
1007+ It's using the new ` thumbv4-none-eabi ` target, and has
1008+ an overall simpler build process than before.
1009+
1010+ The project is still a work in progress, but if you've wanted to try
1011+ an embedded experience this is an easy way to test the waters.
1012+ No hardware required!
1013+ Compiled binaries can be run in a GBA emulator just fine.
1014+
1015+ [ gba ] : https://github.com/rust-console/gba
1016+
1017+ ### [ rust-gpu v0.3] [ rust-gpu-v0-3 ]
1018+
1019+ ![ A Sci-Fi helmet model] ( grr-gltf.jpg )
1020+ _ The Khronos Sci-Fi helmet model in a [ glTF model viewer] [ grr-gltf ]
1021+ created by [ @msiglreith ] using rust-gpu_
1022+
1023+ [ rust-gpu] is a new codegen backend by Embark Studios for Rust, aimed at making
1024+ Rust a first class language for writing GPU shaders!
1025+ This past month was the [ release of rust-gpu v0.3] [ rust-gpu-v0-3 ] .
1026+ Some of the highlights:
1027+
1028+ - A lot of technical debt that was visible to users
1029+ (such as #[ allow(unused_attributes)] ) was removed.
1030+ - rust-gpu now also supports basic ADT enums and has a whole inference pass
1031+ for storage class variables.
1032+ - All Embark's shaders for their internal engine
1033+ [ are now written in Rust] ( https://twitter.com/repi/status/1365256477569667075 )
1034+ \- no more GLSL/HLSL, just Rust for all CPU & GPU code!
1035+
1036+ Full release notes are available [ here] [ rust-gpu-v0-3 ] .
1037+
1038+ For more information on how to get started with using rust-gpu in your projects,
1039+ check out [ the Rust-GPU Dev Guide] ( https://embarkstudios.github.io/rust-gpu/book/ ) .
1040+
1041+ _ Discussions:
1042+ [ /r/rust] ( https://reddit.com/r/rust/comments/lxpcc2/announcing_rustgpu_v03 ) _
1043+
1044+ [ rust-gpu ] : https://shader.rs
1045+ [ rust-gpu-v0-3 ] : https://github.com/EmbarkStudios/rust-gpu/releases/tag/v0.3.0
1046+ [ grr-gltf ] : https://github.com/msiglreith/grr-gltf
1047+ [ @msiglreith ] : https://github.com/msiglreith
1048+
9661049### [ kira]
9671050
9681051[ kira] by [ @tesselode ] is a game audio library tailored to composers and other
0 commit comments