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,问题就不存在了。
相关文章推荐
- svn 终端常用命令
- 在git hub上面写android / ios的 sample code 集合。
- Linux下MySQL源码编译安装(eg:mysql-5.6.27.tar.gz )
- android的R.java无法修改解决!
- Objective-C中的Block
- JS的作用域和作用域链
- EsayUI + MVC + ADO.NET(仓储基类)
- hadoop之partitioner编程
- 在git hub上面写android / ios的 sample code 集合。
- 关于控件的Invoke(...)方法和BeginInvoke(...)方法的区别
- GraphicsMagick在centos环境的安装
- 【转】如何实现一个malloc
- 移动端ViewPort的故事(二)
- android spinner 设置弹框和下拉方式
- 快速排序代码,熟记
- android使用appache httpclient混淆后错误排除总结
- EntropyService分析
- 触发器实现跨库同步(存储过程同步)
- [leetCode]Alien Dictionary
- javascript 如何获取return回来的对象值