@@ -91,8 +91,187 @@ refactoring tool based on the [Language Server Protocol][language-server-protoco
91
91
[ language-server-protocol ] : https://microsoft.github.io/language-server-protocol
92
92
[ rust-analyzer ] : https://github.com/rust-lang/rust-analyzer
93
93
94
+ ### [ CyberGate] [ cybergate-yt ]
95
+
96
+ ![ browser udp technology] ( cybergate.jpg )
97
+ _ The new browser version works exactly like the native version_
98
+
99
+ CyberGate ([ YouTube] [ cybergate-yt ] , [ Discord] [ cybergate-dis ] ) by CyberSoul
100
+ is a new multiplayer project that aims at procedurally generating distinct
101
+ universes and gameplay experiences. CyberGate is the name of the main world
102
+ where universes can be created and accessed by quantum portals.
103
+
104
+ Recent updates:
105
+
106
+ - Ported to browser (wgpu with webgl backend)
107
+ - Unreliable network protocol achieved with WebRTC
108
+ - Dynamically spawn and synchronize ECS components using macros
109
+ - Massively improved the events system and actions system
110
+ - Refactored over 50% of the project
111
+ - Small features such as grabbing objects and dash forward
112
+ - Fixed 3 major bugs that slowed down the server
113
+
114
+ [ Join the Discord server] [ cybergate-dis ] to participate in upcoming Phase 5.0!
115
+
116
+ _ Discussions: [ /r/rust_gamedev] ( https://www.reddit.com/r/rust_gamedev/comments/x60n9y/cybergate_45_progress_browser_udp_client_with/ ) _
117
+
118
+ [ cybergate-yt ] : https://youtube.com/channel/UClrsOso3Xk2vBWqcsHC3Z4Q
119
+ [ cybergate-dis ] : https://discord.gg/R7DkHqw7zJ
120
+
121
+ ### [ Rusty Aquarium]
122
+
123
+ ![ Rusty Aquarium visualization] ( rustyaquarium.gif )
124
+ _ Visualize data as a fish tank with Rusty Aquarium_
125
+
126
+ [ Rusty Aquarium] by [ @ollej ] is a data visualization tool as a virtual fish
127
+ tank written in Rust and Macroquad. Different data points control how many
128
+ fishes are shown, how they move, how fast they swim, and which size they are.
129
+ It can be used to monitor data in a visual way, while those uninitiated only
130
+ see a serene fish tank.
131
+
132
+ Since Macroquad is cross-platform, Rusty Aquarium is available for Windows,
133
+ Mac, Linux as well as for browsers using WebAssembly.
134
+
135
+ The aquarium can be controlled in various different ways:
136
+
137
+ - System monitoring binary to show CPU usage, disk usage and processes.
138
+ - Integrate with Google Sheets to control fishes.
139
+ - Back it with an URL that generates a JSON file.
140
+
141
+ This month, a blog post with the [ story behind Rusty Aquarium] [ RustyAquariumStory ]
142
+ was published on the [ Agical] blog. The code was restructured and the packaged
143
+ files now contain binaries for input data generation.
144
+
145
+ [ Rusty Aquarium ] : https://github.com/ollej/rusty-aquarium
146
+ [ @ollej ] : https://twitter.com/ollej
147
+ [ RustyAquariumStory ] : https://blog.agical.se/en/posts/the-story-behind-rusty-aquarium/
148
+ [ Agical ] : https://blog.agical.se/en/
149
+
150
+ ### [ Infinite Bunner]
151
+
152
+ ![ Infinite Bunner] ( infinitebunner.gif )
153
+ _ Port of the Infinite Bunner game to Rust and Macroquad_
154
+
155
+ [ Infinite Bunner] is a game from the book [ Code the Classics vol 1] that has
156
+ been ported by [ @ollej ] to Rust and Macroquad from Python and PyGame Zero.
157
+ It is a modern version of the classic arcade game Frogger with improved
158
+ graphics and sound.
159
+
160
+ The game has been sent in to the [ Rust Game Ports] [ rust-game-ports ] project as
161
+ an educational example. It shows how to make a 2D game in Macroquad with
162
+ graphics and sound.
163
+
164
+ [ Code the Classics vol 1] is a book from Wireframe Magazine that tells the
165
+ history of five classic video games. It also includes code listings of modern
166
+ versions of the games written in Python with the PyGame Zero framework.
167
+
168
+ [ Infinite Bunner ] : https://github.com/ollej/rust-bunner-macroquad
169
+ [ @ollej ] : https://twitter.com/ollej
170
+ [ rust-game-ports ] : https://github.com/rust-gamedev/rust-game-ports
171
+ [ Code the Classics vol 1 ] : https://wireframe.raspberrypi.org/books/code-the-classics1
172
+
173
+ ### Tiny Building Game
174
+
175
+ ![ Country_slice_gif] ( country_slice.gif )
176
+
177
+ The untitled "Tiny Building Game" is a stress-free feel-good game focused on just
178
+ building something pretty. It is being made by [ @anastasiaopara ] and
179
+ [ @h3r2tic ] , who has recently joined the project!
180
+
181
+ This month, there was a large visual update, which added [ trees and flowers] [ twitter-thread-1 ] ,
182
+ as well as [ fences and gates] [ twitter-thread-2 ] .
183
+
184
+ Right now, the team is actively working on setting up a Steam page. Stay
185
+ tuned by following the [ newsletter] [ country-slice-newsletter ] !
186
+
187
+ [ country-slice-newsletter ] : https://dashboard.mailerlite.com/forms/10395/51067704544593017/share
188
+ [ twitter-thread-1 ] : https://twitter.com/anastasiaopara/status/1560673892574035969
189
+ [ twitter-thread-2 ] : https://twitter.com/anastasiaopara/status/1565629377823395841
190
+ [ @anastasiaopara ] : https://twitter.com/anastasiaopara
191
+ [ @h3r2tic ] : https://twitter.com/h3r2tic
192
+
94
193
## Engine Updates
95
194
195
+ ### [ miniquad]
196
+
197
+ [ ![ diff] ( android_playground.gif )] [ quad-android-playground ]
198
+
199
+ [ miniquad] is a pure Rust, cross-platform graphics library.
200
+
201
+ This month was about polishing miniquad-android experience.
202
+ To make it easier for regression testing, miniquad got
203
+ [ the android playground] [ quad-android-playground ] .
204
+
205
+ The playground demonstrates all known android shenanigans in
206
+ one quad-based app.
207
+
208
+ It includes:
209
+
210
+ - onscreen keyboard
211
+ - java interop (with file dialog as an example)
212
+ - dealing with big java services (with bluetooth as an example)
213
+ - accessing permissions, both runtime and compile time
214
+
215
+ [ miniquad ] : https://github.com/not-fl3/miniquad/
216
+ [ quad-android-playground ] : https://github.com/not-fl3/quad-android-playground
217
+
218
+ ### [ Runty8] [ runty8-repo ]
219
+
220
+ [ ![ Runty 8 logo] [ runty8-logo ]] [ runty8-repo ]
221
+
222
+ [ Runty8] [ runty8-repo ] is an experimental port of the [ Pico8] [ pico8-site ]
223
+ fantasy console that supports writing games in Rust.
224
+
225
+ Its current goals are to follow Pico8's APIs as closely as possible,
226
+ to allow easily porting existing games to Rust,
227
+ as well as developing new games in a familiar development environment.
228
+
229
+ The project is in very early stages, and is currently looking for contributors.
230
+ If you're interested, feel free to read their [ contributing guide] [ runty8-contributing-guide ]
231
+ or browse through the [ open issues] [ runty8-open-issues ] .
232
+
233
+ [ runty8-repo ] : https://github.com/jjant/runty8
234
+ [ runty8-contributing-guide ] : https://github.com/jjant/runty8/blob/master/CONTRIBUTING.md
235
+ [ runty8-open-issues ] : https://github.com/jjant/runty8/issues
236
+ [ pico8-site ] : https://www.lexaloffle.com/pico-8.php
237
+ [ runty8-logo ] : https://user-images.githubusercontent.com/15112080/188467323-037617cf-7dbc-4988-bbd7-fbafd1524455.png
238
+
239
+ ### [ Gamercade]
240
+
241
+ ![ Gamercade preview] ( gamercade.gif )
242
+ _ Preview of the Audio Editor in Action_
243
+
244
+ [ Gamercade] ([ Discord] [ Gamercade-Discord ] , [ Github] [ Gamercade-Github ] )
245
+ by @RobDavenport is a WASM-powered fantasy console focused
246
+ on building multiplayer neo-retro games.
247
+
248
+ Gamercade is preparing for their first alpha release! This includes all the
249
+ core features needed for a fantasy console and game library: input, graphics,
250
+ and audio. It also has networked multiplayer, and an editor.
251
+
252
+ They implemented the in-game sound engine from scratch. They also improved the
253
+ editor to allow creation of instruments and tracks. It synthesizes sounds at
254
+ runtime, and produces something like an 80s synth, a 90s SoundBlaster, and a
255
+ touch of SNES. Songs and Sfx are built using a tracker interface.
256
+ [ This video] [ Gamercade-Video ] shows a small sample of what it is capable of.
257
+
258
+ "Wavetables" are great for classic sounds like 8-bit chiptunes or even more
259
+ complicated sounds. "FM Synth" is a 4-op FM synthesizer. Masters of this
260
+ technique can produce a huge variety of instruments, effects, and other
261
+ otherwordly things. "Sampler" rounds out the rest of the system, providing
262
+ pre-recorded sample playback. Samples can be pitched and played as the desired
263
+ note.
264
+
265
+ Come hang out and chat on [ Discord] [ Gamercade-Discord ] , where the developers
266
+ interact with members and post updates daily. The project is
267
+ [ open source] [ Gamercade-Github ] and looking for contributors, suggestions,
268
+ as well as awesome game demos.
269
+
270
+ [ Gamercade ] : https://gamercade.io
271
+ [ Gamercade-Discord ] : https://discord.gg/Qafv2Fpt5j
272
+ [ Gamercade-Github ] : https://github.com/gamercade-io/gamercade_console
273
+ [ Gamercade-Video ] : https://www.youtube.com/watch?v=cRsOvefap_U
274
+
96
275
## Learning Material Updates
97
276
98
277
## Tooling Updates
@@ -162,11 +341,30 @@ users to define their own dynamic assets.
162
341
[ bevy_asset_loader ] : https://github.com/NiklasEi/bevy_asset_loader/
163
342
[ Bevy ] : https://bevyengine.org/
164
343
344
+ ### [ Notan v0.6] [ Notan ]
345
+
346
+ ![ notan examples] ( notan.gif )
347
+
348
+ [ Notan] is a simple and portable layer designed to create your own
349
+ apps on top of it without worrying about platform-specific code.
350
+
351
+ It provides a set of APIs and tools that can be used to create your
352
+ project in an ergonomic manner without enforcing any structure or pattern,
353
+ sharing the same codebase across multiple platforms.
354
+
355
+ The main focus for version [ v0.6] was improving how uniforms
356
+ are set using the layout std140 for the user with a macro,
357
+ among internal fixes and improvements.
358
+
359
+ [ Notan ] : https://github.com/Nazariglez/notan
360
+ [ v0.6 ] : https://github.com/Nazariglez/notan/releases/tag/v0.6.0
361
+
165
362
### [ Shipyard]
166
363
167
364
[ Shipyard] is an Entity Component System focused on usability and speed.
168
365
169
- 0.6 was released with big improvements to workloads and tracking.
366
+ This monthh, 0.6 was released with big improvements to workloads and
367
+ tracking.
170
368
171
369
The new [ visualizer] [ shipyard-visualizer ] is a first step towards visual
172
370
inspection and interaction with the library.
0 commit comments