WebGL有一個清除整個表面的clear
方法。清除曲面的特定矩形的最佳方法是什麼?例如,我想設置一個從(50,50)開始的100x100像素框到全零(ARGB 0,0,0,0)。我現在所能想到的就是用一個可以寫入零的片段着色器繪製一個四邊形。有沒有更簡單的方法?如何清除WebGL中的矩形區域?
2
A
回答
11
您可以使用SCISSOR測試來將清除(以及通常的渲染)限制爲一個矩形。
// turn on the scissor test.
gl.enable(gl.SCISSOR_TEST);
// set the scissor rectangle.
gl.scissor(x, y, width, height);
// clear.
gl.clearColor(r, g, b, a);
gl.clear(gl.COLOR_BUFFER_BIT ...);
// turn off the scissor test so you can render like normal again.
gl.disable(gl.SCISSOR_TEST);
1
如果WebGL的範圍內將繪製視口以外的任何東西,外面剪刀任何事情都會被裁減掉,根本不抽!
相關問題
- 1. nginx:limit_req_zone區域如何清除?
- 2. AS3:如何清除特定像素/區域中的圖形
- 3. 如何清除OpenGL紋理中的區域(即:圓形)?
- 4. 如何清除畫布元素中的多邊形區域?
- 5. 如何從.NET中的矩形源區域複製到非矩形/非並行區域目標區域?
- 6. 更新圖形中的矩形區域
- 7. 如何提取視頻的矩形和非矩形區域?
- 8. 如何清除picturebox中的圖形(矩形形狀)
- 9. 在圖框上繪製矩形 - 如何限制矩形區域?
- 10. 如何在matplotlib圖形中的特定區域繪製矩形
- 11. 我如何填充一個矩形區域除外
- 12. Android矩形區域檢測
- 13. Custon UISlider非矩形區域
- 14. sierpinski地毯 - 矩形區域
- 15. 矩形區域和邊界
- 16. 陣列中的矩形區域
- 17. 識別圖像中的矩形區域
- 18. 如何清除區域和模塊
- 19. Javafx清除撫摸矩形
- 20. Cocos2d-x在指定的矩形區域中刪除精靈
- 21. 在opencv中裁剪矩形區域
- 22. 在excel中選擇矩形區域
- 23. 清除輸出區域
- 24. 清除畫布區域
- 25. 如何在python中感興趣的區域繪製矩形
- 26. 如何按顏色過濾OpenCV圖像中的矩形區域?
- 27. 如何用不相交的旋轉矩形填充矩形區域?
- 28. 如何清除C#中矩形的填充?
- 29. 骯髒的矩形 - 清除的矩形不再出現
- 30. 如何從圓形區域計算矩形topx,topy,bottomx,bottomy android
好主意,謝謝! – AshleysBrain 2012-07-18 18:12:54
我正在玩three.js,我不明白視區和剪區之間的區別。我的意思是,如果我想放更多的視口,我必須設置剪刀區域並啓用剪刀測試。你能解釋這件事嗎? :) – optimusfrenk 2014-03-23 18:19:30
視口命令設置2件事情。座標被剪切的值以及座標乘以的值將它們轉換爲來自clipsace的像素。注意我沒有說他們剪輯像素。如果將視口設置爲100,100,1,1(1像素視口),並將「gl_PointSize」的點設置爲10,則仍會看到它繪製了10個像素點(視口外)。這是因爲視口設置僅剪切頂點。另一方面剪刀剪輯像素。 – gman 2014-03-24 19:12:46