选择开发框架:
Libgdx还是coco2D?
China-Unix网站提供Libgdx学习的专题http://www.it168.com/redian/libGDX/。总体感觉前者可能比较好学点。
行动之前先规划。
IT168介绍了一个游戏文件规划的整个过程,http://tech.it168.com/a2010/0908/1100/000001100975.shtml
一些常用效果总结:
1、http://blog.csdn.net/taki_dsm/article/details/20774449
三、关于自适应屏幕分辨率的问题
Android游戏开发中每款手机分辨率的不同注定是程序员开发游戏必须考虑的问题,怎样才能写一个程序而达到可以在不同分辨率的机子上运行良好,这将是决定一个游戏好坏的重要因素之一。在游戏资源res下有三个和图片存储有关的文件夹:drawable-hdpi、drawable-mdpi、drawable-ldpi。
drawable-hdpi里面存放高分辨率的图片,如WVGA (480x800),FWVGA (480x854),drawable-mdpi里面存放中等分辨率的图片,如HVGA (320x480),drawable-ldpi里面存放低分辨率的图片,如QVGA (240x320),系统会自动根据机器的分辨率来分别到这几个文件夹里面去找对应的图片。当然,除了准备好几组不同分辨率的图片以外,在代码中图片坐标和触屏事件的坐标都要灵活的处理,这样才能实现一个程序多机型运行的目标。
- DisplayMetrics dm = new DisplayMetrics();
- getWindowManager().getDefaultDisplay().getMetrics(dm);
- int screenWidth = dm.widthPixels;
- int screenHeight = dm.heightPixels;
通过以上代码可以获得当前机型的屏幕像素,然过比列换算可以实现代码中坐标的灵活应用。
四、如何锁定屏幕是横屏还是竖屏
一款游戏通常不会设计成横屏竖屏都可玩,会固定成横屏或竖屏。Android游戏开发中只需在AndroidManifest.xml里面配置一下就可以了,加入这一行
- android:screenOrientation="landscape"
例如(landscape是横向,portrait是纵向)。
五、view与view之间的跳转
Android游戏开发中一个游戏不会只有一个view,比如欢迎动画,游戏画面,菜单页面等等,如何实现它们之间的跳转,这里有一个方法,就是用Handler类实现。直接看代码:
- Handler myHandler = new Handler(){
- public void handleMessage(Message msg){
- if(msg.what == 1){
- //控制页面的显示...
- }
- if(msg.what == 2){
- //控制页面的显示...
- }
- }
- };
然后用:myHandler.sendEmptyMessage(1)来实现切换。
小结:浅谈Android游戏开发基础和经验的内容介绍完了,希望通过Android游戏开发内容的学习能对你有所帮助!
介绍Libgdx的博客:
http://blog.csdn.net/zhanhuai1/article/category/933528
博客http://cocos2d.9tech.cn/news/2013/1028/38297.html对cocos2D和Libgdx做了比较。