OpenGL預設視點問題?

時間 2021-08-12 13:15:18

1樓:Maxim

如果你一開始繪製的是2D三角形,並且沒有進行任何的model-view-projection矩陣變換,那麼z分量其實作用不大。顯示在視窗上的座標都會被標量化為0到1之間。而鏡頭這個時候就是整個視窗,因為z在2D裡無法繪製,所以繪製的是x和y。

你更改z分量,不管怎麼變,三角形在視窗中的大小都不會發生變化,這和平時用眼睛看東西是不一樣的,遠近大小需要有變化。之所以沒變化,是因為鏡頭-camera(也就是你說的視角),其實就是視窗,視窗相當於一塊畫布,把所有在標量化範圍內的東西統統繪製在當前的畫布裡面。而經過3D座標後,我們會用到所謂的鏡頭,但實際上,鏡頭位置並沒有動,動的是需要繪製的圖形。

鏡頭的位置一直是在(0,0,0)

2樓:shawn xie

嚴格意義來說沒有預設視點這一說,其實是螢幕空間的繪製,glDepthRange 規定了可顯示的z空間的區間。預設為0-1。實際渲染中,座標會經過一層投影矩陣的變換,這個變換會將視錐中包含的部分的座標從近切面到遠切面轉換到0-1內,所以視錐內的內容是可見的。

OpenGL和OpenGL Shading Language的關係?

freeze 你想要在螢幕上繪製一些圖形,你需要用到opengl。可以理解為一些可以直接跟顯示卡互動的API。這是基礎。當你想要嚴格控制,你想畫什麼圖形的時候,並且控制好影象的各種各樣的效果,演算法,就需要用到 Shader了。起初,沒有opengl shader。只有一堆操作顯示卡的API ope...

學習opengl還有前途嗎?

只學OpenGL還不夠吧,顯示層面可以往引擎方面走,圖形,影象,遊戲等各領域,到了後面之後,依賴的是資料結構,演算法,設計模式,數學這些東西了。如果已經對GL比較熟了 會用 就繼續用,刷各種圖形學演算法,做各種渲染效果,畢竟GL或者Vulkan都是工具,演算法和數學才是靈魂,有趁手的工具不用反而浪費...

什麼型別的人需要學習 OpenGL?

塗鵬 對dx沒有研究,opengl還算熟悉。但就opengl和dx效率而言本人還是有發言權,工作需要在windows上做過opengl和dx11 native層的opengl es 的translator,在安兔兔3D場景渲染測試中,opengl 跑分在多數電腦上占上風。當然,不懂版本的驅動極大影響...