2009-10-24 87 views
1

我有一個圖像和由x,y座標數組定義的凸多邊形。如何從圖像中獲取多邊形形狀的OpenGl紋理?

我將如何去獲得由多邊形所包含的圖像部分的一個Texture2D代表性?

基本上我只需要從圖像中的紋理與由透明多邊形外側的部分。

。如果產生的紋理也被夾在我會做後空翻多邊形的寬度和高度。

任何指針/片斷,將不勝感激。謝謝!

回答

2

有趣的是,你的問題時帶上了cocos2d和OpenGL,但我會在這裏給一個OpenGL爲中心的答案。我認爲你不想創建一個新的紋理對象來達到預期的效果,而是想使用模板緩衝區。該過程如下所示:

  1. 創建FBO時,請在其上附加模板緩衝區。
  2. 清除模板緩衝區。
  3. 關閉寫入顏色和深度緩衝區;打開寫入模板。
  4. 渲染多邊形,不用打理紋理。
  5. 重新啓用對顏色和深度緩衝區的寫入;打開模板測試。
  6. 渲染與多邊形的邊界框相對應的紋理四邊形。

iPhone 3GS和iPhone模擬器都支持8位模板緩衝區。對於較舊的iPhone手機,你也許可以做一個類似的技巧與幀緩衝的alpha分量,而不是模板緩存...

+0

大部分時間都在本週迄今這種掙扎所以謝謝你的幫助!目前試圖破譯你提到的alpha分量方法。再次感謝。 – 2009-10-27 17:09:37

相關問題