摘要:

随着消费类电子的应用和普及,嵌入式图形界面的设计将直接决定用户的体验效果,三维控件作为未来立体图形界面的重要组成部分,具有非常大的潜在价值。选择Android系统作为三维控件开发平台,不仅是因为它具有强大的功能支持,开源的应用许可,而且还考虑到Android系统三维控件的发展现状以及当前的市场需求。通过分析Android图形系统提出三维控件整体设计架构。以Android自带二维控件为基础,概述控件的开发原理及应用需求,并通过比较得出三维控件在功能和性能上的特殊需求。基于Android图形的三维控件的整体设计包括jMonkey的移植、三维场景的实现、三维控件集的设计三个部分。JME的移植主要是根据图形引擎的特性设计其在Android平台上的接口,包括系统接口和应用程序接口两个部分。利用JME移植接口可以创建基于OpenGLES的三维场景,根据场景实现原理,分析并完成场景内节点的设计以及控件模型的创建与加载。重点分析三维控件集各组成部分的实现原理。控件的外观属性配置是控件最明显的可视属性,包括二维控件的外观映射属性、控件在三维场景中的材质属性两部分;控件的动画制作解析是控件交互不可或缺的组成部分,关键帧动画不仅能够提供丰富的动画的资源,而且其动画效果较其他动画类型流畅。它通过第三方软件制作,采用解析类中的方法绑定到jMonkey三维控件模型,响应系统中动画事件;纹理映射完成了Android控件外观与jMonkey节点模型纹理的绑定,通过映射把Android中二维控件绘制的Bitmap以Texture的方式加载到三维控件模型上,实现二维控件到三维场景节点的映射;三维控件的事件交互是设计的重点,分别从线程间事件消息的传递和事件消息的捕获、分发、处理几个方面,详细论述三维控件如何通过监听和回调机制实现事件消息的响应。

展开