Arduino移植Box2D
移植方式也挺无脑的,直接把box2d的官方项目挪到arduino库目录下就行,然后修改下include路径
已经移植好的版本:https://files.cnblogs.com/files/jeason1997/arduino_box2d.7z?t=1709724765&download=true
直接放到C:\Users\用户\Documents\Arduino\libraries下即可
Box2D:erincatto/box2d: Box2D is a 2D physics engine for games (github.com)
1.把include/box2d下的头文件全部挪到src下面,然后把src下面的文件夹里的cpp文件,全部挪到src根目录,跟h头文件保持在一起(其实不要也行,但为了修改方便,就放一起了)
2.批量修改,搜索所有 "box2d/ 字眼,替换为 ",即修改cpp引用的头文件为当前目录
3.然后全部文件拷贝到arduino项目目录下,就可以直接引用box2d.h来使用了
Box2D_Lite:erincatto/box2d-lite: A small 2D physics engine (github.com)
1.把include\box2d-lite下的头文件全部挪到src下面
2.批量修改,搜索所有 "box2d-lite/ 字眼,替换为 ",即修改cpp引用的头文件为当前目录
3.然后全部文件拷贝到arduino项目目录下,就可以直接引用World.h来使用了
这个是某个作者已经移植好的版本,并且将里面所有的浮点预算替换为定点数库:Pharap's FixedPointsArduino: https://github.com/Pharap/FixedPointsArduino/
并且,由于Arduboy不支持原生C++ STL,还使用了专为Arduino做的STL库:mike-matera's ArduinoSTL: https://github.com/mike-matera/ArduinoSTL
如果是要给其他平台如8266使用,则需要把所有#include <ArduinoSTL.h>的地方都删除