C++用opengl直接调用box2D 的debug绘图

来源:互联网 发布:佐菲奥特曼act通贬淘宝 编辑:程序博客网 时间:2024/06/14 21:24

本来用的是opengl

但是debug绘图需要freeGlut

辛苦找了半天放上了 发现和本身的重名了,怎么办的呢


后来发现自带的Render中有这么一段

#include "Render.h"#ifdef __APPLE__    #include <glut.h>#else    #include "freeglut.h"#endif#include <stdio.h>#include <stdarg.h>



原来可以直接用普通gl啊 只不过这里设置成苹果的了  

后面调用render只需要

world.SetDebugDraw(&m_debugDraw);

然后放上下面的就行了

flags += settings->drawShapes* b2Draw::e_shapeBit;flags += settings->drawJoints* b2Draw::e_jointBit;flags += settings->drawAABBs* b2Draw::e_aabbBit;flags += settings->drawCOMs* b2Draw::e_centerOfMassBit;m_debugDraw.SetFlags(flags);

m_debugDraw.DrawString(50, 50, "ok!");

记得加上
world.DrawDebugData();


另外

settings->drawShapes
之类的只是gui的名称去掉就成了

完全不需要freeglut另外吐槽下2.3自带的freeglut貌似内容不全,或者我没完全找到吧

0 0
原创粉丝点击