• <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 閱讀(8236) 評論(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
            總結的真好  回復  更多評論
              
            久久精品国产第一区二区| 亚洲国产天堂久久综合| 99久久99久久精品国产片果冻 | 一本久久精品一区二区| 久久久久亚洲AV无码专区网站| 久久影视国产亚洲| 久久精品国产男包| 嫩草影院久久国产精品| 欧洲国产伦久久久久久久| 精品久久久久久亚洲精品| 麻豆精品久久精品色综合| 伊人色综合久久天天| 亚洲性久久久影院| 岛国搬运www久久| 精品无码久久久久国产动漫3d| 久久综合狠狠色综合伊人| 久久久精品人妻一区二区三区蜜桃| 91精品国产乱码久久久久久| 天天做夜夜做久久做狠狠| 精品久久香蕉国产线看观看亚洲| 久久人人爽人人爽人人片av麻烦 | 国产精品99久久久久久猫咪| 久久中文骚妇内射| 中文字幕人妻色偷偷久久| 免费精品久久天干天干| 久久影院久久香蕉国产线看观看| 天天爽天天爽天天片a久久网| 久久人人爽人人爽人人片AV不 | 亚洲人成网亚洲欧洲无码久久 | 国产精品欧美亚洲韩国日本久久 | 国产一区二区精品久久 | 久久精品国产99久久丝袜| 久久综合综合久久狠狠狠97色88| 99久久婷婷国产综合亚洲| 无码人妻精品一区二区三区久久 | 伊人久久国产免费观看视频| 日本久久中文字幕| 日韩影院久久| 久久精品国产精品亚洲精品| 久久久久久国产a免费观看黄色大片| 婷婷久久五月天|