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

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

優(yōu)化繪制三角形

2023-08-01 14:15 作者:追逐彗星的尾巴  | 我要投稿

元素緩沖對象

元素緩沖對象(Element Buffer Object,EBO),也稱為索引緩沖對象(Index Buffer Object),用于存儲繪制圖元所需的頂點索引數(shù)據(jù),是一種用于優(yōu)化繪制三角形元素的機制。

舉例來說,假設(shè)我們需要繪制一個矩形。由于OpenGL主要處理三角形,我們可以繪制兩個三角形來形成一個矩形。按照之前的做法,我們需要向著色器發(fā)送六個頂點,但由于這六個點中有兩個重復(fù)的,因此會造成內(nèi)存和性能的浪費。而使用EBO,簡單來說,就是只定義四個頂點,然后根據(jù)頂點索引擇需取用,當然其中有兩個會被重復(fù)使用。

下面我們定義頂點和繪制矩形所需的索引:

EBO的使用和VBO一樣,只是緩沖類型不再是GL_ARRAY_BUFFER,而是GL_ELEMENT_ARRAY_BUFFER。

最后用函數(shù)glDrawElements()替換glDrawArrays()。

mode表示繪制的基本圖元類型,此處依然為GL_TRIANGLES。

count表示要繪制頂點的個數(shù),這里應(yīng)為6。

type表示索引的數(shù)據(jù)類型,這里是GL_UNSIGNED_INT。

indices指定EBO中的偏移量(或者傳遞一個索引數(shù)組,但是這是當你不在使用索引緩沖對象的時候),此處為0。

至此,繪制一個矩形的流程如下:


優(yōu)化繪制三角形的評論 (共 條)

分享到微博請遵守國家法律
庄河市| 穆棱市| 都匀市| 锦屏县| 栖霞市| 淮滨县| 铁力市| 稻城县| 台江县| 凉山| 乐昌市| 高平市| 密山市| 甘南县| 溧水县| 东方市| 加查县| 左权县| 英吉沙县| 尼勒克县| 图木舒克市| 屯门区| 邵东县| 社旗县| 罗田县| 罗甸县| 玉环县| 乌鲁木齐市| 凤冈县| 铜陵市| 桦甸市| 台南县| 池州市| 呼和浩特市| 平潭县| 瓦房店市| 囊谦县| 英山县| 镇沅| 南木林县| 津南区|