• <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 閱讀(8254) 評論(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
            總結的真好  回復  更多評論
              
            AV狠狠色丁香婷婷综合久久| 日韩精品国产自在久久现线拍| 精品久久777| 国产精自产拍久久久久久蜜 | 99久久精品免费看国产一区二区三区| 久久综合国产乱子伦精品免费| 9久久9久久精品| 婷婷久久综合| 51久久夜色精品国产| 一级做a爰片久久毛片毛片| 久久精品国产亚洲av水果派| 久久国产成人| 久久91精品久久91综合| 久久人人爽人人爽人人片AV高清| 精品精品国产自在久久高清| 久久人人添人人爽添人人片牛牛| 青青热久久综合网伊人| 久久精品国产色蜜蜜麻豆| 久久久久久久久久久免费精品| 午夜精品久久久久久久| 九九精品久久久久久噜噜| 伊人久久精品线影院| 久久中文骚妇内射| 久久婷婷五月综合97色直播| 国内精品久久久久影院网站| 久久久久人妻精品一区 | 欧美熟妇另类久久久久久不卡| 欧美性大战久久久久久| 精品熟女少妇aⅴ免费久久| 国产午夜久久影院| 亚洲国产精品婷婷久久| 狠狠干狠狠久久| 99久久99久久精品国产片果冻| 久久精品夜夜夜夜夜久久| 人妻丰满AV无码久久不卡| 亚洲精品午夜国产VA久久成人| 99久久精品免费看国产一区二区三区 | 国产精品日韩深夜福利久久| 精品久久777| 久久九九免费高清视频| 青青热久久国产久精品|