1
1
+++
2
2
title = " This Month in Rust GameDev #18 - January 2021"
3
- date = 2021-02-08
3
+ date = 2021-02-06
4
4
transparent = true
5
- draft = true
6
5
+++
7
6
8
7
Welcome to the 18th issue of the Rust GameDev Workgroup's
@@ -29,7 +28,7 @@ Feel free to send PRs about your own projects!
29
28
30
29
Table of contents:
31
30
32
- - [ Rust GameDev Podcast] ( #rust-gamedev-podcast )
31
+ - [ Rust GameDev Podcast] ( #rust-gamedev-podcast-5 )
33
32
- [ Rust GameDev Meetup] ( #rust-gamedev-meetup )
34
33
- [ Game Updates] ( #game-updates )
35
34
- [ Learning Material Updates] ( #learning-material-updates )
@@ -60,18 +59,18 @@ _Discussions:
60
59
If needed, a section can be split into subsections with a "------" delimiter.
61
60
-->
62
61
63
- ## [ Rust GameDev Podcast] [ podcast-5 ]
62
+ ## [ Rust GameDev Podcast \# 5 ] [ podcast-5 ]
64
63
65
64
![ text logo] ( podcast.jpeg )
66
65
67
66
[ The 5th podcast episode] [ podcast-5 ] is an interview with
68
67
[ Alex Ene] [ @_AlexEne_ ] creator of an upcoming dwarven simulation
69
68
game, [ Dwarf World] [ dwarf-world ] .
70
69
71
- > In this weeks episode, Richard and Forest chat to Alex Ene,
70
+ > In this week's episode, Richard and Forest chat to Alex Ene,
72
71
> creator of the dwarven simulation game, Dwarf World.
73
72
> We cover writing custom engines, unit testing, build
74
- > systems and picking the right frameworks for your game.
73
+ > systems, and picking the right frameworks for your game.
75
74
76
75
Listen and subscribe from the following platforms:
77
76
[ Rust GameDev Podcast (simplecast)] ( https://rustgamedev.com/ ) ,
@@ -92,7 +91,9 @@ The first iteration of the Rust Gamedev Meetup happened in January. It was an
92
91
opportunity for developers to show of what Rust projects they've been working on
93
92
in the game ecosystem. Developers showed off physics engines, custom build
94
93
tools, renderers, and more. You can watch the recording of the meetup [ here on
95
- Youtube] [ gamedev-meetup-video ] . The next meetup will take place 13th of February
94
+ Youtube] [ gamedev-meetup-video ] .
95
+
96
+ The next meetup will take place 13th of February
96
97
at 16:00 GMT on the [ Rust Gamedev Discord server] [ rust-gamedev-discord ] , and can
97
98
also be [ streamed on Twitch] [ rust-gamedev-twitch ] .
98
99
@@ -143,15 +144,15 @@ This month the game got a public, multiplayer HTML5 build. [Play it online!][fis
143
144
144
145
### [ Station Iapetus]
145
146
146
- [ ![ Station Iapetus Youtube] ( station-iapetus-youtube.jpg )] [ si-youtube ]
147
+ [ ![ Station Iapetus Youtube] ( station-iapetus-youtube.JPG )] [ si-youtube ]
147
148
_ Check [ gameplay video] [ si-youtube ] on YouTube_
148
149
149
150
[ Station Iapetus] [ Station Iapetus ] by [ @mrDIMAS ]
150
151
is a 3rd person shooter on the space prison Iapetus near the Saturn.
151
152
152
- The game based on [ rg3d] game engine and is meant to be the proof that
153
+ The game is based on the [ rg3d] game engine and is meant to be the proof that
153
154
rg3d is ready for commercial production. The game is a commercial project
154
- which will be released in the Steam.
155
+ which will be released in Steam.
155
156
156
157
[ @mrDIMAS ] : https://github.com/mrDIMAS
157
158
[ rg3d ] : https://github.com/mrDIMAS/rg3d
@@ -165,10 +166,8 @@ _Over the mountains in Slovakia_
165
166
166
167
[ SeniorSKY]
167
168
is a flight simulator which uses Vulkan API, developed by [ @pmathia0 ] .
168
-
169
169
As an aerospace engineering student, Peter has always been interested how
170
170
a flight simulator works under the hood.
171
-
172
171
The development of SeniorSKY started as a hobby project during university
173
172
studies.
174
173
@@ -214,14 +213,15 @@ changed to use [Kira][kira-sound] via an
214
213
[ rafael-itch ] : https://itch.io/profile/m1nd0frafa3l
215
214
[ nikl-twitter ] : https://twitter.com/nikl_me
216
215
217
- ### [ Bounty Bros.]
216
+ ### [ Bounty Bros.] [ bounty-bros ]
218
217
219
- [ ![ Bounty Bros. Video] ( ./ bounty-bros.jpg)] [ bounty_bros_video ]
218
+ [ ![ Bounty Bros. Video] ( bounty-bros.jpg )] [ bounty_bros_video ]
220
219
_ First pass character controller video_
221
220
222
- [ Bounty Bros.] is a prototype dungeon crawler game in the spirit of _ Legend of
223
- Zelda: Link to the Past_ . The game is being developed by [ Katharos Technology]
224
- as a playground for a future commercial game, along with a custom 2D engine
221
+ [ Bounty Bros.] [ bounty-bros ] is a prototype dungeon crawler game
222
+ in the spirit of "Legend of Zelda: Link to the Past".
223
+ The game is being developed by [ Katharos Technology] as a playground
224
+ for a future commercial game, along with a custom 2D engine
225
225
built on top of [ Bevy] .
226
226
227
227
The engine, which is unnamed so far, will be Open Sourced soon and will be
@@ -230,17 +230,17 @@ primarily by simply writing YAML configuration files and integrating with
230
230
[ LDtk] .
231
231
232
232
[ katharos technology ] : https://katharostech.com
233
- [ bounty bros. ] : https://katharostech.com/post/bounty-bros-prototype-game
233
+ [ bounty- bros ] : https://katharostech.com/post/bounty-bros-prototype-game
234
234
[ bounty_bros_video ] : https://katharostech.com/post/bounty-bros-prototype-game#video
235
- [ bevy ] : https://bevyengine.org
236
- [ ldtk ] : https://ldtk.io
235
+ [ Bevy ] : https://bevyengine.org
236
+ [ LDtk ] : https://ldtk.io
237
237
238
238
### Flesh
239
239
240
240
![ flesh preview] ( flesh.gif )
241
241
_ Inside flesh_
242
242
243
- Flesh by [ @im_oab] is a 2d -horizontal shmup game with hand-drawn animation
243
+ Flesh by [ @im_oab] is a 2D -horizontal shmup game with hand-drawn animation
244
244
and implement using tetra. It still in the development stage but have
245
245
a release date set in October 2021.
246
246
@@ -335,8 +335,8 @@ This month's updates include:
335
335
336
336
![ Dwarf World] ( dwarfworld_lights.gif )
337
337
338
- [ Dwarf World] [ dwarf-world ] by [ Alex Ene ] [ @_AlexEne_ ] has added a couple
339
- of updates and improvements:
338
+ [ Dwarf World] [ dwarf-world ] ( [ Discord ] [ dwarf-world-discord ] )
339
+ by [ Alex Ene ] [ @_AlexEne_ ] has added a couple of updates and improvements:
340
340
341
341
- Dynamic lights and light propagation so deeper caves are darker.
342
342
- An in-game feedback button that people can use to report bugs or
@@ -401,16 +401,16 @@ _Homing missiles pursue the closest player entity_
401
401
402
402
Way of Rhea is a picturesque puzzle game that lets you correct your mistakes.
403
403
Change your color, teleport past the colored gates, master the color powered
404
- circuits, and befriend the color changing crabs— but don't let them out!
404
+ circuits, and befriend the color changing crabs- but don't let them out!
405
405
406
406
This month's major updates include:
407
407
408
- - Autosave support
409
- - Steam cloud support
410
- - A free demo was released as part of Boston FIG (no longer available)
411
- - In game audio options
412
- - A new level featuring a new puzzle mechanic
413
- - An [ updated trailer] [ wor-trailer ]
408
+ - Autosave support.
409
+ - Steam cloud support.
410
+ - A free demo was released as part of Boston FIG (no longer available).
411
+ - In game audio options.
412
+ - A new level featuring a new puzzle mechanic.
413
+ - An [ updated trailer] [ wor-trailer ] .
414
414
415
415
[ wor-site ] : https://www.anthropicstudios.com/way-of-rhea
416
416
[ wor-trailer ] : https://www.youtube.com/watch?v=PRifdHcaswc
@@ -486,7 +486,7 @@ _Click to [watch a footage with sound][zemeroth-audio] 🔊_
486
486
Some of the recent updates:
487
487
488
488
- The game [ was migrated from good-web-game to macroquad] [ zemeroth-macroquad ]
489
- and converted to explicit async aseets loading.
489
+ and converted to explicit async assets loading.
490
490
- Proper [ sound effects & music were added] [ zemeroth-audio ]
491
491
using the [ quad-snd] library ([ more details] [ zemeroth-audio-details ] ).
492
492
@@ -573,27 +573,22 @@ You can also play [tic-tac-tide] online.
573
573
574
574
## Engine Updates
575
575
576
- ### [ ` ggez ` ] ( ggez )
576
+ ### [ ggez]
577
577
578
578
![ ggez logo] ( ../newsletter-005/ggez-logo-maroon-full.svg )
579
579
580
- ` ggez ` is a lightweight cross-platform game framework for making 2D
580
+ [ ggez] is a lightweight cross-platform game framework for making 2D
581
581
games with minimum friction.
582
582
583
583
The zero'th release candidate for version 0.6.0 has been released and
584
584
there has been no particularly horrific outcry of people's games
585
- exploding. A first release candidate with a pile of medium-sized bug
585
+ exploding. A first release candidate with a pile of medium-sized bug
586
586
fixes should be coming in early February, hopefully soon followed by a
587
- full release. Special thanks to the contributors who helped hunt bugs
588
- and organize PR's to get this version out the door:
589
-
590
- - PSteinhaus
591
- - Manghi
592
- - AaronM04
593
- - Systemcluster
594
- - Andy-Python-Programmer
587
+ full release. [ Feedback is welcome] [ ggez-github ] !
595
588
596
- _ Discussions: [ Issue tracker] ( ggez-github ) _
589
+ Special thanks to the contributors who helped hunt bugs
590
+ and organize PR's to get this version out the door:
591
+ @PSteinhaus , @Manghi , @AaronM04 , @Systemcluster , and @Andy-Python-Programmer !
597
592
598
593
[ ggez ] : https://crates.io/crates/ggez
599
594
[ ggez-github ] : https://github.com/ggez/ggez/milestone/6
@@ -638,28 +633,25 @@ already find on [YouTube][lowenware-youtube].
638
633
_ A level made in [ rusty-editor] [ rusty_editor ] which is a native scene editor
639
634
for the rg3d game engine._
640
635
641
- [ rg3d] is a game engine that aims to be easy to use and provide large set
636
+ [ rg3d] ([ Discord] [ rg3d_discord ] , [ Twitter] [ rg3d_twitter ] )
637
+ is a game engine that aims to be easy to use and provide large set
642
638
of out-of-box features. Some of the recent updates:
643
639
644
- - Improved animation blending state machines.
645
- - Added ability to copy nodes in-place.
646
- - Fixed clipping issues in the UI.
647
- - Reduced number of draw calls for UI by 70%.
648
- - Fixed text measurement in the UI.
649
- - Added opacity for UI widgets.
650
- - Fixed layout of Scroll- and Wrap- panels.
651
- - Fixed light scatter issues for spot lights.
652
- - Added support for transparent meshes.
653
- - Migrated to rapier 0.5.
654
- - Fixed animation signal handling when animation playing in reverse.
640
+ - Animation blending state machines were improved.
641
+ - It's now possible to copy nodes in-place.
642
+ - The number of draw calls for UI was reduced by 70%.
643
+ - Fixed clipping issues and text measurement in the UI.
644
+ - Opacity for UI widgets was added.
645
+ - Layout of Scroll- and Wrap- panels was fixed.
646
+ - Light scatter issues for spot lights were fixed.
647
+ - Support for transparent meshes.
648
+ - Migration to rapier 0.5.
649
+ - Animation signal handling is fixed when animation playing in reverse.
655
650
- Animation tracks now are able to filter position/scale/rotation.
656
- - Fixed sprite rendering.
651
+ - Sprite rendering fixes .
657
652
- Improved copy/paste in rusty-editor.
658
653
- Lots of other small fixes and improvements.
659
654
660
- Join the [ rg3d's Discord channel] [ rg3d_discord ]
661
- or follow [ Dmitry Stepanov on Twitter] [ rg3d_twitter ] .
662
-
663
655
[ rg3d ] : https://github.com/mrDIMAS/rg3d
664
656
[ rg3d_discord ] : https://discord.gg/xENF5Uh
665
657
[ rg3d_twitter ] : https://twitter.com/DmitryNStepanov
@@ -745,31 +737,31 @@ _Discussions:
745
737
[ @fleabitdev ] : https://twitter.com/fleabitdev
746
738
[ gamelisp-doc-bindings ] : < https://gamelisp.rs/reference/rust-bindings.html >
747
739
748
- ### [ ` LDtk-rs ` ]
740
+ ### [ LDtk-rs]
749
741
750
- [ ` LDtk-rs ` ] is a Rust crate for reading the [ LDtk] map file format. The bindings
742
+ [ LDtk-rs] is a Rust crate for reading the [ LDtk] map file format. The bindings
751
743
to the LDtk format are 100% automatically generated from the LDtk JSON Schema,
752
744
with the option to download the latest JSON Schema at build time for automatic
753
745
updates.
754
746
755
- [ ` LDtk-rs` ] : https://github.com/katharostech/ldtk-rs
747
+ [ LDtk-rs ] : https://github.com/katharostech/ldtk-rs
756
748
[ LDtk ] : https://ldtk.io
757
749
758
- ### [ ` bevy_ldtk ` ]
750
+ ### [ bevy_ldtk]
759
751
760
752
![ LDtk Map Running in Bevy] ( ./bevy_ldtk.jpg )
761
- _ ( Tileset from [ "Cavernas"] by Adam Saltsman ) _
753
+ _ Tileset from [ "Cavernas"] by Adam Saltsman _
762
754
763
- [ ` bevy_ldtk ` ] is a Bevy plugin for loading [ LDtk] tilemaps.
755
+ [ bevy_ldtk] is a Bevy plugin for loading [ LDtk] tilemaps.
764
756
765
757
It features:
766
758
767
- - An efficient renderer that only uses 4 vertices per map layer
768
- - Hot reloading through the Bevy asset server integration
759
+ - An efficient renderer that only uses 4 vertices per map layer.
760
+ - Hot reloading through the Bevy asset server integration.
769
761
- Heavily commented code to help others who want to see how to make their own
770
- tilemap renderers
762
+ tilemap renderers.
771
763
772
- [ ` bevy_ldtk` ] : https://github.com/katharostech/bevy_ldtk
764
+ [ bevy_ldtk ] : https://github.com/katharostech/bevy_ldtk
773
765
[ ldtk ] : https://ldtk.io
774
766
[ "cavernas" ] : https://adamatomic.itch.io/cavernas
775
767
@@ -792,15 +784,21 @@ _Discussions: [/r/rust](https://www.reddit.com/r/rust/comments/l3ma3d/kira_game_
792
784
[ ![ Dimforge] ( dimforge.png )] [ dimforge ]
793
785
794
786
[ Dimforge] [ dimforge ] creates open-source Rust crates for numerical simulation.
795
- In January, updates were made to Dimforge projects: Rapier, Salva, Parry,
796
- nalgebra, and Simba. Parry was announced, the successor of ncollide for 2D and
797
- 3D collision-detection in Rust. The new version of Rapier brings many new
798
- features, including the ability to use custom shapes, as well as convex
799
- polygons/polyhedrons for 2D and 3D respectivly. You can read about all of the
800
- changes in the January edition of [ "This Month In Dimforge"] [ dimforge-update ] .
787
+ Some of the January updates:
788
+
789
+ - [ Parry] was announced, the successor of ncollide for 2D and
790
+ 3D collision-detection in Rust.
791
+ - The new version of [ Rapier] brings many new features,
792
+ including the ability to use custom shapes,
793
+ as well as convex polygons/polyhedrons for 2D and 3D respectively.
801
794
802
- [ dimforge ] : https://www.dimforge.com/
803
- [ dimforge-update ] : https://www.dimforge.com/blog/2021/01/29/this-month-in-dimforge/
795
+ You can read about all of the changes in the January edition of
796
+ [ "This Month In Dimforge"] [ dimforge-update ] .
797
+
798
+ [ dimforge ] : https://dimforge.com/
799
+ [ dimforge-update ] : https://dimforge.com/blog/2021/01/29/this-month-in-dimforge
800
+ [ Parry ] : https://parry.rs
801
+ [ Rapier ] : https://rapier.rs
804
802
805
803
### [ gfx-rs] and [ wgpu-rs]
806
804
@@ -827,7 +825,7 @@ _Drag and Drop and the new Drawing Api at Work in 0.7.0_
827
825
828
826
[ imgui-rs] is the Rust bindings for the ubiquitous immediate mode GUI library,
829
827
Dear ImGui.
830
- Under new maintainence , [ version 0.7] has been released, which features a new
828
+ Under new maintenance , [ version 0.7] has been released, which features a new
831
829
API for raw draw calls, support for ergonomic Drag and Drop, and tons of improvements.
832
830
Notably, many functions were made ` inline ` and/or ` const ` , including the ` im_str! `
833
831
macro.
@@ -841,6 +839,7 @@ macro.
841
839
_ Some of the supported widgets in the new grid layout._
842
840
843
841
[ egui] is a simple, fast, and highly portable immediate mode GUI library.
842
+
844
843
This month [ version 0.8] of egui was released with a new grid layout,
845
844
new look, and many smaller fixes and improvements.
846
845
You can try out egui in the [ online demo] .
@@ -849,19 +848,19 @@ You can try out egui in the [online demo].
849
848
[ online demo ] : https://emilk.github.io/egui
850
849
[ version 0.8 ] : https://github.com/emilk/egui/blob/master/CHANGELOG.md#080---2021-01-17---grid-layout--new-visual-style
851
850
852
- ### [ ` bevy_egui ` ]
851
+ ### [ bevy_egui]
853
852
854
853
![ bevy_egui screenshot] ( bevy_egui.png )
855
854
856
- [ ` bevy_egui ` ] provides a [ Egui] ( https://github.com/emilk/egui ) integration
855
+ [ bevy_egui] provides a [ Egui] ( https://github.com/emilk/egui ) integration
857
856
for the [ Bevy] ( https://github.com/bevyengine/bevy ) game engine.
858
- It supports [ ` bevy_webgl2 ` ] and implements the full set of Egui features
857
+ It supports [ bevy_webgl2] and implements the full set of Egui features
859
858
(such as clipboard and opening URLs).
860
859
861
860
Try out the [ online demo] ( https://mvlabat.github.io/bevy_egui_web_showcase/index.html ) .
862
861
863
- [ ` bevy_egui` ] : https://github.com/mvlabat/bevy_egui
864
- [ ` bevy_webgl2` ] : https://github.com/mrk-its/bevy_webgl2
862
+ [ bevy_egui ] : https://github.com/mvlabat/bevy_egui
863
+ [ bevy_webgl2 ] : https://github.com/mrk-its/bevy_webgl2
865
864
866
865
### [ chess-engine]
867
866
@@ -931,6 +930,14 @@ by [@tgjones] now allows you to try out writing shaders in Rust
931
930
932
931
<!-- Up to 10 links to interesting issues -->
933
932
933
+ - [ rust-gamedev/rust-gamedev.github.io] ( https://github.com/rust-gamedev/rust-gamedev.github.io ) :
934
+ - [ #406 "Separate category for engines vs libraries/tools"] ( https://github.com/rust-gamedev/rust-gamedev.github.io/issues/406 ) ;
935
+ - [ #454 "Newsletter: new format and more delegation"] ( https://github.com/rust-gamedev/rust-gamedev.github.io/issues/454 ) ;
936
+ - [ rust-gamedev/wg] ( https://github.com/rust-gamedev/wg ) :
937
+ - [ #98 "Monthly Rust Gamedev Meetup"] ( https://github.com/rust-gamedev/wg/issues/98 ) ;
938
+ - [ #100 "Physiology simulation"] ( https://github.com/rust-gamedev/wg/issues/100 ) ;
939
+ - [ #101 "[ Proposal] Abstract plane geometry library for GUI projects"] ( https://github.com/rust-gamedev/wg/issues/101 ) ;
940
+
934
941
## Requests for Contribution
935
942
936
943
<!-- Links to "good first issue"-labels or direct links to specific tasks -->
0 commit comments