2020 年 1 月 10 日
欢迎来到 Rust GameDev 工作组的第五期月刊。
Rust是一种追求三重性的系统语言:安全性、并发性和速度。这些目标与游戏开发非常一致。
我们希望为想在开发过程中,使用 Rust 的人建立一个吸引人的生态系统!想参与吗?加入 Rust GameDev working group!
想要加入下一期新闻?Send us a pull request 随意发送有关您自己的项目的 PR。
我是Rust London的社区领导,我只想为任何一个在伦敦的人做些调查,想在我们的 Rust 伦敦站上做个演讲。我们想举办一个专门针对 GameDev 的 LDN 会谈。
曾经坐在交通堵塞的公交车上,想知道为什么会有车停在路上,而不是公交专用道上?A/B Street这是一个探索道路空间和交通信号的微小变化,如何影响司机、骑自行车者、公交用户和行人的移动的游戏。游戏使用OpenStreetMap和其他公共数据集,让玩家调整现有的基础设施,然后做一个详细的比较,看看谁的变化有帮助/伤害。
A/B Street 是用 Rust 编写的,在glium之上,使用自定义 GUI 库。
Play it now和开始 contributing 将游戏扩展到更多的城市,建立轻轨和共享的步行/自行车路径模型,并开发游戏模式(比如“让一切尽可能慢”,“如果没有人拥有和停放私人车辆怎么办?”).
12 个高光点:
_讨论:/r/rust_
vange-rs是Vangers(1998 年)的重新实现,使用现代开发实践、并行计算和 GPU 的 Rust 游戏。
本月,该项目获得了一些主要功能。其中最大的一个是物理引擎在 GPU 上的闭环实现。同时,CPU 代码路径被固定,以保证平稳运行(video).
另一组变化已经登陆,允许许多 NPC 汽车与用户世界同行。渲染器已转向完全实例化,CPU 物理计算已并行化。该游戏现在可以在关卡上容纳多达 50000 辆汽车,所有这些汽车都是一次模拟的,一次最多可以在屏幕上显示 5000 辆(video)。
在较小的功能,它成为可能在游戏中 jump ,以及改变汽车的颜色。
该项目还启动了开发博客,描述新技术和旧技术,例如:
Veloren是一个开放的世界,开源体素 RPG 的灵感来自矮人堡垒和立方体世界。
12 月的一些更新:
您可以阅读有关某些特定主题的更多信息:
一月份的工作,包括玩家帐号认证,初步的修改工作,以及角色状态系统。正在进行的会谈也在研究网络系统和优化。
12 月的全周节目:“本周在 Veloren…”:#44, #45, #46, #47, #48.
voxel-rs是一个新的’类-我的世界’的多人游戏沙盒引擎,用 wgpu-rs 编写.
这个游戏目前正在大力开发中,还不能玩。
该项目的路线图是在这里。
_讨论:/r/rust_
@oliviff发布v0.1.2..v0.1.4“Tennis Academy: Dash“:
Dank Defense by Elijah Lucian是 Rust 制作的一款有趣的小导弹防御游戏,使用ggez。
Akigi是一个多人在线世界,其中大多数人认为人类是卑微的。
12 月的一些更新:
_讨论:/r/rust_gamedev_
^ 新的平滑土壤编辑演示
Garden是一款以成长中的现实植物为中心,即将到来的游戏。
12 月的一些更新:
Slavic Castles是一款纸牌游戏,灵感来自Arcomage。
自上次开发日志以来,进行了以下更改:
_讨论:/r/rust_gamedev_
Alex Butler继续完善他们的“Robo Instructus益智游戏-1.18, 1.19, and 1.20 versions were released:UI 调整,更好的翻译(包括完整的俄语翻译!),错误修正和性能优化。
Azriel发表了“I See The Character In UI”devlog:
ultraviolet是计算机图形学和游戏相关的线性代数的箱子,但*快速*,无论是在生产率还是在运行时性能方面。
这个月ultraviolet v0.4 发布 by@fu5ha。带来transform和projection模块和许多较小的改进。
component_group是一个箱子,与一群specs::Components 一起工作。
这个箱子定义了ComponentGroup trait。此 trait 使得管理一组
specs::Component
实例更容易。当您具有经常一起创建,读取和更新的多个组件时,这很有用。您可以使用此 trait ,轻松在 spec::World 实例之间,移动整个组件组。
这篇文章 by Michael Bryan讨论 ECS 模式在CAD库的用途。显然,这与游戏无关,但对于某些游戏开发人员来说仍然很有趣。
_讨论:/r/rust_
Lyon Rust 箱子将任意 2D 形状细分为三角形网格,可轻松在 GPU 上渲染。
这个月@nical发布了Lyon 0.15。填充镶嵌器(fill tessellator)是从头开始重写的(花费了两年时间),它应该解决以前的实现所具有的健壮性问题,并且还具有许多新功能。
_讨论:/r/rust_
winit是用于创建和管理窗口的纯 Rust 库。
Winit 的新 Alpha 版本带来了 Web 支持。预计该网络版本具有一些 API 限制(例如,窗口装饰,调整大小,全屏等)。
Web 支持基本处于测试阶段,而且我们希望鼓励您尝试一下并对其进行压力测试,以便我们可以查看问题出在哪里,并在必要时进行改进。
查看公文。
_讨论:/r/rust_
Icefox已发表“GGEZ 2020”博客文章,概述了 ggez 今年的发展中发生了什么,当前 ggez 0.6 的发展状况,路线图中的情况以及对 Rust 生态系统的想法。
_讨论:/r/rust_
miniquad by @fedor_games是一个安全的跨平台渲染库,专注于可移植性和低端平台支持。
网络演示:quad,offscreen,astroblasto,arkanoid,zemeroth。
@fedor_games在本月还发布了一些 Patreon 更新:
经过一年的工作,godot-rust0.7 绑定库被发布。一些更新:
另外,查看a Godot-规范示例项目 by @RecallSingularity。
raylib是一个简单的 C 2D / 3D 游戏引擎,几乎没有依赖性。这个月,raylib-rs 1.0 发布 —— 主要是惯用且线程安全的 Rust raylib 绑定库。
_讨论:/r/rust_gamedev_
Makepad是 Rust 的创新软件开发平台,可编译为 WASM / WebGL,macOS / Metal,Windows / DX11,Linux / OpenGL。
推出了早期的 Makepad Basic alpha 版本。此版本展示了开发平台,但尚未包括视觉设计工具或库生态系统。
Rust + Wasm 尽在makepad.nl。
_讨论:/r/rust_
Tetra是一个简单的 2D 游戏框架,使用 SDL2 进行事件处理,并使用 OpenGL 3.2+进行渲染。
这个月,@17cupsofcoffee发布了 Tetra v0.3。主要变化是:
@17cupsofcoffee还发布了a little example如何实现音效池化
如果您不想一次播放相同声音的 X 个实例(例如,如果玩家能够以最快的速度射击武器),这是非常方便的。
@puppetmaster updated their “Compact Space” game在 Tetra 0.3 中,添加了一些声音效果和 x-max 惊喜。
@JohanLindfors更新了他们的Snake和Flappy Bird示例游戏,到 Tetra 0.3。
而且,Snake 示例现在具有十步教程,如何从头构建。
rg3d-sound是一个正在积极开发的新声音库。
本月,它具有三个主要功能:
cargo run --example hrtf --release
cargo run --example reverb --release
rg3d-sound是rg3d游戏引擎的一个组件。
@siebencorgie得到了voxel 全局照明和voxel 锥状反射在他们的体素引擎中工作。
Rendology是基于 Glium 并以 Rust 编写的 3D 渲染管线。它具有阴影映射,延迟阴影,发光效果,FXAA 和实例渲染的基本实现。
一个“介绍 Rendology”本文,概述了 Rendology 的一些概念,并描述了它们如何成为这种方式。
_讨论:/r/rust_
Oxygengine是“用 Web-sys 编写游戏的,最热门的 HTML5 + WASM 游戏引擎”。
v0.5 版本的主要更新:
_讨论:/r/rust_
Mun是用于 Gamedev 的脚本语言,专注于快速迭代时间,使用 Rust 编写。
The Roguelike Tutorial by @blackfuture现在包括将近 70 章,并将继续增长!
十二月的一些更新:
另外,查看@blackfuture’s 2019 Roguelike 开发回顾博文。
doryen-rs是具有原生和 WASM 支持的 ASCII roguelike 库。使用来自unrust游戏引擎的 uni-gl 和 uni-app 箱子。
doryen-rs v1.2.1 已于本月发布。一些新功能:
nes-rust by @superhoge–NES Rust 编写的(Famicom)模拟器,在网络,已编译为 WASM。
本月 nes-rust 进行了远程多人游戏:
进入房间后,与某人共享该 URL,然后开始要与他们一起玩的游戏。请享用!
rx是一款可扩展,现代且极简的像素编辑器,在设计时关心和喜爱艺术家和黑客。它被认为具有尽可能少的 UI,而是专注于工作。
0.3 版本附带:
_讨论:/r/rust_
Texel是具有类 VIM 控制的 ASCII 艺术和风景编辑器。它旨在使编辑 ASCII 艺术作品变得容易,尤其是在游戏中。
_讨论:/r/rust_
crev
代码审查”;查看所有的会面 issues包括书面记录或加入下一 meeting。
只是过去有趣的 Rust 游戏开发链接。:)
^点击查看教程视频
在 2018 年 11 月,@AndreaPessino(Ready At Dawn工作室创始人/首席技术官)发行了Modulator箱子和超赞的“Modulator (Rust 编码系列)”教程视频。
Modulator是用于抽象,解耦 modulation 源的 Rust 箱子。
Modulator 是随时间变化的源,它们独立于其影响的参数,及其目的而存在。
Modulator 随附游乐场/测试台应用程序Modulator Play:
可视化和测试 Modulator 箱子,并进行富有表现力的 2D 基本渲染渲染的环境。基于“Piston Window”,该应用程序既可以用作 Modulator 箱子及其随附的源类型的测试台,又可以用作最小的摩擦环境以感受 Rust 编码。
_讨论:/r/rust_
今天就是所有新闻,感谢您的阅读!
订阅@rust_gamedev on Twitter或是/r/rust_gamedev subreddit如果您想收到新消息!
[](https://rust-gamedev.github.io/posts/newsletter-005/)
紧跟 Rust 游戏开发工作组的最新进展。