文章分类 -  Android游戏开发-libgdx框架的

摘要:转载声明:http://www.cnblogs.com/htynkn/archive/2013/01/04/libgdx.htmlLibgdx是什么我最感到庆幸的就是这个系列的文章的标题【android游戏开发框架libgdx的使用】,虽然最开始了解不深入,但是这个标题却是正确的。Libgdx是一个游戏开发框架,它不是一个游戏引擎。它的主要代码是java,其中对于效率要求较高的部分是由C和C++写成的。它是跨平台的,支持Windows、Mac OS、Linux、Android(1.5+)、GWT,它对IOS的支持是基于MonoTouch和IKVM。它是免费的,基于Apache License 阅读全文
posted @ 2013-02-04 21:34 王世桢 阅读(1972) 评论(0) 推荐(0)
摘要:转载声明:http://www.cnblogs.com/htynkn/archive/2012/08/29/libgdx_24.htmlBox2d是一个很出名的2d物理引擎,有C++、Java等等版本。libgdx对Box2D进行了很高效的封装,极大的降低了学习和使用成本。但是我觉得和Libgdx的UI库比起来,Box2D的使用始终比较复杂,单纯的物体降落什么的还好说,要是遇上一个特别复杂的物体,有时候就有点繁琐了。在网上游荡时发现了physics-body-editor,绝对堪称神器。physics-body-editor项目主页:http://code.google.com/p/box2d 阅读全文
posted @ 2013-02-04 21:32 王世桢 阅读(370) 评论(0) 推荐(0)
摘要:转载声明:http://www.cnblogs.com/htynkn/archive/2012/08/28/libgdx_23.htmllibgdx的ui库可以实现一些动画效果,但是做游戏来说可能有些不足。Universal Tween Engine是一个纯java实现的动画库。地址:http://code.google.com/p/java-universal-tween-engine/只要能够用float表示的一切java对象它可以让它动画化,可以使用于Libgdx、Android、Swing等等。Universal Tween Engine使用一般流程使用Universal Tween 阅读全文
posted @ 2013-02-04 21:30 王世桢 阅读(452) 评论(0) 推荐(0)
摘要:转载声明:http://www.cnblogs.com/htynkn/archive/2012/08/26/libgdx_22.html前面有一篇文章介绍了用TWL进行布局,最近做其他java的东西接触到了table-layout,用着很不错,仔细看来一下文档,原来还支持libgdx。简单试用了一下,比TWL好使多了。TABLELAYOUT简介TABLELAYOUT是一个轻量级的UI组件布局库。使用表格实现,有点像HTML的TABLE。它支持libgdx, Swing, Android和TWL。支持Java API和配置文件两种方式。同时有个配套的编辑器http://table-layout. 阅读全文
posted @ 2013-02-04 21:25 王世桢 阅读(409) 评论(0) 推荐(0)
摘要:转载声明:http://www.cnblogs.com/htynkn/archive/2012/08/24/libgdx_21.html好久没有更新这个系列的文章了。今天下午在群上讨论libgdx对中文的支持问题。本来Hiero做是最好的,但是LIbgdx的BitmapFont不支持多图,常用汉字3500个,是在做不到一张图上。libgdx很早之前就有ttf的支持了,不过那个时候有点问题。经测试新版本(0.96)完全支持,特地总结出来和大家分享。TTF字库TTF(TrueTypeFont)是Apple公司和Microsoft公司共同推出的字体文件格式,随着windows的流行,已经变成最常用的 阅读全文
posted @ 2013-02-04 21:22 王世桢 阅读(488) 评论(0) 推荐(0)
摘要:转载声明:http://www.cnblogs.com/htynkn/archive/2012/04/04/libgdx_20.html好久没有写libgdx相关的东西了,主要是我不知道改写些什么了。最近收到了很多邮件,大多是关于资源加载的,特别是异步资源加载,还有什么Loading窗口的实现什么的,这篇博文就做个大致的回答吧。什么时候需要资源预加载资源预加载的目的很明确,提升用户体验。当然就开发者而言,比较好的预加载实现方式还可以方便管理。如果游戏很简单简单,资源很少很少,那么弄资源预加载就是费事,但是以下几种情况的话还是推荐使用:1.资源数量大音乐、图片、视频什么的,如果你的游戏这些东西太 阅读全文
posted @ 2013-02-04 21:21 王世桢 阅读(270) 评论(0) 推荐(0)
摘要:转载声明:http://www.cnblogs.com/htynkn/archive/2012/03/03/libgdx_19.html先说明一下上一篇文章我使用了多张hiero图的字体绘制,因为我对源码进行了一些修改,本来想这次发出来的,但是我仔细调试了一下,发现对于多图的支持还是有问题,有些字会出现偏移。这个只有继续尝试了…大家可以考虑使用ttf字库。然后继续说上一篇,虽然实现了一个简单的效果,但是目前有很多不足。我把AVG游戏需要的资源全部提取出来,放在一个个文件夹中,然后通过配置文件加载这些数据。libgdx的工具库com.badlogic.gdx.utils就是libgdx的工具库, 阅读全文
posted @ 2013-02-04 21:19 王世桢 阅读(175) 评论(0) 推荐(0)
摘要:转载声明:http://www.cnblogs.com/htynkn/archive/2012/03/02/libgdx_18.html好久没有写libgdx的东西了,主要是最近迷上了各种算法…文章是关于实现简单的AVG游戏效果,可能会有好几篇。想用libgdx做点AVG效果主要是因为目前Android上运行的AVG游戏(主要是恋爱模拟类型)的基本基于NScripter引擎移植出来的,我的2B中兴机子跑着巨卡,所以想自己做个。何为AVG游戏冒险类游戏AVG (Adventure Game)通常是玩家控制角色进行虚拟冒险的游戏,其故事情节往往是以完成某个任务或是解开一个谜题的形式出现的。我这里说 阅读全文
posted @ 2013-02-04 21:16 王世桢 阅读(418) 评论(0) 推荐(0)
摘要:转载声明:http://www.cnblogs.com/htynkn/archive/2012/01/19/libgdx_17.html分享了一些素材,有兴趣的朋友可以看看:http://www.cnblogs.com/htynkn/archive/2012/01/19/game_resource.html前些日子的文章介绍了tiledmap的主角出现和移动等等问题。相对于主角游戏自然还应该有敌人(?)。与主角不同的是,这些元素的移动时程序控制的,一般有3种。1.随主角的移动变化,靠近主角或远离主角2.按照固定路线移动3.不动第一种的话完全是看你的游戏逻辑决定,和tiledmap关系不大。第二 阅读全文
posted @ 2013-02-04 21:13 王世桢 阅读(204) 评论(0) 推荐(0)
摘要:转载声明:http://www.cnblogs.com/htynkn/archive/2012/01/19/game_resource.html 最近一直在研究libgdx引擎的使用,自然需要一些图片资源,一边学习一边从网上搬运各种用的上的资源,估摸可能有人用的上,特意分享在此。 下载地址:~~~已 阅读全文
posted @ 2013-02-04 21:10 王世桢 阅读(557) 评论(0) 推荐(0)
摘要:转载声明:http://www.cnblogs.com/htynkn/archive/2012/01/19/libgdx_16.htmllibgdx绝对是一个相当不错的游戏引擎,最近一段时间的学习我感觉收获很多。但是我一直对于libgdx加载的图片大小必须是2的次方感到很纠结。如果是一张一般的图片想在libgdx中使用的话就需要自己去用ps什么的把图像拉一下,一两张没关系,但是数量大了还是有点烦。而且拉大的图片还需要TextureRegion来切割一下,实在麻烦。仔细看了一下libgdx的tool包,发现早有解决方案了。具体的类是imagepacker,在com.badlogic.gdx.to 阅读全文
posted @ 2013-02-04 21:09 王世桢 阅读(189) 评论(0) 推荐(0)
摘要:转载声明:http://www.cnblogs.com/htynkn/archive/2012/01/17/libgdx_15.htmlTWL是一个基于OpenGL的图形化用户界面库,它提供了一套非常丰富的窗口小部件,比如标签,编辑框,表格等等。不同的布局方式配合使用可以创建出非常高级的用户界面。TWL我原来接触过,但是觉得配置文件太难写了,今天逛论坛发现了官方出了Theme编辑器,马上来试试。官网:http://twl.l33tlabs.org/Editor下载地址:http://twl.l33tlabs.org/themer/themer.jnlp双击等下就可以运行了,界面如下。先新建一个 阅读全文
posted @ 2013-02-04 21:07 王世桢 阅读(212) 评论(0) 推荐(0)
摘要:转载声明:http://www.cnblogs.com/htynkn/archive/2012/01/13/libgdx_14.html本文紧跟上文:http://www.cnblogs.com/htynkn/archive/2012/01/13/libgdx_13.html上文说到绘制了Map,然后我们的主角也可以四处活动了,但是仍有一些不完善的地方。1.地图的边界没有控制。Camera的位置其实是viewport的位置,不是屏幕边界,所以如果直接按照上文的做法做的话主角走到屏幕边缘的时候就有问题了。2.没有障碍,主角的行动没有约束。现在先来解决第一个问题。解决方案很简单,我们时刻注意vie 阅读全文
posted @ 2013-02-04 21:06 王世桢 阅读(254) 评论(0) 推荐(0)
摘要:转载声明:http://www.cnblogs.com/htynkn/archive/2012/01/13/libgdx_13.html地图我们创建好了接下来就是主角的出现。其实上文介绍了如何TiledMap和Stage的结合,角色的处理就简单了。可以继承Actor类创建主角类,我就偷个懒,用Image代替。编辑我们的TMX文件,添加一个对象层。在主角要出现的地方加个形状取名为play1我们的主角是:思路是我们遍历map中的所有Object,如果名字和我们设定的play1一致,那么就实例化一个Image,位置和Object一致,添加到舞台。关键代码: 1 for (TiledObjectGro 阅读全文
posted @ 2013-02-04 21:02 王世桢 阅读(203) 评论(0) 推荐(0)
摘要:转载声明:http://www.cnblogs.com/htynkn/archive/2012/01/12/libgdx_12.html虽说可以用Image什么的当个背景,但是要是做个RPG类的游戏就有点复杂了。为了追求效率一般可以使用libgdx的SpriteCache,但是如果习惯于TiledMap的话libgdx也是支持的。相关的类是TiledMap,TileAtlas,TileMapRenderer,都在com.badlogic.gdx.graphics.g2d.tiled之中。现在我们从头来看看TiledMap的使用。1.制作TiledMap。我使用的是Tile Map editor 阅读全文
posted @ 2013-02-04 20:58 王世桢 阅读(325) 评论(0) 推荐(0)
摘要:转载声明:http://www.cnblogs.com/htynkn/archive/2012/01/10/libgdx_11.htmllibgdx的UI改进很大,原来各种稀奇古怪的问题都已经解决了,而且UI的类型也基本上完全了。推荐大家下载最近的版本使用。UI的使用我觉得唯一复杂的就是各种样式的制定,比如TextButton:1 public TextButtonStyle (NinePatch down, NinePatch up, NinePatch checked, float pressedOffsetX, float pressedOffsetY,float unpressedOf 阅读全文
posted @ 2013-02-04 20:56 王世桢 阅读(174) 评论(0) 推荐(0)
摘要:转载声明:http://www.cnblogs.com/htynkn/archive/2012/01/09/libgdx_10.html游戏屏幕最常见的就是一个变化较少的背景加上一系列和用户交互的角色和部件。为了方便管理你还可以为背景建个Group方便管理。但是有时候写的时候没有想到这个问题,或者是背景不是单纯的一个图片什么的,背景和角色还有一些混合逻辑分布在两个Stage里。我重写太麻烦,想想反正都是SpritBatch绘制出来的,用双舞台大不了多个摄像头。马上试试还真行。先看看Stage的draw方法:1 /** Renders the stage */ 2 public void... 阅读全文
posted @ 2013-02-04 20:51 王世桢 阅读(166) 评论(0) 推荐(0)
摘要:在游戏开发中难免会需要模拟现实情况,一般常见的就是模拟物理世界。比如物体碰撞,车辆前进,物体下落等。也许有人会觉得原来有实现过一些效果没有看到用什么物理知识呢。在我看来引入物理引擎并不是必须的,但是这样可以让游戏更逼真。物理引擎的话首选Box2d,但是它是C++写的,直接用不方便。在Android游戏开发中使用物理引擎一般有三个比较好的选择:1.JBox2dBox2d的Java移植版本,速度有点慢。不过对于不熟悉C++的朋友而言这个可以拿来看看原理。2.Havok这个就不多说了,我怎么没有用过。3.Libgdxlibgdx用了jni封装了box2d,速度和易用性都不错。下面我们来看看一个示例, 阅读全文
posted @ 2013-02-04 20:49 王世桢 阅读(230) 评论(0) 推荐(0)
摘要:转载声明:http://www.cnblogs.com/htynkn/archive/2011/12/06/libgdx_8.html相机也可以成为观察者,最简单的例子就是魂斗罗。玩家操作角色前进,后退,跳跃等,显示的世界(就是后面的背景)会不停变化。其实就是相机的观察点(视角)的改变引起的。也许游戏的世界(背景地图)很大,比如10240*480,而设备的分辨率是800*480。现在游戏的角色在地图的最左侧,那么它的观察点就是(400,240)。随着角色的向前移动,观察点也变化,通常是y值变大。角色后退时y值变小。角色跳跃时,x值变化。(其实地图可能要稍微高一点,比如500,这样角色的跳跃才会 阅读全文
posted @ 2013-02-04 20:46 王世桢 阅读(198) 评论(0) 推荐(0)
摘要:转载声明:http://www.cnblogs.com/htynkn/archive/2011/11/29/libgdx_7.html上几篇文章介绍了libgdx框架的一些基本类的用法,也夹杂着浏览了一下部分源代码,但是如果使用libgdx进实际开发?仅仅了解几个类是不够的,还需要对框架有具体和宏观的了解。1.应用的生命周期游戏应该高效和稳定,特别是对于android平台。目前的开发都是面向手机和平板。如果有效的管理资源,如何高效的运行都是非常重要的。试想一个制作优美,可玩性高的游戏运行于你的android手机上却10秒钟崩溃一次,运行时卡的如同在看漫画,这样的游戏是有合格的吗?Android 阅读全文
posted @ 2013-02-04 20:45 王世桢 阅读(109) 评论(0) 推荐(0)