GLSL基礎教程(一)

2021-08-22 05:24:40 字數 899 閱讀 5565

高階著色語言(hlsl――high level shading language)是用來在頂點和畫素著色器(shader)中程式設計的語言。其實,說白了他們就是我們寫的短小的自定義程式,他們是在圖形卡的gpu(graphic processor unit圖形處理單元)上執行的,代替了固定的渲染管線的一部分。比如:檢視轉換、投影轉換等。

由於我們可以將hlsl著色器所寫的**直接作為長字串資源放進應用程式中。所以,我們可以在記事本中描寫我們的著色器**。

glsl(gl shading language)的著色器**分成2個部分:vertex shader(頂點著色器)和fragment(片斷著色器)。下面主要關於頂點著色器**。

頂點著色器主要的工作是:

1.利用檢視和投影矩陣對點的位置進行變化

2.如果需要利用法線的時候,也同樣需要利用檢視矩陣對其進行轉換

3.紋理座標的產生和轉換

4.頂點的光照或者象素光照的計算

5.顏色計算

並不是所有的工作都需要做,只需根據自己的需要進行不同的編寫

負責執行頂點著色的是頂點處理器。它可以得到當前opengl中的狀態,glsl內建變數進行傳遞。比如gl_projectionmatrix(投影變換矩)、gl_modelviewmatrix(檢視變換矩陣)、g_position、gl_backcolor、gl_frontcolor、gl_normal等;而這些又是根據opengl應用程式傳遞諸如頂點位置、顏色、法線等資訊。舉乙個簡單的頂點著色器**:

void main()

IOS OpenGLES 基礎教程 一

今天起本站將推出ios opengles基礎教程,當然本人也是一面自學一面將學習中所用到的和學到的東西一併分享給大家,在本教程中,本人會對 進行逐行的注釋講解,資源來自於網路和書籍的整合,如在教程中有錯誤的地方,希望大家及時指正,可隨時傳送郵件到helmsmansoft 163.com 與本人取得聯...

C 基礎教程(一)

1.清單 1 1.乙個簡單的歡迎程式 welcome.cs namespace declaration using system program start class class welcomecss 結束。任何位於 之間的語句定義為塊。塊定義了程式元素的活動範圍 或者稱為生命期和可見性 這些概念...

Kylin基礎教程(一)

hadoop於2006年初步實現,改變了企業級的大資料儲存 基於hdfs 和批處理 主要基於mr 問題,10幾年過去了,資料量隨著網際網路的發展井噴式增長,如何高速 低延遲的分析資料成為後續面臨的挑戰,闢如我們面臨的一些質疑 hadoop老矣,尚能飯否?其中也出現過各種各樣的框架來協助hadoop降...