2014-12-23 65 views
1

我想弄清楚每秒幀數的計算。如果我使用CAEAGLLayer,是否可以確定每秒幀數?

在我的代碼:

@interface myView : UIView 
    { 
    } 

而且,在.m文件

+ (Class) layerClass 
    { 
     return [CAEAGLLAYER class]; 
    } 

我嘗試使用CADisplayLink: 喜歡:

@interface myView : UIView 
    { 
    } 
    @property (nonatomic, strong) CADisplayLink *dLink; 

和.m文件

1. dLink = [CADisplayLInk] ... selector (Mycallback:)); 
    2. adding currentRunLoop to dLink. 

問題: 無論渲染速度如何,「MyCallback」每秒調用60次。 我的理解是,「MyCallback」以與當前fps無關的屏幕刷新率被調用。

問:

「什麼是計算了在CAEAGLLayer發生的真實FPS的方式」。

注意:我在GStreamer中使用此CAEAGLLayer [UIView]。

+0

語句'render [CAEAGLLAYER class];'做什麼? – Droppy

+0

謝謝指出。錯字錯誤。這是'回報'。 :)編輯的問題。 – DrunkenMaster

+0

我相信幀速率固定在60 FPS,並且你已經確認你自己,因爲你的回調函數在每一幀都被調用。 – Droppy

回答

0

要更改FramePerSecond,

self.displayLink.frameInterval = 2; 

儘管默認值是1,FramePerSecond = 60/frameInterval。

相關問題