基于libGDX框架三维应用在Android中的实现技术

发布时间:2021-01-04

在最近的几年中,移动互联网浪潮兴起并得到了迅猛的发展,手机游戏已经成为主流的娱乐消遣方式之一,移动端的三维游戏也变得越来越丰富。而使用Android提供的通用性原生API来进行三维应用的开发显得尤为低效和复杂。信息学院胡伟教授课题组利用libGDX开发框架快速,高效地完成Android平台三维应用的开发。在三维应用的开发中,可以用三维场景编辑的方式对三维场景进行可视化的构建。直接在三维应用中解析重现已经编辑好的三维场景能够极大的提高三维应用的开发效率。

本技术开发了一款工具用于对PC端3D绘制引擎HarryGE导出的场景文件进行解析,使得在PC端编辑好的三维场景可以在Android客户端进行重现。重现的三维场景包括三维模型(包含纹理)的渲染和变换;支持点光源,方向光光源,环境光等光照效果;摄像机参数的解析与设定;天空盒效果的渲染以及粒子效果的渲染。本技术使用了六面体环绕的方式替代了传统的立方体贴图来实现天空盒效果,提升了绘制天空盒的性能。绘制三维场景最主要的工作就是渲染三维模型,这也是绘制三维场景过程中比较耗时的操作,该技术利用模型缓存技术大大提高了批量渲染三维模型的速度。在解析三维场景的基础上,进行了人群疏散场景的仿真。人群疏散使用了在RVO基础上改进的全局路径规划人群疏散算法,在应用中用代码模拟了人群疏散场景的动态效果,达到了在Android平台三维实时绘制的要求。然后,本文利用libGDX框架开发了一个复杂的三维应用:RPG类游戏Kacles,加入了游戏开发中常用的碰撞检测和运动学模拟,三维动画效果,以及实时阴影效果,使得Kacles游戏具有非常高的真实感。开发过程中通过扩展libGDX框架来满足个性化的需求。对完成的Kacles游戏在小米4手机,Android4.4.4版本的系统上进行了性能测试,测试结果表明使用libGDX框架开发的Kacles游戏有着非常好的性能。综上所述,本文在libGDX框架的基础上实现了对复杂三维场景的解析,并在Android平台上进行三维场景的还原,为Android平台快速开发三维应用提供了一种方便的工具。三维游戏Kacles的实现展示了libGDX框架强大的功能和方便的扩展特性为开发Android三维应用带来了极大的效率提升

 

  联系方式:李老师   电话:010-64427182   邮箱:bhtzfzb@mail.buct.edu.cn