最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

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

LearnOpenGL-P4 生成彩色的矩形

2023-03-27 23:46 作者:Code有毒  | 我要投稿

0 上一章我們講到如何生成不同顏色的矩形,然后延伸了一些內(nèi)容生成了一個(gè)顏色會(huì)隨時(shí)間正弦變化的純色矩形。本章我們將主要做兩件事:

(1)將著色器程序封裝成一個(gè)類。

(2)通過在vertices添加矩形四個(gè)頂點(diǎn)對(duì)應(yīng)的顏色數(shù)據(jù)生成一個(gè)彩色的矩形。?

1 將著色器程序封裝成一個(gè)類

1.1 新建一個(gè)Shader頭文件和cpp文件。將頂點(diǎn)著色器源碼文件路徑和片段著色器源碼文件路徑作為構(gòu)造函數(shù)的參數(shù)傳入到Shader中。

1.2 在Shader的構(gòu)造函數(shù)中讀取著色器源碼文件內(nèi)容,并將其編譯。最后將其鏈接到著色器程序中。

1.3 將之前main函數(shù)里的頂點(diǎn)著色器和片段著色器編譯實(shí)現(xiàn)細(xì)節(jié)移到編譯接口中。

1.4 將main函數(shù)里的著色器程序鏈接實(shí)現(xiàn)細(xì)節(jié)移到鏈接函數(shù)中。

1.5 設(shè)置著色器激活函數(shù)和刪除函數(shù)。

1.6 設(shè)置各種數(shù)據(jù)類型的著色器uniform參數(shù)的接口。

1.7 將頂點(diǎn)著色器源碼和片段著色器源碼分別存放在兩個(gè)不同的GLSL后綴的文本文件中。

1.8 在main函數(shù)中將之前的shader流程都刪了,改為直接使用Shader對(duì)象的方式。

1.9 在渲染循環(huán)中,每次繪制之前,使用Shader對(duì)象激活著色器。

1.10 渲染完畢退出渲染循環(huán)后,需刪除著色器程序分配的資源。

?

2. 封裝完著色器程序之后,我們?cè)賹?shí)現(xiàn)一個(gè)花里胡哨的功能,即通過給vertices數(shù)組中添加4個(gè)矩形角點(diǎn)對(duì)應(yīng)的顏色信息,來生成一個(gè)彩色的矩形。

2.1 在vertices中添加顏色信息。

2.2 分別解釋vertices數(shù)組中左半部分?jǐn)?shù)據(jù)是角點(diǎn)坐標(biāo)信息,右半部分?jǐn)?shù)據(jù)是角點(diǎn)顏色信息。

2.3 編譯并運(yùn)行程序,得到一個(gè)彩色的三角形。(設(shè)置了四個(gè)頂點(diǎn)的顏色,然后OpenGL在光柵化時(shí)會(huì)根據(jù)像素位置對(duì)顏色進(jìn)行插值,才得到的這幅彩色的圖象)


LearnOpenGL-P4 生成彩色的矩形的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國家法律
金溪县| 哈巴河县| 台江县| 合江县| 合肥市| 略阳县| 甘洛县| 峨边| 克东县| 铅山县| 永靖县| 寿宁县| 河南省| 无锡市| 拜泉县| 孝义市| 库车县| 新乡市| 盱眙县| 洪泽县| 翁牛特旗| 鹿泉市| 若羌县| 珠海市| 红桥区| 濮阳市| 侯马市| 黎川县| 清河县| 陆良县| 沂水县| 岱山县| 靖宇县| 个旧市| 资源县| 台中县| 锡林郭勒盟| 道真| 峡江县| 渝中区| 林甸县|