android 物理引擎哪个游戏引擎适合初学者学习?

您所在的位置: &
如何选择Android游戏引擎
如何选择Android游戏引擎
我们进行Android游戏开发时选择游戏引擎是必须的,但是该如何选择呢?哪个Android游戏引擎更加适合自己呢?本文就提供了三个游戏引擎的对比说明,阐述了它们各自的特点,为大家选择引擎提供了参照。
我们进行Android游戏开发时选择游戏引擎是必须的,但是该如何选择呢?哪个Android游戏引擎更加适合自己呢?本文就提供了三个游戏引擎的对比说明,阐述了它们各自的特点,为大家选择引擎提供了参照。
如果不是想帮助作者解决一大堆兼容性问题的话还是不要使用这个引擎,我在上面浪费了1天半,就只是为了把实例程序跑起来。开始还以为是我水平 菜,结果一堆人没跑起来,和我一样都是黑屏。虽然它文档做得好但我还是放弃了,本来Android平台兼容性就是老大难,在来个半吊子的引擎我可没本事搞 定。
2、AndEngine
现在用的是这个引擎,虽然没有什么文档,但实例多,论坛活跃,精灵、粒子效果、XML地图、物理系统&&游戏需要的基本都有,可以满足我的需要了。
这个引擎很牛,作者的BenchMark测试在Hero上比AndEngine快了好几倍,并且前两个使用的Box2D的Wrapper都是用 这个作者写的改的。Ronkon的图形库也是基于这个的,但美中不足的就是,这个引擎是3D的,并且比较偏底层,需要自己实现不少东西,所以我还是选择先 使用AndEngine,以后有需要再看看libGDX。
当然还有Cocos2D,iPhone上比较流行的引擎,它也有Android版,这个没怎么了解也就不太清楚了。
本文链接:/abased-445558.htm
【编辑推荐】
【责任编辑: TEL:(010)】
关于的更多文章
libGdx是一个跨平台的2D/3D的游戏开发框架,它由Java/C/C++语言
既然强大的Android Studio来了,有什么理由不去用呢?
讲师: 24人学习过讲师: 68人学习过讲师: 133人学习过
Docker是一个轻量级虚拟机,也是一种Linux容器,它突
苹果在2014WWDC上发布的新编程语言Swift相信牵动着大
在Android应用程序中,可以配置Activity以四种方式来
在我的第一本书――《3D游戏开发大全》中,我们曾经对3D游戏开发完成了一次犹如探索原始丛林般的旅程:首先,我们对3D游戏产业进
Windows Phone专家
Android开发专家
51CTO旗下网站西西软件下载最安全的下载网站、值得信赖的软件下载站!
您的位置:
→ 学习Android 需要哪些工具 Android 2.2快速入门指南
这是前段时间用于公司Android入门培训的资料,学习Android三周时间收集整理的,时间仓促,希望能对像我这样还没入门就直接上项目的人一点帮助& :)
  一、&&&&&&&&&&&& 环境配置和安装(Android2.2)
  参考文章:
  1.1&&&& JDK
  1.2&&&& SDK
  下载地址:/android/android-sdk_r06-windows.zip
  1.3&&&&
3.5 (Galileo)
  下载地址:
  1.4&&&& ADT 0.9.7
  下载地址:/android/ADT-0.9.7.zip
  1.5&&&& 安装
  依次下载,按照文章步骤安装即可,注意安装SDK时,需要如下设置下:
      &
  不然更新不下来,那个链接地址被墙了。
&  二、&&&&&&&&&&&& Android系统架构
    2.1&& Linux内核(Linux Kernel)
    * Android运行在linux kernel 2.6之上,但是把linux内受GNU协议约束的部分做了取代,这样在Android的程序可以用于商业目的。
    * Linux 内核是硬件和软件层之间的抽象层。&&
    2.2中间件
    * 中间件包括两部分:核心库和运行时(libraries & Android runtime)
    * 核心库包括,SurfaceManager 显示系统管理库,负责把2D或3D内容显示到屏幕;Media Framework 媒体库,负责支持图像,支持多种视频和音频的录制和回放;SQlite ,一个功能强大的轻量级嵌入式关系数据库;WebKit 浏览器引擎等。
    * Dalvik:区别于Java的是,每一个Android 应用程序都在它自己的进程中运行,都有一个属于自己的Dalvik 虚拟机,这一点可以让系统在运行时可以达到优化,程序间的影响大大降低。Dalvik虚拟机并非运行Java字节码,而是运行自己的字节码。
  2.3&& 应用程序框架(Application Framework)
    * 丰富而又可扩展性的视图(Views),可以用来构建应用程序,它包括列表(lists),网格(grids),文本框(text boxes),按钮( buttons),可嵌入的web 浏览器。
    * 内容提供者(Content Providers)使得应用程序可以访问另一个应用程序的数据(如联系人数据库),或者共享它们自己的数据。
    * (Resource Manager)提供非代码资源的访问,如本地字符串,图形,和布局文件( layoutfiles )。
    * 通知管理器(Notification Manager)使得应用程序可以在状态栏中显示自定义的提示信息。
    * 活动管理器( Activity Manager)用来管理应用程序生命周期并提供常用的导航回退功能。
  2.4&& 应用程序 (Applications)
