GPUImage的filter的textures處理鏈?zhǔn)浇Y(jié)構(gòu)

兩個(gè)最重要的的地方:

最重要的一個(gè)類GPUImageOutput(所有的filter的父類,其他也有繼承它的,如GPUImageUIElement,UIKit元素通過(guò)CG轉(zhuǎn)gles貼圖 等等); 
協(xié)議(或者接口)GPUImageInput。 
  繼承GPUImageOutput且遵循GPUImageInput的filter,處理完成后輸出又可以作為下一個(gè)filter的輸入。

平面設(shè)計(jì)培訓(xùn),網(wǎng)頁(yè)設(shè)計(jì)培訓(xùn),美工培訓(xùn),游戲開發(fā),動(dòng)畫培訓(xùn)

@protocol GPUImageInput <NSObject>
- (void)newFrameReadyAtTime:(CMTime)frameTime atIndex:(NSInteger)textureIndex;- (void)setInputFramebuffer:(GPUImageFramebuffer *)newInputFramebuffer atIndex:(NSInteger)textureIndex;- (NSInteger)nextAvailableTextureIndex;- (void)setInputSize:(CGSize)newSize atIndex:(NSInteger)textureIndex;- (void)setInputRotation:(GPUImageRotationMode)newInputRotation atIndex:(NSInteger)textureIndex;- (CGSize)maximumOutputSize;- (void)endProcessing;- (BOOL)shouldIgnoreUpdatesToThisTarget;- (BOOL)enabled;- (BOOL)wantsMonochromeInput;- (void)setCurrentlyReceivingMonochromeInput:(BOOL)newValue;@end

平面設(shè)計(jì)培訓(xùn),網(wǎng)頁(yè)設(shè)計(jì)培訓(xùn),美工培訓(xùn),游戲開發(fā),動(dòng)畫培訓(xùn)

GPUImageFramebuffer

  framebuffer的封裝類,根據(jù)onlyGenerateTexture 判斷 只生成紋理 或 framebuffer;摘自 - (void)generateFramebuffer;

只生成紋理的情況典型:GPUImageUIElement,GPUImageVideoCamera等等; 
生成framebuffer,判斷是否支持快速上傳紋理數(shù)據(jù)(其實(shí)是判斷CVOpenGLESTextureCacheCreate是否可用)

    網(wǎng)友評(píng)論