您的位置:首页 > 其它

Box2dFlash应用坑——刚体始终锁定旋转角度

2015-11-26 14:45 218 查看

Box2dFlash应用坑——刚体始终锁定旋转角度

标签(空格分隔): Box2d

刚开始接触Box2d,遇到了一个问题:模拟自由落体运动时,物体跌落后多数情况下会发生自身旋转,但是却是这样的:



发现这个问题后感觉参数设置可能和官方的Demo不同,于是做了如下尝试:

查看fixedRotation是不是被设置为了true;

查看angle是不是被改写了;

修改angle的角度;

核对world信息的设置;

核对构造刚体的代码;

以上努力都没有结果。

因为这个box2d世界中的刚体是根据配置文件生成的,配置文件和读取配置文件的代码都没有经过完整测试,所以需要排除可能存在都错误。

接下来让世界中对刚体一部分从配置文件构造另一部分采用了Demo中的代码,发现从配置文件中生成的仍然存在问题,而Demo代码构造出的是好的。

这样排除了world的问题,可以确定问题出在配置信息和根据配置信息构造刚体的功能中。在完全采用了和Demo一样带构造途径后,问题仍然存在,但配置参数已经检查过多次,没有发现错误,问题卡住没有任何进展了。期间怀疑过b2Fixture不同的产生方法的异同,担心没有做中心(中心和重心混淆了)设置,后来发现多虑了。

最后问题的解决得益于查询box2d重心的设置,但是Demo中的代码并没有做重心设置,为什么和我的效果不同呢?这时一个被忽略的参数引起了注意:密度。经过检查虽然密度设置不为0,但是读取配置信息过程中出现了错误,实际中该参数一直是0。修改完这个bug,问题就不存在了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: