vertex-buffer

    2熱度

    1回答

    在我的基於DirectX 11的引擎中,我有一個Mesh類(顯然)有一個頂點和一個索引緩衝區。 網格頂點可以在運行時由我的引擎的用戶改變(例如設置單個或多個頂點的位置/顏色等)。 網格也可以從模型加載動畫,然後由用戶運行。 現在我不知道我是否應該使用動態或靜態頂點緩衝區。 如果網格有動畫,我當然應該使用動態頂點緩衝區。但是,如果用戶從不傾向於運行動畫並且頂點保持不變(例如,長時間處於空閒狀態的簡單

    0熱度

    1回答

    說,有與變革改變或多或少的每一幀,你會一般是這些繪圖方法的快很多不同的網格: 對於每一幀填充一個大的頂點緩衝區與網格的轉換頂點(轉換在CPU上完成,每個幀將頂點複製到緩衝區中)。 對於每個對象的創建插入網格的非變換頂點,然後當繪圖發送每個網格的變換作爲一個統一的參數(在GPU上完成變換,在網格創建時複製頂點)。 我們可以假設所有網格都是繪製每一幀,所以不會複製案例1中的頂點)無關緊要。

    0熱度

    1回答

    實際上,我在我的項目函數中爲指定最小半徑和最大半徑的繪圖環生成頂點數據。在邊緣情況下(最小半徑等於0),它是帶有實心填充的圓。爲了繪製我的數據,我使用了GL_TRIANGLE_STRIP。 現在我想重構我的功能,這將是可能的準備數據來繪製虛線圈(類似http://www.andyhorner.com/wp-content/uploads/2012/04/dashedlines-24.jpg)。 另

    0熱度

    1回答

    我想以每個實例的頂點緩衝區對象的形式存儲我的Cat對象的頂點,常規和紋理信息,但我不知道如何。我想是這樣的: @property(nonatomic, assign) int *indices; // vertex indices for glDrawElements @property(nonatomic, assign) GLKVertexAttrib vertexBufferObject;

    0熱度

    2回答

    我有以下代碼: DirectX::device->CreateVertexBuffer(sizeof(VERTEX) * vertexCount, D3DUSAGE_DYNAMIC | D3DUSAGE_WRITEONLY, VERTEXFORMAT, D3DPOOL_MANAGED, &vertexBuffer, NULL); VOID* vertexLocking; vertexBuff

    1熱度

    1回答

    我想在directX10中呈現位圖字體,我想盡可能有效地做到這一點。不過,由於這個問題,我很難開始設計我的設計。 那麼我應該重用一個VertexBuffer還是多個VertexBuffer對象? 目前我在程序中爲每個Quad對象分配一個動態VertexBuffer。如果沒有任何東西在我的屏幕上移動,這樣我就不必映射/取消映射VertexBuffer。對於字體,我可以在每個文本框或類似的地方分配一個

    0熱度

    1回答

    我有一個錯誤,同時創造vertexbuffer 這裏是我的代碼: bool ColorShaderClass::InitializeShader(ID3D11Device* device, HWND hwnd, WCHAR* vsFilename, WCHAR* psFilename) { HRESULT result; ID3D10Blob* errorMessage;

    0熱度

    1回答

    好吧,所以我想學習OpenGL。我已經成功地遵循了一個例子來渲染一個三角形。所以我試着繼續前進,而不是使用示例中提供的頂點,我嘗試從文件中讀取頂點(任意數量的頂點)。由於它是任意的,我讀入std::vector,然後嘗試將其分配給數組以傳遞給glBufferData。 FWIW,我想畫GL_LINE_STRIP,而不是GL_TRIANGLES。我的程序一秒鐘,然後彈出的窗口中運行一個錯誤顯示: D

    0熱度

    1回答

    我創建了一個將3D數據繪製爲曲面的程序。定義3點照明[鍵/返回/填]與 glLightfv(GL_LIGHT0, GL_POSITION, light0_position); glLightfv(GL_LIGHT2, GL_POSITION, light2_position); glLightfv(GL_LIGHT0, GL_DIFFUSE, white); glLightfv(GL_LIG

    0熱度

    1回答

    我正在使用OpenGL製作類似於CAD/CAM軟件的東西。 起初我只是使用glBegin和glEnd,它工作正常,但當有很多頂點時它會變慢,所以我做了搜索,發現有一些叫做vertexbuffer的東西。 所以我做了一個簡單的程序來測試它,它是寫在C#和sharpgl //create a new buffer gl.BindBuffer(OpenGL.GL_ARRAY_BUFFER, verte