ASCII上限在何方?除了光线追踪,模拟星系碰撞和流体力学也不在话下

2021-02-24 20:17 1092 阅读 ID:248
新智元
新智元

ASCII码的上限到底在何方?国外小哥不仅用ASCII实现光线追踪效果,现在还有了模拟流体动力学!


还记得上次那个用ASCII码实现光线追踪效果的国外小哥吗?


当时这个项目一经发出,在Reddit上的热度就达到了2.1K,演示视频在Youtube上的观看量也达到了3万多次。


不过我们可以看到,这个效果还是比较粗糙的,纹理也不够细致。

光线跟踪(Ray Tracing)是一个在二维(2D)屏幕上呈现三维(3D)图像的方法。它可以实现更为逼真的阴影和反射效果,同时还可以大大改善半透明度和散射,带来相似于人眼所看到的更为真实场景效果。



光线追踪原理


最近,这位小哥再次发布了改进版的光追效果!


本次的改进主要在于阴影部分的处理和并行计算的方面:




‍可以看出,改进后的阴影层次更加分明,甚至球体表面反射的影像也更加的清晰。


项目地址:

https://github.com/DinoZ1729/Ray-2


ASCII码实现其他效果


从小哥的Github中可以看到,他不仅仅使用ASCII码实现了光线追踪,甚至还有星系、地球等其他效果。


比如,模拟两个星系之间的碰撞:


如果想在自己的电脑上运行,整个过程也非常的方便,只需要在控制台中将字体改为8,就可以实现在Windows上的运行;

如果想在Linux或者其他操作系统上运行,那么只需要加上修改几行代码的步骤就可以了。


实现流体动力学效果


除了这位外国小哥,我们还在Youtube上看到了一些其他用ASCII码实现的效果,都十分的有创意。


比如这个用ASCII码实现流体力学(Fluid Dynamics)效果的展示:


波浪



倾倒


甚至还有彩色的效果:



未来这位小哥可能会推出教程,感兴趣的同学敬请期待!


参考链接:

https://www.youtube.com/watch?v=QMYfkOtYYlg&feature=emb_logo

免责声明:作者保留权利,不代表本站立场。如想了解更多和作者有关的信息可以查看页面右侧作者信息卡片。
反馈
to-top--btn