0
我對OpenGL環境的掌握非常鬆散,所以這是我想要理解的。有人可以解釋這兩種渲染風格之間的區別嗎?首先我想了解渲染紋理的意義是什麼,以及何時選擇這樣做會更合適?渲染到紋理與渲染到CAEAGLLayer支持的視圖?
我對OpenGL環境的掌握非常鬆散,所以這是我想要理解的。有人可以解釋這兩種渲染風格之間的區別嗎?首先我想了解渲染紋理的意義是什麼,以及何時選擇這樣做會更合適?渲染到紋理與渲染到CAEAGLLayer支持的視圖?
如果渲染到紋理那麼你已經描繪的圖像以這樣的方式被處理以使其立即可用作爲紋理,這在實踐中通常與從CPU可忽略的或零努力裝置。通常渲染紋理是更復雜的渲染管線的一部分。
陰影緩衝區是最明顯的例子 - 它們是渲染陰影的一種方式。將相機放置在光源所在的位置,並從那裏渲染場景,以便最終的深度信息以紋理結束。你不會向用戶展示這一點。對於您想要顯示給用戶的每個像素,您可以計算出它與光線的距離以及它在深度圖中的位置,然後檢查距離光線比距離光線更近還是更遠。因此,在精確度問題上花費了一些精力,您可以檢查每個像素是否從燈光「可見」,從而檢查它是否點亮。
渲染到CAEAGLLayer支持視圖是產生的OpenGL輸出的方式的UIKit知道如何複合到屏幕上。所以這是iOS允許您在普通Cocoa Touch顯示器的層次結構內向用戶展示最終OpenGL輸出的方法。
非常感謝您抽出寶貴時間來解釋! – anna 2011-12-18 20:25:14