as3isolib是为了提供一个通用的使对象有效/失效的处理过程。当一个对象的属性改变,通过事件标记,之后使该对象有效。当对象的属性真正的改变的时候,没有必要真正的让该对象失效,这个过程节省了渲染时间.as3isolib的渲染过程本质上是它的隐藏过程。
默认情况下,IsoViews在它(所在的)场景中是分开进行渲染的,这样是为了减少在渲染过程中对堆栈的消耗。
IsoView.render()
(1) validatePosition() -- 基于一个新的位置校正视图内部的显示列表。
(2) viewRenders -- 遍历viewRenderers数组,并且执行IViewRenderer.renderView()。
(3) scenes -- 若渲染过程循环,它会遍历场景中的数组,并执行IIsoScene.render()方法。
IsoScene.render() -- 该方法中包含三个过程:preRenderLogic,renderLogic,postRenderLogic。
(1) preRenderLogic() -- 顾名思义,该方法在处理子对象之前,会先
执行在每个渲染过程中的逻辑。在这种情况下,场景会分发一个
IsoEvent.RENDER类型的事件。开发者可以根据需要来监听这个
事件,这样他们可以在渲染子对象之前处理一些附加的逻辑。
(2) renderLogic() -- 该方法是一个核心的渲染过程,它用来处理子对
象,layoutRenderers和styleRenderers。
1) children -- 若循环渲染场景,它会遍历每一个子对象,并且调用
子对象的child.render()方法。
2)layoutRenderers -- 遍历基于3D等距的对象。
3)styleRenderers -- 遍历styleRenderers数组,执行
IsceneRender.renderScene()。
(3) postRenderLogic() -- 在分发IsoEvent.RENDER_COMLETE之前,执行任何上最后一次的清理。它也调用过期的方法sceneRenderd。
原文连接:http://code.google.com/p/as3isolib/wiki/renderPhase
分享到:
相关推荐
开源as3基础类库as3isolib as3isolib is a great isometric library for actionscript 3 by Justin Opitz. This is a lower level isometric library that could be used in
as3isolib是一个2.5d的flash动画制作引擎,可以做医院等一些场景
as3isolib.v1.core类库,flash开发必备
As3isolib (v1.0) 是一个开源 ActionScript 3.0 Isometric Library,旨在帮助创建针对 Flash 播放器平台的(例如游戏和图形)。 As3isolib 包括实用程序、原语和视图。 As3isolib 的开发考虑到了简单性、速度和性能...
项目地址http://code.google.com/p/as3chat/ 下载地址 http://code.google.com/p/as3chat/downloads/list 测试案例,可以多开: ...使用同一个服务端在线游戏例子,目前只有移动,...http://code.google.com/p/as3isolib/
action script 3 licence
基础生成器IsoLib 在 HTML5 浏览器中使用 SVG、鼠标和触摸事件的等距滚动地图。