用戶交互與內存管理

用戶交互函數

1、機制動畫

CCLayer(圖層)提供用戶交互處理,相關的函數以下:spa

歸納爲觸碰和加速度操做。交互信息的攜帶者是CCTouch對象對象

Cocos2dx 2版本使用CCTouchDispatcher3版本使用CCEventDispatcher繼承

具體查看CClayer::setTouchEnable(bool value)函數事件

觸摸事件分爲單點和多點,單點是目標委託對象,多點是標準委託對象,在3版本的cocos2dx中對應有EventListenerTouchAllAtOnceEventListenerTouchOneByOne兩種事件。內存

相應的回調:ccTouchBegan(Ended/Moved) ccTouchesBegan(Ended/Moved)it

加速度計回調:didAccelerate內存管理


內存管理io

1、引用計數

CCObject對象m_uReference(引用計數),建立對象或者引用(retain)對象以後必須調用release減小引用計數,cocos2dx提供手動和自動兩種方式管理內存。

2、自動釋放池

自動方式是自動釋放池(CCPoolManager),繼承自CCObject的對象,調用autorelease就加入了自動釋放池管理。

3、管理模式

引擎中的管理者

類名 描述

CCActionManager 動做管理器

CCSpriteEngineManager 腳本管理器

CCPoolManager 自動釋放池

CCAnimationCache 動畫緩衝

CCSpriteFrameCache 精靈幀緩衝

CCShaderCache 渲染腳本緩衝

CCTextureCache 紋理緩衝

幾個緩衝通常在切換場景的時候釋放是明智的選擇;

相關文章
相關標籤/搜索