cocos2dx 3.x 主循環每一幀做的事情

cocos2dx 3.x 中主循環每一幀做的事情
Ref的子類有:
事件、Event, EventDispatcher, EventListener,
動畫、Action, ActionManager, Animation, Animation3D, AnimationCache, AnimationCurve< componentSize >, AnimationFrame,;
物理、Physics3DConstraint, Physics3DObject, Physics3DShape, Physics3DWorld,PhysicsShape,
渲染、RenderState, RenderState::StateBlock
文件、聯網等;

一幀之內所做的事情(FPS):
1、事件檢查和處理:在每一幀開始,C2d檢查事件,有則處理分發事件。
2、動畫更新:ActionManager會對每一個元素註冊的所有動畫執行響應計算,並更新其對應的屬性值;
3、默認處理物理模擬碰撞;
4、程序自定義更新;
5、UI樹的遍歷;UI樹的遍歷主要是給每一個元素計算座標變換矩陣,以及根據指定的邏輯深度排序,生成正確的繪製順序。每個節點別遍歷之後,講發送繪製命令至繪製棧;
6、渲染系統根據員孫的globalZorder進行繪製,繪製完畢,交換前後緩衝區,將當前幀的內容回到屏幕上;
7、poolManger釋放當前所有的autorelease對象;所以我們只關心對象的創建和使用,不需要關心其釋放;
每一個步驟都會計入Ref對象類型的Ref對象,所以銷燬的內容就比較清楚了;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章