如何在cocos2d-x项目中包含Box2d?
在cocos2d-x v3.13.1中,如果我只想使用Box2d(而不是集成的花栗鼠物理),我所要做的就是:如何在cocos2d-x项目中包含Box2d?,cocos2d-x,cocos2d-x-3.0,cocos2d-x-3.x,Cocos2d X,Cocos2d X 3.0,Cocos2d X 3.x,在cocos2d-x v3.13.1中,如果我只想使用Box2d(而不是集成的花栗鼠物理),我所要做的就是: #include <Box2d/Box2d.h> #包括 但是升级到v3.17之后,它就不工作了。相反,有一个错误是: 词法或预处理器问题:找不到文件 如何将Box2d包含在内而不引起太大的麻烦?我的项目是跨平台的(iOS和Android),因此,我不必为每个平台都制定单独的步骤,我正在寻找像我以前使用3.13一样简单的东西——只需键入#include等。以下说明仅适用于
#include <Box2d/Box2d.h>
#包括
但是升级到v3.17之后,它就不工作了。相反,有一个错误是:
词法或预处理器问题:找不到文件
如何将Box2d包含在内而不引起太大的麻烦?我的项目是跨平台的(iOS和Android),因此,我不必为每个平台都制定单独的步骤,我正在寻找像我以前使用3.13一样简单的东西——只需键入#include等。以下说明仅适用于Android 首先,对于非标准库包含,不要使用
#include
,而是使用
简单的引文
为了回答您的问题,它未被识别的原因是因为链接器
不知道在哪里可以找到Box2d头文件
只需打开您的Android.mk文件,该文件应位于YourProjectRoot/proj.Android/app/jni/Android.mk
在文件顶部添加以下行:
$(调用导入添加路径,$(本地路径)/../../../../cocos2d/external/Box2D/include)
现在一切都应该正常了就这么简单:)
我假设如果您使用的是Box2d,您不会想使用花栗鼠,因此请确保通过将-DCC\u ENABLE\u Chipmunk\u INTEGRATION
标志设置为0
来禁用它。您可以在相应的Application.mk
文件中找到此标志