@@ -96,8 +96,8 @@ from the meetup:
96
96
- Micro Game Engine - [ @AngelOnFira ]
97
97
- Graphite - [ @GraphiteEditor ]
98
98
99
- The meetups take place on the second Saturday of every month via the [ Rust Gamedev
100
- Discord server] [ rust-gamedev-discord ] and are also [ streamed on
99
+ The meetups take place on the second Saturday of every month via the [ Rust
100
+ Gamedev Discord server] [ rust-gamedev-discord ] and are also [ streamed on
101
101
Twitch] [ rust-gamedev-twitch ] .
102
102
103
103
[ gamedev-meetup-video ] : https://youtu.be/s9kf9HVUKYE
@@ -122,8 +122,8 @@ This month the game had two new first-time contributors, [@0HyperCube] and
122
122
123
123
The most notable updates are:
124
124
125
- - several multiplayer related screens were added to the menu: sign-in /
126
- sign-up, game listing, and game creation,
125
+ - several multiplayer related screens were added to the menu: sign-in / sign-up,
126
+ game listing, and game creation,
127
127
- building draft is now semi-transparent and colored green or red based on
128
128
obstacles,
129
129
- double clicking on a unit or building leads to the selection of all visible
@@ -171,16 +171,16 @@ allows detecting de-syncs by constantly performing rollbacks and comparing world
171
171
state checksums). This caught some very rare de-sync bugs.
172
172
173
173
The game also adopted [ Matchbox] [ cargospace_matchbox ] 's newly added support for
174
- cross-platform p2p. This means sessions between players on web and native
175
- are now supported ([ video] [ cargospace_cross_platform_video ] ).
174
+ cross-platform p2p. This means sessions between players on web and native are
175
+ now supported ([ video] [ cargospace_cross_platform_video ] ).
176
176
177
177
All of this is discussed in detail in the [ third devlog
178
178
entry] [ cargospace_devlog_3 ] .
179
179
180
180
Johan also wrote [ an article] [ cargospace_devlog_4 ] on how sound effects were
181
- implemented in a rollback-aware way, canceling mispredicted sounds, and
182
- handling "late" sounds. It describes a solution that could easily be adopted for
183
- any game made with [ ` bevy_ggrs ` ] [ bevy_ggrs ] .
181
+ implemented in a rollback-aware way, canceling mispredicted sounds, and handling
182
+ "late" sounds. It describes a solution that could easily be adopted for any game
183
+ made with [ ` bevy_ggrs ` ] [ bevy_ggrs ] .
184
184
185
185
[ Cargo Space ] : https://helsing.studio/cargospace
186
186
[ cargospace_devlog_3 ] : https://johanhelsing.studio/posts/cargo-space-devlog-3
@@ -196,22 +196,21 @@ any game made with [`bevy_ggrs`][bevy_ggrs].
196
196
![ Screenshot of a tree emerging from a cave in Idu] ( idu-newsletter.jpeg )
197
197
_ Screenshot of a tree emerging from a cave in Idu_
198
198
199
- [ Idu] ([ Discord] [ idu_discord ] )
200
- Idu is a strategic sandbox game about growing plants that wish to reclaim
201
- nature, developed by [ Elina Shakhnovich] [ eli_mastodon ] and
202
- [ Johann Tael] [ johann_mastodon ] featuring a bespoke Vulkan-based engine in
203
- Rust.
199
+ [ Idu] ([ Discord] [ idu_discord ] ) Idu is a strategic sandbox game about growing
200
+ plants that wish to reclaim nature, developed by [ Elina
201
+ Shakhnovich] [ eli_mastodon ] and [ Johann Tael] [ johann_mastodon ] featuring a
202
+ bespoke Vulkan-based engine in Rust.
204
203
205
- After almost a whole year of relative silence, they have begun releasing new demos
206
- in January. The new demo version 8 comes with a new renderer supporting
207
- interactive, flowing water. Also, the simulated trees in Idu changed
208
- a lot, as they're now able to flower, in addition to dropping leaves.
209
- The new demo features a lot of new plant textures, branching logic, and better
210
- rhizome and root simulation.
204
+ After almost a whole year of relative silence, they have begun releasing new
205
+ demos in January. The new demo version 8 comes with a new renderer supporting
206
+ interactive, flowing water. Also, the simulated trees in Idu changed a lot, as
207
+ they're now able to flower, in addition to dropping leaves. The new demo
208
+ features a lot of new plant textures, branching logic, and better rhizome and
209
+ root simulation.
211
210
212
- Player accessibility and the gameplay itself is better now as well, due to
213
- a completely new menu and a lot of new items, such as porous gabion blocks
214
- and ladders.
211
+ Player accessibility and the gameplay itself is better now as well, due to a
212
+ completely new menu and a lot of new items, such as porous gabion blocks and
213
+ ladders.
215
214
216
215
Read more and download the newest demo from [ Idu's page on itch.io] [ itch ] .
217
216
@@ -238,8 +237,7 @@ Hot-reloading allows you to change the Site2 code and watch the changes take
238
237
effect in real-time. The official 2023 Veloren OST was also released, and can be
239
238
[ watched on YouTube] [ veloren-ost ] .
240
239
241
- December's full weekly devlogs: "This Week In Veloren...":
242
- [ #204 ] [ veloren-204 ] .
240
+ December's full weekly devlogs: "This Week In Veloren...": [ #204 ] [ veloren-204 ] .
243
241
244
242
[ veloren ] : https://veloren.net
245
243
[ veloren-204 ] : https://veloren.net/devblog-204
@@ -252,9 +250,9 @@ December's full weekly devlogs: "This Week In Veloren...":
252
250
253
251
![ Particle System Preview] ( particle_system.gif )
254
252
255
- [ Fyrox] ([ Discord] [ fyrox_discord ] , [ Twitter] [ fyrox_twitter ] ) is a game engine that
256
- aims to be easy to use and provide a large set of out-of-the-box features. In January
257
- it hit version 0.29 and got the following features:
253
+ [ Fyrox] ([ Discord] [ fyrox_discord ] , [ Twitter] [ fyrox_twitter ] ) is a game engine
254
+ that aims to be easy to use and provide a large set of out-of-the-box features.
255
+ In January it hit version 0.29 and got the following features:
258
256
259
257
- Animation system rework
260
258
- Animation editor
@@ -270,7 +268,8 @@ it hit version 0.29 and got the following features:
270
268
- Ability to animate material properties
271
269
- Various bug fixes
272
270
273
- You can read more about the changes in the [ feature highlights post] [ fyrox-0.29 ] .
271
+ You can read more about the changes in the [ feature highlights
272
+ post] [ fyrox-0.29 ] .
274
273
275
274
[ Fyrox ] : https://github.com/FyroxEngine/Fyrox
276
275
[ fyrox_discord ] : https://discord.com/invite/xENF5Uh
@@ -283,9 +282,9 @@ You can read more about the changes in the [feature highlights post][fyrox-0.29]
283
282
284
283
![ Title card: Introduction to the Entity Component System] ( intro-ecs.png )
285
284
286
- [ @indiedevcasts ] published [ a new blog post] [ tut-ecs-intro ] ,
287
- exploring object-oriented and data-oriented designs before
288
- giving an introduction to the Entity Component System paradigm.
285
+ [ @indiedevcasts ] published [ a new blog post] [ tut-ecs-intro ] , exploring
286
+ object-oriented and data-oriented designs before giving an introduction to the
287
+ Entity Component System paradigm.
289
288
290
289
[ tut-ecs-intro ] : https://indiedevcasts.com/posts/ecs-introduction
291
290
[ @indiedevcasts ] : https://twitter.com/indiedevcasts
@@ -298,10 +297,11 @@ giving an introduction to the Entity Component System paradigm.
298
297
299
298
[ Foxtrot] was created by Jan Hohenheim ([ @janhohenheim ] ) as an all-in-one
300
299
starting point for 3D projects made in Bevy. While he appreciated that other
301
- Bevy templates showed nicely how to wire up systems and setup a game loop,
302
- he was missing a showcase for commonly used features that are scattered around
303
- various libraries. So he created Foxtrot, where he collected the most basic features
304
- he could need for future projects or jams. The current version [ v0.1.5] features:
300
+ Bevy templates showed nicely how to wire up systems and setup a game loop, he
301
+ was missing a showcase for commonly used features that are scattered around
302
+ various libraries. So he created Foxtrot, where he collected the most basic
303
+ features he could need for future projects or jams. The current version
304
+ [ v0.1.5] features:
305
305
306
306
- loading a 3D level from GLTF files
307
307
- automatically assigning physics colliders
@@ -328,14 +328,13 @@ node graph compositing engine.
328
328
329
329
New features from January's [ sprint 22] [ graphite-sprint-22 ] :
330
330
331
- - _ Picture This:_ Imported images are now part of the node graph. The new
332
- _ Image Frame_ node converts bitmap data into a vector rectangle holding the
333
- image. This paves the way for other vector data like shapes and text to soon
334
- be converted into nodes and composited alongside images.
331
+ - _ Picture This:_ Imported images are now part of the node graph. The new _ Image
332
+ Frame_ node converts bitmap data into a vector rectangle holding the image.
333
+ This paves the way for other vector data like shapes and text to soon be
334
+ converted into nodes and composited alongside images.
335
335
- _ Instant Iterations:_ Incremental graph compilation avoids recompiling the
336
- whole graph each time an edit is made or a value changes. This makes
337
- iteration faster and enables caching of intermediate computations for faster
338
- rendering.
336
+ whole graph each time an edit is made or a value changes. This makes iteration
337
+ faster and enables caching of intermediate computations for faster rendering.
339
338
340
339
Later this month, the Alpha Milestone 2 release will launch with new node graph
341
340
features, a revamped website, and a wider-reaching project announcement. Join
@@ -356,25 +355,27 @@ designs with #MadeWithGraphite on Twitter.
356
355
357
356
### [ big-brain]
358
357
359
- [ big-brain] ([ GitHub] [ big-brain-github ] , [ Discord] [ big-brain-discord ] ) by [ @ zkat ]
360
- is a highly parallel [ Utility AI] [ big-brain-utility-ai ] library
361
- for the Bevy game engine.
358
+ [ big-brain] ([ GitHub] [ big-brain-github ] , [ Discord] [ big-brain-discord ] ) by
359
+ [ @ zkat ] is a highly parallel [ Utility AI] [ big-brain-utility-ai ] library for the
360
+ Bevy game engine.
362
361
363
- [ big-brain] recently tagged [ v0.16.0] [ big-brain-v16 ] ,
364
- bringing with it a couple of breaking changes and a few goodies.
362
+ [ big-brain] recently tagged [ v0.16.0] [ big-brain-v16 ] , bringing with it a couple
363
+ of breaking changes and a few goodies.
365
364
366
365
Probably the biggest change in this release is the removal of the blanket
367
- [ ` ActionBuilder ` ] [ big-brain-action-builder ] and [ ` ScorerBuilder ` ] [ big-brain-scorer-builder ]
368
- implementations for ` Clone ` types. This is a fairly significant breaking change,
369
- but one that is fairly easy to resolve: simply use the new ` #[derive(ActionBuilder)] `
370
- and ` #[derive(ScorerBuilder)] ` macros to derive the necessary implementations
371
- for your Action and Scorer Components and you should be good to go.
372
-
373
- Finally, since the recent [ merging of the bevy scheduler changes] [ big-brain-bevy-scheduler-changes ] ,
374
- big-brain users should expect the next version of big-brain to bring with it
375
- some significant breaking changes to scheduling, so keep an eye out for that
376
- and be mindful of building a lot on top of the current [ ` BigBrainStage ` ] [ big-brain-stage ]
377
- (which is used by the default ` BigBrainPlugin ` ).
366
+ [ ` ActionBuilder ` ] [ big-brain-action-builder ] and
367
+ [ ` ScorerBuilder ` ] [ big-brain-scorer-builder ] implementations for ` Clone ` types.
368
+ This is a fairly significant breaking change, but one that is fairly easy to
369
+ resolve: simply use the new ` #[derive(ActionBuilder)] ` and
370
+ ` #[derive(ScorerBuilder)] ` macros to derive the necessary implementations for
371
+ your Action and Scorer Components and you should be good to go.
372
+
373
+ Finally, since the recent [ merging of the bevy scheduler
374
+ changes] [ big-brain-bevy-scheduler-changes ] , big-brain users should expect the
375
+ next version of big-brain to bring with it some significant breaking changes to
376
+ scheduling, so keep an eye out for that and be mindful of building a lot on top
377
+ of the current [ ` BigBrainStage ` ] [ big-brain-stage ] (which is used by the default
378
+ ` BigBrainPlugin ` ).
378
379
379
380
_ Discussions: [ Mastodon] [ zkat-mastodon-ann ] _
380
381
@@ -392,16 +393,14 @@ _Discussions: [Mastodon][zkat-mastodon-ann]_
392
393
393
394
### [ RustySynth]
394
395
395
- [
396
- ![ Waveform displayed on a screen] ( rustysynth-yt.png )
397
- _ Video: an example of realtime MIDI synthesis with RustySynth on rust-sfml_
398
- ] [ rustysynth-video ]
396
+ [ ![ Waveform displayed on a screen] ( rustysynth-yt.png )
397
+ _ Video: an example of realtime MIDI synthesis with RustySynth on rust-sfml_ ] [ rustysynth-video ]
399
398
400
- [ RustySynth] is a SoundFont MIDI synthesizer written in pure Rust.
401
- The purpose of this library is to provide MIDI music playback functionality
402
- for any Rust application without complicated dependencies.
403
- The code base is lightweight and can be used with any audio driver
404
- that supports streaming audio (e.g. [ rust-sfml] ).
399
+ [ RustySynth] is a SoundFont MIDI synthesizer written in pure Rust. The purpose
400
+ of this library is to provide MIDI music playback functionality for any Rust
401
+ application without complicated dependencies. The code base is lightweight and
402
+ can be used with any audio driver that supports streaming audio (e.g.
403
+ [ rust-sfml] ).
405
404
406
405
Features:
407
406
@@ -416,39 +415,39 @@ Features:
416
415
417
416
### [ tween]
418
417
419
- ` tween ` is a library for manipulating values in stylish and beautiful ways.
420
- It has been almost entirely rewritten for ` v2.0.0 ` , now featuring a
421
- significantly improved API, fewer generics, and much, much faster performance.
418
+ ` tween ` is a library for manipulating values in stylish and beautiful ways. It
419
+ has been almost entirely rewritten for ` v2.0.0 ` , now featuring a significantly
420
+ improved API, fewer generics, and much, much faster performance.
422
421
423
- Additionally, it has added support for Looping, Oscillating, and Extrapolating tweens.
424
- With all of this, making custom tweens is much easier. An example of making a Bezier
425
- tween is included.
422
+ Additionally, it has added support for Looping, Oscillating, and Extrapolating
423
+ tweens. With all of this, making custom tweens is much easier. An example of
424
+ making a Bezier tween is included.
426
425
427
426
[ tween ] : https://github.com/sanbox-irl/tween
428
427
429
428
### [ scene-graph]
430
429
431
- ` scene-graph ` is a library for creating graph structures similar to the
432
- one used in engines like Unity or Unreal. It is fast, performant, and easy to
433
- manipulate. It's especially useful for user interfaces. Although only in ` v0.1.0 ` ,
434
- feedback would be very appreciated.
430
+ ` scene-graph ` is a library for creating graph structures similar to the one used
431
+ in engines like Unity or Unreal. It is fast, performant, and easy to manipulate.
432
+ It's especially useful for user interfaces. Although only in ` v0.1.0 ` , feedback
433
+ would be very appreciated.
435
434
436
435
[ scene-graph ] : https://github.com/sanbox-irl/scene-graph
437
436
438
437
### [ torchbearer]
439
438
440
439
![ Torchbearer in action] ( torchbearer.png )
441
- _ An exemple of torchbearer in action,
442
- demonstrating both pathfinding and field of view_
440
+ _ An exemple of torchbearer in action, demonstrating both pathfinding and field
441
+ of view_
443
442
444
- [ torchbearer] by [ @redwarp ] is a library that provides a set of tools
445
- to find your path in a grid-based dungeon. Specifically,
446
- it provides a quick implementation of pathfinding and field of view algorithm.
443
+ [ torchbearer] by [ @redwarp ] is a library that provides a set of tools to find
444
+ your path in a grid-based dungeon. Specifically, it provides a quick
445
+ implementation of pathfinding and field of view algorithm.
447
446
448
- The 0.6.x version rewrites the field of view algorithm to cast vision rays
449
- in a Bresenham circle around the point of origin.
450
- This change from its [ original implementation] [ torchbearer-orig ] makes it faster
451
- as it removes the needs for error correction.
447
+ The 0.6.x version rewrites the field of view algorithm to cast vision rays in a
448
+ Bresenham circle around the point of origin. This change from its [ original
449
+ implementation] [ torchbearer-orig ] makes it faster as it removes the needs for
450
+ error correction.
452
451
453
452
[ torchbearer ] : https://github.com/redwarp/torchbearer
454
453
[ @redwarp ] : https://github.com/redwarp
@@ -464,8 +463,8 @@ multiplayer browser games.
464
463
465
464
Originally, it was written for web assembly, but a native implementation using
466
465
[ WebRTC.rs] has been available since 0.4. However, a few minor incompatibilities
467
- between the two implementations meant connections between native and web
468
- were not possible.
466
+ between the two implementations meant connections between native and web were
467
+ not possible.
469
468
470
469
In version 0.5, however, [ Alex Rozgo] fixed the last of these issues. And
471
470
cross-play sessions are now finally fully supported.
@@ -489,16 +488,16 @@ _Discussions: [Mastodon][cargospace_cross_platform_video]_
489
488
![ miniquad ios] ( miniquad_metal.gif )
490
489
_ Miniquad/macroquad examples rendered by Metal API_
491
490
492
- [ miniquad] is a safe and cross-platform rendering library
493
- focused on portability and low-end platform support.
491
+ [ miniquad] is a safe and cross-platform rendering library focused on portability
492
+ and low-end platform support.
494
493
495
494
This month metal backend [ PR] [ miniquad_metal_pr ] finally landed on miniquad!
496
495
497
- It is not yet ready for any production use, but it is available on crates.io
498
- as 0.4.0-alpha.
496
+ It is not yet ready for any production use, but it is available on crates.io as
497
+ 0.4.0-alpha.
499
498
500
- With this change, miniquad support webgl1, gl2, gles2/gles3, gl3+,
501
- metal on web, macOS, iOS, Android, Windows, and Linux.
499
+ With this change, miniquad support webgl1, gl2, gles2/gles3, gl3+, metal on web,
500
+ macOS, iOS, Android, Windows, and Linux.
502
501
503
502
[ miniquad ] : https://github.com/not-fl3/miniquad
504
503
[ miniquad_metal_pr ] : https://github.com/not-fl3/miniquad/pull/344
0 commit comments