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

歡迎光臨散文網(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)化繪制三角形的評論 (共 條)

分享到微博請遵守國家法律
汝州市| 沧源| 广饶县| 阿拉尔市| 呈贡县| 揭阳市| 金阳县| 嘉峪关市| 玉屏| 邢台县| 汉沽区| 昌邑市| 弋阳县| 太仓市| 黑龙江省| 长子县| 武安市| 富裕县| 鄂伦春自治旗| 南昌市| 怀宁县| 饶阳县| 班玛县| 宜宾市| 衡南县| 衢州市| 恭城| 临江市| 丹凤县| 高要市| 宝山区| 普洱| 清新县| 绍兴县| 周至县| 黄梅县| 南开区| 绥化市| 什邡市| 奉新县| 台北市|