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移植基础

*了解Android系统架构 *学习如何下载Android源码、编译及开发Android *学习如何追踪Android源码 *了解Linux内核启动流程 *了解Android启动流程 *学习如何移植外部函式库至Android源码中
  • 2015年05月21日 23:53

NDK编译Box2D_V2.2源码

  • 2011年09月08日 10:55
  • 1.96MB
  • 下载

cocos2d-android

  • 2010年05月21日 17:24
  • 7.39MB
  • 下载

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

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

关于android中box2D总结与实例

将近来学的box2D总结下,暂时没有涉及到关节,等有时间了再弄吧!这次就通过一个自己写的个实例来总结吧! 首先我得说明下这次编程的目标:在屏幕上画出若干个对象,其中有动态对象,也有静态对象,利用box...
  • HURUI123456789
  • HURUI123456789
  • 2016-08-19 10:20:38
  • 174

box2dtest.apk

  • 2010年04月22日 11:55
  • 429KB
  • 下载

Android上使用Box2d

Android上使用Box2d Box2d是一个非常优秀的开源2D物理引擎,可以模拟出非常真实的物理效果,今天我们介绍如何在Andoird下使用Box2d: 注:本文的大部分参考:...
  • htttw
  • htttw
  • 2012-05-24 23:17:47
  • 2965

Android 游戏引擎libgdx之Box2D Hello Box2D

Box2D官网 ----> 传送门 http://box2d.org/ Box2D v2.1.0用户手册翻译 ----> 传送门 http://blog.csdn.net/complex_ok/ar...
  • dyllove98
  • dyllove98
  • 2013-04-16 21:06:56
  • 2881

cocos2d-x如何添加box2d物理引擎即常见错误解决

一:引入box2d到工程中: 右击项目-》属性-》配置属性-》c/c++ -》预处理器-》预处理器定义,将里面的 CC_ENABLE_CHIPMUNK_INTEGRATION=1 改成 CC_E...
  • u012242853
  • u012242853
  • 2014-04-03 15:13:08
  • 1567

关于cocos2dx Box2D setBullet android 安卓 上面 卡的问题!!!!

我也遇到了  。 。
  • Adrianous
  • Adrianous
  • 2014-07-16 21:17:23
  • 1077
收藏助手
不良信息举报
您举报文章:Android移植的Box2D
举报原因:
原因补充:

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