天天看點

Cocos2D中的Framerate狀态

對于額外繪制調試實體引擎的支援,cocos2d同樣可以繪制概述計數器,尤其是幀速率(framerate)顯示.

為了啟用這些概述計數器标簽,你隻需添加如下一行代碼,比如說在appdelegate.m裡:

cocos2d将在左下角會繪制3個标簽,從上至下依次為:

繪制調用(draw call)計數:繪制調用一般發生在opengl每次需要繪制一個不同紋理的時候,但是可能也有其他原因導緻繪制調用.每個繪制調用會引起性能下降,是以目标是該調用盡可能少.可以用sprite sheet去實作這個目的,精靈sheet可以合并多個圖檔到一個紋理中,進而使得減少sprite sheet的數量.在這個例子中繪制調用為一個合理低的值12,你将看到性能急劇惡化如果繪制調用數量接近或超過100.

秒每幀(seconds per frame):其表示完成update循環每幀的平均值,其中包括處理遊戲邏輯,實體引擎和渲染.為了達到60幀每秒(fps),該值必須少于或等于0.0166(1/60).如果你的fps為30則時間加倍.該值主要應用的地方為檢查發生繪制掉幀之前還可以添加多少遊戲邏輯.

幀每秒(frames per second):在ios模拟器中因為其使用軟體渲染是以你會看到fps非常低,但是在實際裝置上可以運作到最多60fps.同樣注意該值是最近幀的平均值,是以如果fps為45着實際意味着其中一半的幀在0.0166秒中渲染完畢(60fps)而另一半會占用更多時間(30fps).

繼續閱讀