關於CG和遊戲陰影技術的一些疑問?

時間 2021-06-27 14:18:42

1樓:shawn xie

圖形渲染可以分為兩種,一是3D遊戲裡的實時渲染(Real-time Rendering),二就是動畫電影用到的離線渲染(Offline Rendering)。離線渲染主要涉及光線追蹤,那陰影的實現就不僅限於你提到的簡單方法了,具體實現請聽其它做過的大神的回答。

我先從據我所知道的實時渲染角度回答下,拋磚。

1,你所說的「其他物體反射過來的光線」屬於非直射光,如果考慮的話,相當於考慮全域性光照。目前實時渲染基本不考慮精確的全域性光照。

你說的「陰影體積(Shadow volumes)技術是不是只能投射在(地)平面?連上牆也不能?」有誤,這兩種都能上牆,而且體陰影的方法適用性更強,只是效能會更差。

我了解的3D遊戲引擎,大部分都採用陰影對映法。

3,CubeMap可以理解為有6張圖的「天空盒」,當然不如一張2D Map省記憶體啦~。點光源因為會向四周投射陰影,必須用CubeMap才能滿足要求。而直射光只需要向乙個方向投射陰影,理論上也可以用CubeMap,但是其它幾個方向真的好浪費~所以實際上大家都用2D Texture來儲存深度影象。

陰影對映法不受燈光位置的影響,跟光源是否為靜態沒關係,因為你可以每幀都更新深度貼圖。

SpotLight是聚光燈,和直射光類似,因為是乙個方向的,也可以使用2D Texture來儲存深度貼圖。

區別其實顯而易見,聚光燈投射是錐形視角,直射光是平行視角。在渲染深度貼圖時,平行光我們用的是orthographic相機,而聚光燈只要改為perspective相機就可以啦。

具體的實現,你可以參考下three.js或者其它遊戲引擎的原始碼。

下面貼乙個zen-3d實現spotLight的demo~

zen-3d-examples

求教關於網易遊戲運營的一些情況?

怎麼說呢?拿了offer還沒簽三方,說說我的了解吧。薪水應該是批發價本科6500 7500 16碩士 8000 9000 16 朋友所在公司某前網易運營說每月都有2000 5000績效。試用期6個月 80 月薪包吃不包住 面試一筆三面 一筆遊戲動漫相關知識夾雜一點資料處理和資料庫好過一面初面可能是老...

關於原畫和自己一些問題?

嘟嘟嘟嘟醬 唔,看了下題主的年紀。21?前面該講的都講了,我給你灌碗雞湯吧。某曼某德還可以,題主也挺年輕,現在試錯成本挺低。比如我的夢想其實是成為乙個咖啡烘焙師。但是我已經幹自己喜愛的遊戲設計事業也7年有餘了,不在公司幹也收入OK,那這個時候我去考慮夢想和實際以及我的轉行可行性就需要瞻前顧後了,必須...

關於生活的一些建議?

我是佩佩醬 荷西 你是不是一定要嫁個有錢人。三毛 如果我不愛他,他是百萬富翁我也不嫁,如果我愛他,他是千萬富翁我也嫁。荷西 說來說去你還是要嫁有錢人。三毛 也有例外的時候 荷西 如果跟我呢三毛 那只要吃得飽的錢也算了荷西思索了一下 你吃得多嗎?三毛十分小心的回答 不多,不多,以後還可以少吃點。 可樂...