因此,假設我有一個大於包含圖塊的屏幕的VBO,我可以在不損失任何性能的情況下繪製整個VBO,還是隻有繪製子圖的方法填滿屏幕的VBO的一部分? VBO會佔用大部分VRAM嗎? VBO的優點是速度。渲染比屏幕更大的VBO,
0
A
回答
1
VBOs只是專用於保存頂點數據的內存池。沒有更多,沒有更多。完全可以用單獨的幾何數據填充單個VBO。甚至可以在一個VBO中使用具有不同數據佈局的多個數據集。
只有當您使用gl…Pointer
函數將偏移量指定給頂點屬性時,纔會添加一些含義。然後右邊的gl…Draw
調用將使OpenGL獲取VBO的數據並提交它們進行繪製。
這是沒有更多,也沒有少。那麼,爲什麼我要告訴你這個?因爲「VBO比屏幕大」的概念是沒有意義的。由VBO中的數據描述的幾何形狀的部分可能在剪輯區域之外。 OpenGL老實說不關心。它會像所有其他數據一樣對待。只有在頂點變換階段之後,如果原始圖像完全位於剪切區域之外,則它將在光柵化過程中被忽略。但它會穿過整個頂點設置階段,因此消耗計算能力。
VBO會佔用大部分VRAM嗎?
甲VBO 是的VRAM(專用於保持頂點數據)的一部分。這就是它的重點。 OpenGL緩衝對象是從快速內存保留的內存池(並且對於所有實際的手段,快速內存等於VRAM)。期。
+0
謝謝你清理那個! – thetheodor
相關問題
- 1. VBO渲染慢
- 2. 渲染大屏幕版本的手機
- 3. 更新屏幕渲染相機位置
- 4. 離屏渲染紋理渲染屏幕上的空矩形
- 5. 屏幕渲染軌跡
- 6. opengl關閉屏幕渲染
- 7. 渲染層屏幕外
- 8. 點雲渲染,交錯VBO
- 9. 渲染到紋理仍渲染到OpenGLES中的屏幕
- 10. GridLayout比屏幕大
- 11. 渲染Zend_Form的(白色屏幕)
- 12. 渲染到VB.net中的屏幕
- 13. LWJGL - 渲染週期的屏幕閃爍
- 14. 的OpenGL渲染VBO不能正常
- 15. OpenGL渲染只是VBO的一部分
- 16. React-navigation StackNavigator渲染到特定屏幕
- 17. OpenGL 4.4渲染只是白色屏幕
- 18. Knockout observable不能渲染到屏幕
- 19. 評估ContentControl而不渲染到屏幕
- 20. 在Windows屏幕上渲染緩衝區
- 21. CoordinatorLayout/AppBarLayout ExpandableListView被渲染出屏幕
- 22. LibGdx屏幕:渲染和生命週期
- 23. OpenGL FrameBuffer沒有渲染屏幕外
- 24. PartialView開不渲染與ViewBags屏幕值
- 25. 用Qt5做屏幕外渲染(openGL)
- 26. Linux渲染與OpenGL 3.2+ w/FBOs屏幕
- 27. 渲染到幀緩衝區和屏幕
- 28. PDF渲染器將屏幕設置爲屏幕
- 29. GPU加速3D渲染可能比屏幕刷新速度更快嗎?
- 30. 只更新紋理和渲染器的一部分屏幕?
你確定你不是指FBO? VBOs沒有與屏幕相同的尺寸(默認幀緩衝區)技術上,FBO也沒有尺寸,但是FBO附件可以。 – bcrist
@bcrist你應該在評論好友之前閱讀整個問題! ;) – Vallentin
@Vallentin我做了......你怎麼覺得我沒有? – bcrist