&&&   * Android 系统会内置一些应用程序包包括email 客户端,SMS 短消息程序,日历,地图,浏览器,联系人管理程序等。所有的应用程序都是使用JAVA 语言编写的。
&  三、&&&&&&&&&&&& Android系统包说明
  android.app :提供高层的程序模型、提供基本的运行环境
  android.content :包含各种的对设备上的数据进行访问和发布的类
  android.database :通过内容提供者浏览和操作数据库
  android.graphics :底层的图形库,包含画布,颜色过滤,点,矩形,可以将他们直接绘制到屏幕上.
  android.location :定位和相关服务的类
  android.media :提供一些类管理多种音频、视频的媒体接口
  android.net :提供帮助网络访问的类,超过通常的Java.net.* 接口
  android.os :提供了系统服务、消息传输、IPC 机制
  android.opengl :提供OpenGL 的工具
  android.provider :提供类访问Android 的内容提供者
  android.telephony :提供与拨打电话相关的API 交互
  android.view :提供基础的用户界面接口框架
  android.util :涉及工具性的方法,例如时间日期的操作
  android.webkit :默认浏览器操作接口
  android.widget :包含各种UI 元素(大部分是可见的)在应用程序的屏幕中使用
&  四、&&&&&&&&&&&& Android项目工程说明
  src:&&&&&&& 存放java源代码。
  gen:&&&&&& 存放编译器自动生成的java代码,这个目录下的文件是系统自动维护的。
  assets:&存放在这个目录下的文件,无论是mp3还是图片,都会被打包到发布包中。
  res:&&&&& 资源文件目录,添加到这个目录下的文件都会在gen下的R.ava文件中显示出来;如果res下存放的资源在应用中没有使用到,那么在gen下的R.java的文件中就不会显示,那么打包的时候就不会将这部分资源打包,减少了应用的发布文件大小。
  drawable:存放图片文件,注意图片名称必须是[a-z0-9_.]组成;drawable目录下不能分子级目录,只能通过命名方法来加以区分。
  layout:存放与UI相关的布局文件,都是xml文件。
  raw:&&&&&& 直接复制到设备中的任意文件,不会被编译,可以放数据库文件。
  values:&存放字符串,颜色,数组等常量数据。可以任意命名,但是通常命名:color.xml、strings.xml、array.xml、styles.xml、dimens.xml(定义尺寸值:dimension value)
  xml:&&&&&& 任意的XML文件,在运行时可以通过调用Resources.getXML()读取。
&  参见。
& 六、&&&&&&&&&&&& 布局和容器
  6.1&& 帧布局(FrameLayout)
  放入其中的所有元素都被放置最左上的区域,无法为这些元素指定一个确切的位置。如果有多个子元素,那么后边的子元素的显示会重叠在前一个元素上。
  6.2&& 线性布局(LinearLayout)
&&&&&&&& 常用布局,子元素按行或列依次排列。
    android:layout_gravity是本元素对父元素的重力方向。
    android:gravity是本元素所有子元素的重力方向。
  6.3&& 绝对布局(AbsoluteLayout)
  可以让子元素指定准确的x/y坐标值,(0, 0)为左上角,没有页边框,允许元素之间互相重叠。
  6.4&& 相对布局(RelativeLayout)
&&&&&&&& 允许子元素指定他们相对于其它元素或父元素的位置(通过ID指定)
  6.5&& 表格布局(TableLayout)
  将子元素的位置分配到行(TableRow)中,注意不会显示边框线也不能够跨行合并单元格。
  例子:
  6.6&& 选项卡(TabWidget)
&&&&&&   
&&&&&&   例子:
  七、&&&&&&&&&&&& 常用代码
  7.1&& 在当前Activity中启动另外一个Activity
&&&&&&&&  startActivity(new Intent(this,目标Activity.class));
  7.2&& 从当前ContentView从查找控件
&    (Button)findViewById(R.id.btnAbout)
    R.id.btnAbout指控件id。
