首頁>資訊>

還記得上次那個用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

6
最新評論
  • 購得日本70萬平方公尺小島的中國女子是誰?
  • 4000名孕婦將進行疫苗試驗,輝瑞展開招募工作,引發關注