欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

4行代码再现《黑客帝国》数字雨,在终端实现的那种

程序员文章站 2022-04-07 14:02:01
...

4行代码再现《黑客帝国》数字雨,在终端实现的那种

4行代码再现《黑客帝国》数字雨,在终端实现的那种

十三 发自 凹非寺
量子位 报道 | 公众号 QbitAI

提到《黑客帝国》,字符雨可谓是让人印象深刻。

这种科技感爆棚的特效,你是否也想来一套?

这个,可以有。

最近,名叫akinomyoga的GitHub用户,便上传了这样一个项目。

4行代码再现《黑客帝国》数字雨,在终端实现的那种

只要有终端、有C++,几行代码就能启动!

超级方便有木有?

炫酷效果展示

akinomyoga做这个项目,除了检测终端模拟的性能,还有就是觉得特别有意思。

除了我们上面看到的《黑客帝国》字符雨,比较基础的实现包括数字掉落、字符闪烁显示。

4行代码再现《黑客帝国》数字雨,在终端实现的那种

还能实现了《康威生命游戏》(Conway’s Game of Life)的特效。

4行代码再现《黑客帝国》数字雨,在终端实现的那种

在复杂点的,曼德布洛特集合(Mandelbrot set)也能实现。

曼德布洛特集合是在复平面上组成分形的点的集合,一种分形图案。

4行代码再现《黑客帝国》数字雨,在终端实现的那种

如何再现数字雨?

效果如此震撼,实现起来会不会很复杂?体验很简单。

首先,还是老规矩——介绍一下环境需求。

  • 需要有git、C++编译器、GNU Maker和GNU AWK;

  • 系统支持UTF-8;

  • 支持256色和UTF-8的终端。

而后,仅仅需要下面4行代码就能启动!

$ git clone https://github.com/akinomyoga/cxxmatrix.git
$ cd cxxmatrix
$ make
$ ./cxxmatrix 'The Matrix' 'Reloaded'

但是,没有C++怎么办?

不急,博主还非常好心的总结了许多类似的,用其他语言可以在终端实现的GitHub项目。

C语言实现:
https://github.com/abishekvashok/cmatrix

Python 3实现:
https://github.com/will8211/unimatrix

Go语言实现:
https://github.com/GeertJohan/gomatrix

嫌终端实现还是麻烦?那试试在浏览器吧。

HTML5 Canvas实现:
https://github.com/tidwall/digitalrain

CSS 3实现:
https://github.com/raphaklaus/matrix-fx

WebVR实现:
https://github.com/pazdera/matrix-vr

当然,还有需要其它实现的方法,可以去这个GitHub项目中了解更多。

传送门

GitHub项目地址:
https://github.com/akinomyoga/cxxmatrix


「涛哥聊Python」同名视频号,主要分享 Web开发,爬虫,数据分析,DevOps,机器学习,职场,副业挣钱等。更多视频干货,欢迎大家关注!

4行代码再现《黑客帝国》数字雨,在终端实现的那种


推荐一个Windows神器软件

Ubuntu 20.04壁纸来了,这只猫有“镭射眼”

凭什么 FastAPI 火成这样?看这篇文章就知道了


4行代码再现《黑客帝国》数字雨,在终端实现的那种