&  7.3&& 获取屏幕宽高
    DisplayMetrics dm = new DisplayMetrics();
    //获取窗口属性
    getWindowManager().getDefaultDisplay().getMetrics(dm);
    int screenWidth =&dm.widthP//320
    int screenHeight = dm.heightP//480
&  7.4&& 无标题栏、全屏
    //无标题栏
    requestWindowFeature(Window.FEATURE_NO_TITLE);
    //全屏模式
  getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,   
      WindowManager.LayoutParams.FLAG_FULLSCREEN);
  注意在setContentView()之前调用,否则无效。
&  7.5&& 注册activity
&&&&&&&& 所有用到的Activity都必须在AndroidManifest.xml中注册,否则会报空指针错误。如:&activity android:name="mon.TestView"&,注意是包名+类名。
  八、&&&&&&&&&&&& Adb命令行
  8.1&& DOS进入android-sdk-windows\tools目录
  8.2&& Linux
  登录linux命令:adb shell
  列出当前文件:ls
  删除文件:rm文件名
  8.3&& Sqlite
  登录sqlite命令:sqlite3
  8.4&& Adb命令
  列出当前有哪些活动的模拟器:adb devices
  上传文件:adb push
  安装apk文件:adb install android123.apk
  九、&&&&&&&&&&&& Apk文件破解
  9.1&& 获取apk的资源图片
&&&&&&&& 直接用 WinRAR打开,res/drawable直接拖拽出来即可。
&  9.2&& 获取xml文件信息
&&& 虽然能用WinRAR看到里面的xml文件,但是xml是经过优化的,无法直接查看,需要使用apktool工具,下载地址:。
下载apktool-1.3.1.tar.bz2和apktool-install-windows-2.2_r01-2.tar.bz2解压到同一个目录,然后把待破解的apk文件拷贝到同一目录,DOS进入该目录,输入:aapt d 91callinfo.apk 91callinfo,这里第四个参数为破解完存放的路径。
  9.3&& 反编译dex获取Java源代码
&&&&&&&& Apktool工具只能反编译成smali的中间代码文件,这里需要借助另外一个开源工具:dex2jar,下载地址:。这个工具不能直接翻译成java文件,但是可以把dex文件转换成jar文件,然后可以通过jad工具把jar文件反编译成Java源文件,如果只是看看源码的话可以用jd-gui,下载地址:
dex文件(classes.dex)可以用WinRAR从apk文件中解压出来。
&  十、&&&&&&&&&&&& 小技巧
  10.1 &&&&&&&& 使用系统的图标
&&&&&&&& 例如调用系统打电话的图标:
  &ImageView android:src="@android:drawable/ic_menu_call"
  图标名称和效果(Android1.5和1.6):
&  10.2 &&&&&&&& 让控件透明,如ImageButton
&&&&&&&& 设置android:background="@null"
&  10.3 &&&&&&&& 在layout中直接指定onclick方法
&&&&&&&& 不用手动绑定,在layout中设置android:onClick=”methodName”,methodName为对应Activity中的方法,如下格式:public void OnClickMethodName(View view){}(适应1.6以上版本)
&  10.4 &&&&&&&& 用PC键盘控制模拟器
  10.5 &&&&&&&& 进入界面就显示/隐藏软键盘
&&&&&&&& 在AndroidManifest.xml中设置activity的
&&&&&&&& android:windowSoftInputMode="stateHidden"
&  10.6 &&&&&&&& 界面可视化布局工具
&&&&&&&& 系统提供可视化布局并不好用,这里推荐一款,布局完后点生成代码即可:
&&&&&&&& DroidDraw:
  10.7&&&&&&&&& 在Eclipse中看Android的源码
&&&&&&&& 将源代码拷贝至android-sdk-windows\platforms\android-4\sources下即可。注意源码版本对应android-4文件夹,这里指Android1.6的源码。
&  十一、&&&&& Q & A
  11.1&&&&&&&&& 用模拟器调试频繁连不上,或者报emulator-5554 disconnected的错误?
&&&&&&&& &&&&&&&& Window(窗口) -& Show Views(显示视图) -& device -& view menu(视图菜单)
-& Reset adb
&  11.2&&&&&&&&& 匿名类中如何使用this?
&&&&&&&& classname(类名).this
&  11.3&&&&&&&&& 程序出错后模拟器上仅显示应用程序遇到问题将关闭怎么办?
可以从LogCat中检查错误,默认LogCat在DDMS视图中,可以通过以下方法调整到Java视图与控制台并列显示:点击Eclipse左下角,点开后在其他里面找到Android目录下的LogCat拖拽出来即可。
&  资料均来自网络,感谢这些人的分享~~
阅读本文后您有什么感想? 已有
人给出评价!
访问量多的}

我要回帖

更多关于 android 物理引擎 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信