BaseGameActivity调用onLoadEngine()生成引擎
BaseGameActivity生成RenderSurfaceView,并将引擎作为Renderer穿给了它
BaseGameActivity在显示前的doResume()方法中调用onLoadResources()、onLoadScene()、onLoadComplete()
RenderSurfaceView继承于GLSurfaceView。GLSurfaceView类,主要处理OpenGL ES相关的一些细节,并通过GLThread更新画面(通过Renderer.onDrawFrame()方法)
RenderSurfaceView通过Renderer将onDrawFrame调用交给引擎处理
一、Engine的描画时序图
每次描画后都回激活UpdateThread,做系统的更新。
二、Line的描画时序图
整个描画得流程在Entity中定义,各种控件的描画流程在Shape中定义。这里的层次分的十分明确。
三、AnimatedSprite的描画时序图
本来以为会十分复杂,看了以后估计上和Line差不多,还是人家层次分的好啊。
看了新的例子后发现,AnimatedSprite好像会自己动,就把这里从新整理了一下。发现AnimatedSprite里面有一个animate方法,它负责设定动画循环的次数,动画播放时间间隔等信息。以后再onManagedDraw()里面,通过时间来判断但前应该使用的纹理片断。