• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            隨筆 - 85  文章 - 47  trackbacks - 0

            常用鏈接

            隨筆分類

            隨筆檔案

            搜索

            •  

            最新評論

            OpenGL VBO并不難,但是較繁瑣,其實其概念跟加載紋理是一樣的:

            初始化階段:
            1. glGenBuffersARB(1, &nVBOVertices); //生成一個句柄
            2. glBindBufferARB(GL_ARRAY_BUFFER_ARB, nVBOVertices); //聲明該句柄為一個vbo句柄,并選擇之
            3. glBufferDataARB(GL_ARRAY_BUFFER_ARB, sizeof(vertices), vertices,GL_STATIC_DRAW); //將頂點集上傳至server端

            使用階段:
            1. glEnableClientState(GL_VERTEX_ARRAY); //開始使用vbo
            2. glBindBufferARB(GL_ARRAY_BUFFER_ARB, nVBOVertices);  //選擇當前使用的vbo
            3. glVertexPointer(3, GL_FLOAT, 0, BUFFER_OFFSET(0));  //指定vbo頂點格式
            4. glDrawArrays( GL_TRIANGLES, 0, g_pMesh->m_nVertexCount ); //畫吧
            5. glDisableClientState(GL_VERTEX_ARRAY); //停止使用vbo

            收尾階段:
            1. glDeleteBuffersARB(1,&nVBOVertices); //刪除句柄,同時刪除server端頂點緩沖

            再來看看紋理緩沖是怎么使用的,其實差不多:

            初始化階段:
            1. glGenTextures(1, &texID);//創建句柄
            2. glBindTexture(GL_TEXTURE_2D, texID); //設置句柄類型
            3. glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, img->GetWidth(), img->GetHeight(), 0, GL_RGBA, GL_UNSIGNED_BYTE, raw_rgba); //上傳紋理緩沖

            使用階段:
            1. glEnable(GL_TEXTURE_2D); //開始使用紋理緩沖
            2. glBindTexture(GL_TEXTURE_2D, texID); //選擇當前使用的紋理緩沖
            3. 發送頂點和紋理坐標,畫吧...省略
            4. glDisable(GL_TEXTURE_2D); //停止使用紋理

            收尾階段:
            1. glDeleteTextures(1,&texID);//刪除句柄,,同時刪除server端緩沖

            看到了么,這個概念是不是很相似?都是:

            1. 創建句柄
            2. 設置句柄類型
            3. 上傳數據
            4. 開始使用緩沖
            5. 選擇句柄
            6. 使用緩沖
            7. 停止使用緩沖
            8. 刪除句柄和緩沖
            posted on 2008-05-10 00:31 w2001 閱讀(8231) 評論(4)  編輯 收藏 引用

            FeedBack:
            # re: OpenGL VBO頂點緩沖的使用 2008-05-10 18:58 kj
            謝謝
              回復  更多評論
              
            # re: OpenGL VBO頂點緩沖的使用 2010-06-21 19:46 i
            簡單,明了,解釋得很好!謝謝!  回復  更多評論
              
            # re: OpenGL VBO頂點緩沖的使用 2012-09-08 21:07 劉健
            我可以再mfc中使用vbo嗎  回復  更多評論
              
            # re: OpenGL VBO頂點緩沖的使用 2015-09-24 09:49 Rinne
            總結的真好  回復  更多評論
              
            97久久精品无码一区二区天美| 国产精品18久久久久久vr| 99久久国产免费福利| 午夜不卡888久久| 精品久久人人爽天天玩人人妻 | 四虎国产精品成人免费久久| 亚洲国产成人久久精品99| 久久久精品国产免大香伊| 91精品国产91久久久久福利| 国产女人aaa级久久久级| 午夜精品久久影院蜜桃| 粉嫩小泬无遮挡久久久久久| 久久久久国产亚洲AV麻豆| 久久久久亚洲av无码专区| 久久一区二区三区免费| jizzjizz国产精品久久| 伊人久久精品影院| 久久香蕉综合色一综合色88| 久久精品成人欧美大片| 亚洲精品久久久www| 99久久国产免费福利| 91精品国产乱码久久久久久| 亚洲欧美日韩精品久久亚洲区| 国产精品美女久久久久久2018| 亚洲国产小视频精品久久久三级 | 久久久噜噜噜久久| 久久99精品国产麻豆| 久久久国产精华液| 久久午夜无码鲁丝片午夜精品| 久久精品人人做人人爽97| 亚洲国产婷婷香蕉久久久久久| 久久久久国产精品麻豆AR影院 | 伊人久久大香线蕉精品| 中文字幕人妻色偷偷久久| 天天做夜夜做久久做狠狠| 国产国产成人久久精品| 久久国产精品一区二区| 国产精品久久精品| 亚洲国产成人久久综合一| 欧美精品一本久久男人的天堂| 国产成人精品免费久久久久|