1
1
+++
2
2
title = " This Month in Rust GameDev #8 - March 2020"
3
- date = 2020-04-01
4
- draft = true
3
+ date = 2020-04-08
5
4
+++
6
5
7
6
<!-- markdownlint-disable no-trailing-punctuation -->
@@ -49,24 +48,6 @@ some actual interesting discussions.
49
48
If needed, a section can be split into subsections with a "------" delimiter.
50
49
-->
51
50
52
- ## [ London _ Virtual_ Talks - April 6 (GameDev Special)] [ ldn ]
53
-
54
- ![ rust gamedev] ( ldn.png )
55
-
56
- > [ Rust London] [ ldn-twitter ] is happy to announce the April Game Dev Special.
57
- > The purpose is to shine a light on all the amazing thing being done
58
- > in the realm of Game Development using the Rust Programming Language,
59
- > we will have 3 speakers demoing their projects and sharing their experiences.
60
- >
61
- > Speakers: Alex Ene, Olivia Ifirim, Phillipe Vinchon.
62
-
63
- [ Here's a link for the livestream via Youtube] [ ldn-video ] ,
64
- it'll go live at 18:00 UTC.
65
-
66
- [ ldn ] : https://meetup.com/Rust-London-User-Group/events/269357779
67
- [ ldn-twitter ] : https://twitter.com/RustLdnUsers
68
- [ ldn-video ] : https://youtube.com/channel/UCi7KGrwkwWuFQaTZW72Jzug
69
-
70
51
## Spreading the Word
71
52
72
53
If you're working on a project that heavily relies on some engine/framework,
@@ -83,7 +64,7 @@ frameworks/engines authors just don't know about users of their libs
83
64
84
65
![ DynaMaze promotional image] ( dynamaze.png )
85
66
86
- [ DynaMaze] [ dynamaze ] is an [ open source] [ dynamaze-source ] multiplayer
67
+ [ DynaMaze] [ dynamaze ] is an [ open- source] [ dynamaze-source ] multiplayer
87
68
puzzle/strategy game written in Rust and compiled to WebAssembly, made by
88
69
[ @boringcactus ] [ ] . Adjust the maze to build a path to your target and
89
70
keep the other players from getting to theirs.
@@ -96,7 +77,7 @@ keep the other players from getting to theirs.
96
77
97
78
![ Slime99] ( slime99.png )
98
79
99
- [ Slime99] [ slime99 ] by [ @stevebob ] [ ] is an [ open source] [ slime99-source ]
80
+ [ Slime99] [ slime99 ] by [ @stevebob ] [ ] is an [ open- source] [ slime99-source ]
100
81
roguelike made for the [ 7 Day Roguelike 2020] [ 7drl-2020 ] game jam.
101
82
102
83
A traditional roguelike where the outcomes of attacking and defending are
@@ -113,11 +94,11 @@ which combat outcomes occur. It’s set in a neon sewer!
113
94
114
95
![ Will main menu] ( will_main.png )
115
96
116
- [ Will] [ will ] is a 2.5D moddable action / adventure game.
97
+ [ Will] [ will ] is a 2.5D moddable action/ adventure game.
117
98
118
99
Highlights of [ this month's update] [ will_blogpost ] include:
119
100
120
- - Going [ open source] [ will_source ]
101
+ - Going [ open- source] [ will_source ]
121
102
- Network play (early version)
122
103
123
104
[ will ] : https://azriel.im/will
@@ -196,7 +177,7 @@ This month two videos were posted:
196
177
- [ "GameDev in Rust (Episode 0)"] [ realm-one-vid-1 ] -
197
178
ECS-based design with Amethyst, networking and tiled 2d based design.
198
179
- [ "GameDev in Rust (Episode 1): Monsters and AI!"] [ realm-one-vid-2 ] -
199
- how the mosnters are managed on server side
180
+ how the monsters are managed on server- side
200
181
and integration with Tiled map editor.
201
182
202
183
[ realm-one ] : https://github.com/Machine-Hum/realm.one
@@ -228,10 +209,10 @@ This month v0.1.1 and v0.1.2 versions were released. Some of the updates:
228
209
229
210
[ Ascension 2] [ ascension ] by [ @outkine ] is a simple gravity-based platformer.
230
211
231
- > Hop your way through bite sized levels while dodging spikes and turrets.
212
+ > Hop your way through bite- sized levels while dodging spikes and turrets.
232
213
> Then, change the direction of gravity, and do it all again!
233
214
234
- [ The source code is aviable here] [ ascension-src ] .
215
+ [ The source code is available here] [ ascension-src ] .
235
216
236
217
[ ascension ] : https://outkine.itch.io/ascension-2
237
218
[ ascension-src ] : https://github.com/outkine/ascension-rust
@@ -302,9 +283,9 @@ that is being implemented using Rust and Vulkan.
302
283
written using the same engine.
303
284
Your task is to repair a broken DNA sequence
304
285
by replacing wrong nucleobases with the right ones.
305
- You have 20 seconds: how many nucleobases can you repair with in that time?
286
+ You have 20 seconds: how many nucleobases can you repair within that time?
306
287
307
- The game was developend within one weekend during
288
+ The game was developed within one weekend during
308
289
the Global Game Jam 2020, whose theme was "repair".
309
290
310
291
[ helix ] : https://coffejunkstudio.itch.io/helix-repair
@@ -341,7 +322,7 @@ Some of this month's updates:
341
322
- New ` zgui ` widgets: ColoredRect, LayersLayout.
342
323
- Inactive buttons are either hidden or grayed-out now.
343
324
- The project [ fully switched to ` good-web-game ` ] [ zemeroth-gwg ]
344
- as the first step of migration to [ miniquad] .
325
+ as the first step of the migration to [ miniquad] .
345
326
346
327
[ zemeroth ] : https://github.com/ozkriff/zemeroth
347
328
[ @ozkriff ] : https://twitter.com/ozkriff
@@ -377,9 +358,7 @@ Here is the March changelog:
377
358
- Added gamepad/controller support
378
359
- Added player feedback when attempting to pickup an item with a full inventory
379
360
- Added free look
380
- - Added Italian translation
381
- - Added Portuguese translation
382
- - Added Turkish translation
361
+ - Added Italian, Portuguese, and Turkish translations
383
362
```
384
363
385
364
![ Hanging out] ( veloren2.png )
@@ -422,8 +401,8 @@ Some of this month's updates:
422
401
- Arbitrary clipping window on any layer.
423
402
- New ` VirtualConsole ` system.
424
403
- New functions for right-justifying printed text.
425
- - Fonts and dimensions in a terminal layers can now be switched at run-time.
426
- - New layer type that lets you specify gkyph position as a float.
404
+ - Fonts and dimensions in terminal layers can now be switched at run-time.
405
+ - New layer type that lets you specify glyph position as a float.
427
406
- New sprite layer.
428
407
- Updated examples.
429
408
@@ -444,7 +423,7 @@ Main updates:
444
423
as well as SIMD types like f32x4, u32x8, i16x2, etc.
445
424
- benchmarks:
446
425
[ "SIMD Array-of-Structures-of-Arrays in nalgebra and comparison with ultraviolet"] [ aosoa ] .
447
- - [ alga] abstract algebra crate is switced to passive maintenance mode.
426
+ - [ alga] abstract algebra crate is switched to passive maintenance mode.
448
427
449
428
[ rustsim-10 ] : https://rustsim.org/blog/2020/04/01/this-month-in-rustsim
450
429
[ simba ] : https://crates.io/crates/simba
@@ -453,6 +432,10 @@ Main updates:
453
432
454
433
### gfx-rs and wgpu news
455
434
435
+ ![ Deeper game] ( deeper.png )
436
+
437
+ ^ _ [ deeper] uses wgpu for rendering_
438
+
456
439
[ gfx-hal-0.5] ( https://github.com/gfx-rs/gfx/ ) was released!
457
440
Improvements done in March:
458
441
@@ -513,6 +496,7 @@ Satellite projects:
513
496
[ wgpu-web-triangle ] : https://github.com/gfx-rs/wgpu-rs/pull/193#issuecomment-599156540
514
497
[ naga ] : https://github.com/gfx-rs/naga
515
498
[ boids example ] : https://github.com/gfx-rs/naga/blob/thda1f6a4/test-data/boids.wgsl
499
+ [ deeper ] : https://github.com/arnfaldur/deeper
516
500
517
501
### [ miniquad]
518
502
@@ -523,7 +507,7 @@ focused on portability and low-end platforms support.
523
507
Some of this month's updates:
524
508
525
509
- example project by @PonasKovas ,
526
- illustrating android and web platform dependent configuration: [ mandelbrot] .
510
+ illustrating android and web platform- dependent configuration: [ mandelbrot] .
527
511
- first prototype for embedded debug frame introspection: [ introspection] .
528
512
529
513
[ mandelbrot ] : https://github.com/PonasKovas/miniquad-mandelbrot
@@ -583,7 +567,7 @@ _Discussions: [/r/rust](https://www.reddit.com/r/rust_gamedev/comments/fl7593/an
583
567
584
568
### [ assets_manager]
585
569
586
- a1phyr has created a crate called ` assets_manager ` , which provides a convienient way
570
+ a1phyr has created a crate called ` assets_manager ` , which provides a convenient way
587
571
to load and cache external resources. It abstracts over the filesystem logic, and
588
572
provides a variety of built-in loaders for common Serde formats (e.g. TOML, JSON).
589
573
Hot-reloading support is also planned in the future.
@@ -603,7 +587,7 @@ on the [crates.io page](netstack).
603
587
Version 0.3.0 adds basic monitoring functionality along with traits ` ClientMonitor ` and
604
588
` ServerMonitor ` . A work-in-progress prometheus exporter has also been added in this version.
605
589
606
- Issues and contibutions can be made to [ Netstack's github repository] ( netstack-github ) .
590
+ Issues and contributions can be made to [ Netstack's github repository] ( netstack-github ) .
607
591
Work in progress documentation is available on [ Netstack's docs.rs] ( netstack-docs ) .
608
592
609
593
[ netstack ] : https://crates.io/crates/netstack/0.3.0
@@ -612,6 +596,8 @@ Work in progress documentation is available on [Netstack's docs.rs](netstack-doc
612
596
613
597
### [ three-d] v0.1
614
598
599
+ ![ Lighting example] ( three-d-lighting.png )
600
+
615
601
[ three-d] is a renderer which targets both desktop (OpenGL) and web
616
602
(WebAssembly + WebGL2) which makes it possible to develop a 3D application on
617
603
desktop and easily deploy it on web.
@@ -625,14 +611,12 @@ Main features:
625
611
- Deferred renderer with high-level components.
626
612
- Default windows for easy setup.
627
613
614
+ ![ Spider example] ( three-d-spider.jpeg )
615
+
628
616
It is possible to build your own rendering features from low- or medium-level
629
617
components and combine with other high-level features, so you can already now
630
618
make some cool stuff. See for example these [ examples] [ three-d-examples ] .
631
619
632
- ![ Lighting example] ( three-d-lighting.png )
633
-
634
- ![ Spider example] ( three-d-spider.png )
635
-
636
620
[ three-d ] : https://github.com/asny/three-d
637
621
[ three-d-examples ] : https://asny.github.io/three-d/
638
622
[ three-d-v0-1 ] : https://crates.io/crates/three-d
@@ -753,6 +737,7 @@ and [project board][amethyst_wasm_project_board] for current status.
753
737
` ash ` is lightweight wrapper around Vulkan.
754
738
755
739
The latest version comes with support for Vulkan 1.2 and following extensions:
740
+
756
741
- VK_KHR_timeline_semaphore
757
742
- VK_KHR_ray_tracing
758
743
- VK_KHR_external_memory_fd
@@ -809,7 +794,7 @@ or [join the next meeting][join].
809
794
- [ Amethyst's "good first issue" issues] [ amethyst-issues ] ;
810
795
- [ A/B Street's "good first issue" issues] [ abstreet-issues ] ;
811
796
- [ Mun's "good first issue" issues] [ mun-issues ] ;
812
- - Anybody wants to work on the [ GLSL front-end] [ naga-issue ] in Naga?
797
+ - @ kvark : Anybody wants to work on the [ GLSL front-end] [ naga-issue ] in Naga?
813
798
One day, we'll be able to finally replace glsl-to-spirv,
814
799
which is used by a lot of graphics applications and is prone to issues.
815
800
0 commit comments