Android cocos2dx HelloCpp代碼分析

1. HelloCpp是一個Activity,繼承Cocos2dActivityx首先會執行靜態代碼塊,加載libhellocpp.so庫,然後就是執行onCreate方法,這裏調用了父類的onCreate方法。我們看看Cocos2dxActivity的onCreate方法,該類在cocos2dx的庫工程libcocos2dx中:

Cocos2dxHandler處理Dialog的消息,Cocos2dxHelper是幫助類,在init方法中,是爲Activity綁定View Hierarchy,View Hierarchy的根View是個FrameLayout,FrameLayout又包含一個EditText和一個GLSurfaceView,這個GLSurfaceView就是cocos引擎用來繪製遊戲畫面的關鍵View。Cocos2dxActivity的onCreateView方法:

是新建一個Cocos2dxGLSurfaceView,Cocos2dxGLSurfaceView又繼承於GLSurfaceView。我們都知道GLSurfaceView的核心就是Renderer,初始化時會調用Renderer的onSurfaceCreated方法,每一幀的繪製是通過調用Renderer的onDrawFrame方法。Cocos2dxGLSurfaceView的Renderer是一個Cocos2dxRenderer對象,Cocos2dxRenderer對象的onSurfaceCreated方法:

nativeinit方法在main.cpp中,


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