python box2d 教程_python下的Box2d物理引擎的配置

I come back!

由于已经大四了,正在找工作

导致了至今以来第二长的时间内没有更新博客。向大家表示道歉

前言

Box2d物理引擎

Box2d是一款开源的2d物理引擎,存在很多的版本,C++,Java,html5和python等等

著名的愤怒的小鸟就是使用了这款物理引擎进行开发的

目前也有很多的2d游戏引擎内置了对Box2d物理引擎的支持,比如cocos2d,HTML5的2D游戏引擎FLAG

Box2d物理引擎内部模拟了一个世界,你可以设置这个世界里的重力,然后往这个世界里添加各种物体,以及他们的一些物理特性,比如质量,摩擦,阻尼等等

在设置完这个世界的更新频率后,box2d会为你计算每次更新后的每一个物体的所在的位置和旋转角度。

由于Box2d本身是不负责渲染,我们在使用box2d物理引擎的时候,实际上是将我们在项目中需要绘制出的精灵进行坐标变换后,变成box2d内部世界中的一个物体,由

box2d物理引擎计算这个物体每次更新后位置及选择角度,然后我们在获得这个位置和角度并进行坐标变换,变成我们需要绘制的精灵的位置,并将其绘制出来

这个是我以前在windows phone做的一款游戏 image bird (http://www.dwz.cn/nD94d)

里面用的就是box2d物理引擎,感兴趣的可以下下来,玩一玩。

image

一、配置环境

windows7

python2.7

二、配置方法

1、下载python版的box2d物理引擎,大家解压缩之后可以发现里面有一个setup.py的文件。

(http://code.google.com/p/pybox2d/wiki/BuildingfromSource 这里讲解了windows,linux,os X下的配置

不过是英文的,大家可以自己阅读尝试配置一下)

2、下载MinGW并安装,并将它的路径下的bin文件添加到环境变量中(我这里是C:\MinGW\bin)

(MinGW(Minimalist GNU for Windows),又称mingw32,是将gcc编译器和GNU Binutils移植到Win32平台下的产物,包括一系列头文件(Win32API)、库和可执行文件。)

3、下载MSYS并安装

(MSYS是一个小型的GNU环境,包括基本的bash,make等等)

4、下载安装SWIG并安装,将它的路径添加到环境变量中(我这里是“D:\swigwin-3.0.2\swigwin-3.0.2”)

(SWIG是一种简化脚本语言与C/C++接口的开发工具。简而言之,SWIG是一个通过包装和编译 C 语言程序来达到与脚本语言通讯目的的工具)

5、下载python2.7并安装,将它的路径添加到环境变量中(我这里是“D:\Python27”)

(这里有一个让环境变量立刻生效的方式就是打开cmd ,

注意这是我们键入echo %PATH% 显示出的结果是没有刚刚我们添加的环境变量的,

我们输入set PATH=C,然后关闭cmd,再次打开的时候,

键入echo %PATH% 就可以发现刚刚添加的环境变量已经显示了出来)

6、打开python路径下的\Lib\distutils\,新建一个distutils.cfg的文件(我这里是“D:\Python27\Lib\distutils”)

内容为:

[build]

compiler=mingw32

[build_ext]

compiler=mingw32

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Box2dPython 版本是 PyBox2D。PyBox2DBox2d 的一个 Python 绑定,它允许您在 Python 中使用 Box2d 游戏引擎。它可以帮助您快速和方便地创建 2D 模拟和物理仿真,并且可以在各种 Python 平台上运行,例如 Pygame。 ### 回答2: Box2d是一个用于物理仿真的游戏引擎,Python版本也被称为PyBox2D。PyBox2D基于C++版本的Box2D引擎,并包装成适用于Python编程语言的库。 PyBox2D提供了一系列的类和函数,供开发者在Python环境中进行物理仿真的开发。它支持在2D平面上进行刚体的碰撞检测、运动模拟和力场模拟等操作。通过PyBox2D,开发者可以利用物理规则和算法,模拟现实中的物理效果,例如重力、摩擦力和弹力等。这使得开发者可以轻松实现真实物体之间的交互、碰撞与运动。 PyBox2D可以用于开发各种类型的游戏和应用程序,如平台游戏、物理游戏、仿真软件和物理演示等。开发者可以通过自定义物体的形状和属性来创建不同类型的刚体,同时还能够为刚体添加力和扭矩,实现真实的物理效果。另外,PyBox2D还提供了碰撞回调函数,以便开发者可以在碰撞发生时执行自定义的代码。 与C++版本相比,PyBox2D的优势在于使用Python语言编写代码更为便捷灵活,同时拥有Python生态系统的强大支持。开发者可以利用Python的特性和库来辅助开发,如numpy用于数学计算、matplotlib用于可视化展示等。此外,PyBox2D还提供了方便的文档和示例代码,帮助开发者更快地上手和使用。 总之,PyBox2D是一个功能强大且易于使用的物理仿真引擎,通过它,开发者可以使用Python语言轻松实现2D物体的碰撞检测和物理模拟。无论是对于游戏开发者还是对于对物理仿真感兴趣的人来说,PyBox2D都是一个不错的选择。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值