国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

Uniform

2023-08-03 19:04 作者:追逐彗星的尾巴  | 我要投稿

uniform是一個(gè)關(guān)鍵字,用于在著色器中聲明全局變量。這意味著它必須在每個(gè)著色器程序?qū)ο笾卸际仟?dú)一無(wú)二的。uniform變量可以從CPU端傳遞給GPU端,并在渲染過(guò)程中保持不變,即在一次繪制調(diào)用期間,uniform變量的值是不會(huì)改變的。

使用一個(gè)uniform變量通常需要以下步驟:

I.在著色器程序中使用uniform關(guān)鍵字來(lái)聲明變量。

II.在應(yīng)用程序中獲取uniform變量的位置。

III.為uniform變量設(shè)置一個(gè)值,這樣它就會(huì)在渲染時(shí)保持該值。

下面讓我們?cè)囍ㄟ^(guò)uniform來(lái)為圖形設(shè)置顏色。

我們?cè)谄沃髦新暶髁艘粋€(gè)uniform的vec4類(lèi)型的全局變量u_color,并把片段著色器的輸出顏色設(shè)置為uniform值的內(nèi)容。

uniform變量的值是通過(guò)函數(shù)glUniform*()來(lái)設(shè)置的。glUniform*()是一系列函數(shù)。由于u_color是vec4,這里我們使用glUniform4f(),表示函數(shù)需要4個(gè)float類(lèi)型的值來(lái)設(shè)定uniform變量。

第一個(gè)參數(shù)是uniform變量的位置。我們需要使用函數(shù)glGetUniformLocation()來(lái)查詢(xún)我們創(chuàng)建的uniform變量的位置。

第一個(gè)參數(shù)是我們創(chuàng)建的著色器程序,第二個(gè)參數(shù)是uniform變量的名字。如果函數(shù)返回-1表示沒(méi)有找到這個(gè)位置值。

下面是使用示例:

注意:在使用uniform之前必須先調(diào)用glUseProgram()。因?yàn)樗窃诋?dāng)前激活的著色器程序中設(shè)置uniform的。

使用uniform的好處是我們可以在隨時(shí)更新變量的值。譬如我們可以把顏色中的紅色通道設(shè)置成一個(gè)隨時(shí)間變化的變量,這樣每次渲染時(shí)顏色都會(huì)發(fā)生改變。

Uniform的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
九寨沟县| 新乐市| 鄢陵县| 保山市| 鹤山市| 五寨县| 十堰市| 蒲城县| 棋牌| 鄂尔多斯市| 桓台县| 威远县| 库尔勒市| 香港 | 林周县| 方山县| 磴口县| 鹤峰县| 西贡区| 海林市| 五莲县| 金川县| 长顺县| 腾冲县| 福泉市| 澄江县| 海兴县| 乌鲁木齐县| 建平县| 如东县| 普陀区| 辽源市| 阜新市| 肇州县| 四子王旗| 高淳县| 长海县| 高阳县| 隆德县| 平昌县| 肇庆市|