转发,请保持地址:http://blog.csdn.net/stalendp/article/details/8575231
Box2D中有个比较全面的测试集,使用了GUI来对Box2D进行测试,用到的框架有GLUT,GLUI等。运行效果如下:
GLUT将使用mac上自带的,而不是压缩包下的freeGlut,所以还需要编译GLUI工程。过程如下:
====================
GLUI工程的编译
====================
1) 新建一个C++的static Library工程,命名为GLUI。方法和《Box2D的编译与运行 - Hello world》中“Box2D的编译”一致。
2)新建src目录,拷入Box2D减压包下的glui目录,如下图:
3)配置编译和链接环境(目前不需要处理链接信息,因为这里处理的是静态链接库的编译)。
编译需要GL,GLU和GLUT相关头文件和动态链接库。GL和GLU分别在XCode的Framework中,GLUT在X11文件夹下。
a)头文件信息:
/System/Library/Frameworks/OpenGL.framework/Headers (包含GL和GLU头文件)
/System/Library/Frameworks/GLUT.framework/Headers (包含GLUT头文件)
因为在目前要编译的GLUI工程中,头文件引用为#include <GLUT/glut.h>等,所以我把上面的头文件分别拷贝到另外的一个目录的OpenGL和GLUI目录下。当前为:/Users/stalendp/Documents/workspace2/Box2D_v2.2.1/OpenGLLibraries.
b)动态链接库信息(动态链接库命名有规则,为libXXXX.dylib,其中XXXX为g++中“-l”的参数):
/System/Library/Frameworks/OpenGL.framework/Libraries (其中包含GL和GLU的链接库,分别为:libGL.dylib,libGLU.dylib)
/usr/X11/lib (其中包含:glut动态链接库,叫做libglut.dylib;如果安装过X11,也包含GL和GLU)
注意动态链接库的命名。
在Eclipse中的配置截图如下:
编译完成后如下(不用管理错误,只要能够生成 Debug/libGUI.a):
========================
集成Rich Test工程
=======================
1)创建一个Executable的C++工程(RichTest),把 Box2D_vxxx解压后文件夹中的Testbd的内容直接拷入src中,如下图:
2)配置编译和链接相关信息
a)编译的时候,要用到Box2D和GLUI等头文件信息(这里包含我们编译过的Box2D和GLUI信息之外,还需要GL,GLU,GLUT等)。
b)链接的时候,要用到Box2D和GLUI的链接库之外,还需要GL,GLU,GLUT等链接库(windows下还需要GDI32等)。
配置如下:
A) 编译信息的配置
B)链接信息的配置 (指定链接库的名称和搜索路径,Box2D和GLUI为工程的路径,GL,GLU,GLUT在编译GLUI中讲过,请参考上面。关于链接库的命名规则:都以lib开头; 结尾静态为.o, 动态为:.dylib 。所以链接库在文件夹中的名称为:libGL.dylib, libGLU.dylib, libGLUT.dylib, libGLUI.o, libBox2D.o; 如果名称不合理,比如libGL.2.dylib, 可以使用 ln来改名)
编译日志如下
编译完成后,工程如下:
运行如下:
相关文章:
《Box2D的编译与运行 - 自己的代码》
《Box2D的编译与运行 - Rich Test》
《Box2D的编译与运行 - Hello world》
分享到:
相关推荐
【标题】"qt-box2D-vs2008-test"是一个项目名称,表明这是一个使用Qt 4.7.1和Box2D V2.1.2库,在Visual Studio 2008环境下编译和运行的示例。Box2D是一个流行的游戏物理引擎,它允许开发者创建具有真实感的2D物理...
Box2D_Py是Python中的一个物理引擎库,它是一个基于Box2D C++库的Python绑定,用于在游戏开发、模拟和可视化中创建2D物理效果。Box2D库本身由Erin Catto开发,它广泛应用于各种2D游戏和教育软件中,因为它能够高效地...
Box2D-2.3.10-cp39-cp39-win_amd64
box2d-py-2.3.5-cp37-cp37m-win-amd64.whl
这个压缩包"box2d_py-2.3.5-cp39-cp39-win_amd64.whl.zip"包含的是Box2D的Python绑定版本,版本号为2.3.5,针对Python 3.9编译,并且适用于Windows x64架构的系统。 **Box2D引擎**: Box2D由Ernesto Pena创建,最初...
在这个“box2d小球碰撞--js代码”的项目中,开发者使用jQuery与Box2D库结合,创建了一个小球碰撞的互动场景。 首先,我们要理解jQuery库。jQuery是一个高效、简洁的JavaScript库,简化了HTML文档遍历、事件处理、...
Box2D-2.3.10-cp37-cp37m-win32
Box2D-2.3.10-cp37-cp37m-win_amd64
Box2D-2.3.10-cp39-cp39-win32
《瘸腿蛤蟆笔记38-cocos2d-x-3.2 Box2d物理引擎Ray-cast代码》 本文将深入探讨Cocos2d-x 3.2版本中Box2D物理引擎的Ray-cast(射线检测)功能。Box2D是一款广泛应用于2D游戏开发的开源物理引擎,它提供了强大的物理...
Box2D-2.3.10-cp36-cp36m-win_amd64
"box2d-py-2.3.5-cp37-cp37m-win-amd64.whl.zip" 是这个库的一个特定版本的打包文件,用于Python 3.7 (cp37)平台,并且是为64位(amd64)的Windows操作系统编译的。`cp37m`表示它是针对Python 3.7的“精简”...
Box2D 2.3.0 用户手册-中文版知识点总结 Box2D 是一种开放源代码的物理引擎,用于模拟2D刚体和碰撞检测。下面是根据 Box2D 2.3.0 用户手册-中文版生成的知识点总结: Chapter 1 导言 1.1 关于 Box2D * Box2D ...
《Cocos2d-x与Box2D整合:打造生动的游戏物理世界》 在游戏开发领域,Cocos2d-x和Box2d是两个至关重要的工具。Cocos2d-x是一款强大的开源2D游戏引擎,而Box2D则是一个广泛使用的2D物理模拟库。将这两者结合使用,...
Box2D-2.3.10-cp38-cp38-win32
Box2D-2.3.2-cp38-cp38-win32
box2d-wasm Box2D编译为WebAssembly。...与现有的box2d.js软件包相比: box2d.js box2d-wasm旨在支持Box2D v2.4.0 +和TypeScript。 与box2d.js比较 项目目标 在这个monorepo中开发 参见README.dev.md 。
Box2D-2.3.10-cp38-cp38-win_amd64
《Box2dDemo》是基于Cocos2d-js框架实现的一个物理引擎示例项目,它展示了如何使用Box2d库来模拟2D物理世界。Box2d是一个强大的开源物理引擎,广泛应用于游戏开发,可以创建复杂的动态场景,如碰撞检测、重力影响等...