写点什么

Rust 元宇宙 从零开始构建

作者:Miracle
  • 2021 年 12 月 02 日
  • 本文字数:887 字

    阅读完需:约 3 分钟

Rust 元宇宙 从零开始构建

这是使用 Rust 语言 从零开始构建元宇宙的一系列文章,完成一个基础但是相对完整的版本之后,我会把代码开源出来。


Rust 元宇宙 1 —— 创世纪

为什么选择 Rust 语言的三个理由

我们依赖的基础 概念和思路是什么,从这里出发


Rust 元宇宙 2 — 邻居

分而治之 永远是处理复杂问题的不二法门


Rust 元宇宙 3 —— 进入和离开

不论是真实世界,还是我们的元宇宙世界中,角色总是来来往往的,从其中某个人的视角看去,就是不断的有角色进入自己的视野,离开自己的视野,这种进入和离开时的事件需要特别被关注


Rust 元宇宙 4 —— 让世界动起来

静态的元宇宙是没有任何生气的,真实世界的角色们总是处于不断的移动中,在我们分治的基于区域和临近角色列表的世界中,角色因为移动在区域之间穿梭,在别人的视野中出现和消失。


Rust 元宇宙 5 —— SDL2.0

SDL2.0 是一个跨平台的底层图形库,支持 Windows,Mac,Android,IOS 等多个平台,考虑到我们需要观察元宇宙是如何运作的,即使不考虑客户端,仅仅是元宇宙服务器,增加一个 SDL 的观察窗口也是有价值的。


Rust 元宇宙 6 —— 显示世界

做好前述准备工作之后,我们可以使用 SDL 绘制服务器端的世界了。


Rust 元宇宙 7—— 异步和消息

我们成功的创建了一个元宇宙世界,让简单的角色进入和离开这个世界,并在这个世界里移动,通过 SDL2.0,我们成功的建立了这个世界的上帝视角。


Rust 元宇宙 8—— 脚本

为了让我们游戏世界显得有生气,理论上来说,应该有很多玩家 (机器人) 在世界里进进出出,来来回回。但是我们的元宇宙暂时还没有玩家,所以,我们需要创建一些角色进入和离开元宇宙


Rust 元宇宙 9 —— 库和序列化

让我们看看到目前为止的成果吧:一个可以运行和观察的简单世界,接下来我们要做些准备工作,开放世界的接入了。


Rust 元宇宙 10 —— 接入和协议

做完了所有的准备工作之后,我们需要迈出重要的一步,创建一个真实的玩家,通过客户端进入元宇宙,并看到视野内的一切,包括自己和其他角色(玩家或者宠物 /NPC)。


Rust 元宇宙 11 —— Websocket

上面说到,客户端和服务端通讯使用底层协议主要有三种选择 TCP Websocket 和 QUIC

QUIC 是面向未来的选择,Websocket 是现在的选择

用户头像

Miracle

关注

三十年资深码农 2019.10.25 加入

还未添加个人简介

评论

发布
暂无评论
Rust 元宇宙 从零开始构建