Android移植的Box2D

转载 2012年03月25日 22:45:36
本文介绍了移植 Box2D 到 Android 的过程,给出了具体的移植方法和设计思路。                        
简介将Box2D移植到Android上。Android的SDK是基于Java的。
JBox2D已经将Box2D移植到Java了,但在图形方面,它采用了Processing 库,我们需要做的就是将JBox2D的图形渲染部分在Android上实现。

JBox2D 分析

JBox2D Testbed 类图
设计所有的绘制都在一个 View 中完成,我们需要设计一个 View,它从 Android 的 View 类继承而来,在 onDraw 函数中完成绘制操作;
DebugDraw 是图形渲染的基类,不必修改。我们要做的主要是实现 DebugDraw 的一个子类,用 Android SDK 来实现从 DebugDraw 继承来的绘制接口。
在 AndroidDebugDraw 中实现放一个 mBitmap ,AndroidDebugDraw 先绘制到 Bitmap 上,在 View 中将该 Bitmap 贴到屏幕上。
public void onDraw(Canvas canvas) {

    /* Get bitmap object of AndroidDebugDraw*/
    Bitmap bmp = ((AndroidDebugDraw)g).mBitmap;
    /* Erase backgroud. */
    bmp.eraseColor(0);

    /* Step and draw the word */
    currentTest.step ();

    /* Paint AndroidDebugDraw's bimtap to view */
    canvas.drawBitmap (bmp, 0, 0, myPaint);

    /* repaint the screen */
    invalidate ();
}

设计类图如下所示:

屏幕截图
Project website 原文出处:
http://www.linuxgraphics.cn/physics/android_port_of_box2d.html

Android中Box2d初涉小例子

  • 2012年03月11日 13:40
  • 4.58MB
  • 下载

Android: Box2D--简单的跑跳游戏模型

  • 2012年12月02日 15:43
  • 477KB
  • 下载

Android基于box2d开发弹弓类游戏[二]-------------游戏界面的搭建&移动游戏场景

前面一讲中,我们介绍了,游戏开发的前期准备与如何创建项目。  Android基于box2d开发弹弓类游戏[一]-------------前期准备&创建项目 在这一讲中,我们介绍如何搭建游戏...
  • kaka626
  • kaka626
  • 2013年07月21日 14:17
  • 1006

Android 游戏引擎libgdx之Box2D 案例实践——弹球

参考子龙山人系列博客:http://www.cnblogs.com/zilongshanren/tag/cocos2d/ 此作者都是基于IOS的cocos2D开发,本人参考并且转化为libgdx的c...

在Android NDK中编译和使用Box2D

本文使用Windows+NDKr8编译,编译前请自行配置好相关环境变量 Box2D是一个在手机游戏开发中使用的物理引擎,本文使用NDK将Box2D移植到Android 首先去Box2D官网下载最新...

Android基于box2d开发弹弓类游戏[六]-------------移动的镜头&添加目标

九.移动的镜头 子弹的发射已经完成了。下一个就是要增进用户体验的时候了。现在运行游戏,当子弹发射以后,我们还需要拖动屏幕才能看到子弹运行的轨迹,这样的体验是非常差的。接下来完成,移动的镜头功能。...
  • kaka626
  • kaka626
  • 2013年07月21日 14:21
  • 751

Android 游戏引擎libgdx之Box2D 案例实践——打砖块(一)

参考子龙山人系列博客:http://www.cnblogs.com/zilongshanren/tag/cocos2d/ 此作者都是基于IOS的cocos2D开发,本人参考并且转化为libgdx的c...

Android游戏开发十日通(8)- Box2D的例子和学习小结

提要       今天要学习的是cocos2dx中的Box2d物理引擎。       Box2D是一款开元的C++编写的物理引擎,起初是用于Flash的游戏开发中,随后推出了C++版本,其开发和升级工...

<转载>android box2d物理引擎示例

package com.ray.test; import org.jbox2d.collision.AABB; import org.jbox2d.collision.CircleDef; ...

Android上使用Box2d

Android上使用Box2d Box2d是一个非常优秀的开源2D物理引擎,可以模拟出非常真实的物理效果,今天我们介绍如何在Andoird下使用Box2d: 注:本文的大部分参考:...
  • htttw
  • htttw
  • 2012年05月24日 23:17
  • 2770
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Android移植的Box2D
举报原因:
原因补充:

(最多只允许输入30个字)