Cocos2d-x 强制设置运动刚体的位置

Cocos2d-x 强制设置运动刚体的位置,第1张

概述简单说明一下背景:在物理引擎世界中有三种类型的刚体,而动力学刚体是在开始模拟物理世界的时候是不允许修改其位置的,就是绑定精灵之后,setPosition,位置是不会有任何变化的。但是,最近在做个小游戏demo的时候,就需要改变运动中物体的位置。 场景是这样的,如果小球从左向右运动到屏幕外面,我就需要将它移到屏幕左边,然后保持原来的物理状态(质量,速度等等),这样就会继续从左边运动出来。   在思考

简单说明一下背景:在物理引擎世界中有三种类型的刚体,而动力学刚体是在开始模拟物理世界的时候是不允许修改其位置的,就是绑定精灵之后,setposition,位置是不会有任何变化的。但是,最近在做个小游戏demo的时候,就需要改变运动中物体的位置。

场景是这样的,如果小球从左向右运动到屏幕外面,我就需要将它移到屏幕左边,然后保持原来的物理状态(质量,速度等等),这样就会继续从左边运动出来。

在思考和翻阅一段时间之后,发现了一个办法,用cocos引擎提供的动作就可以轻松解决!

sp->runAction(Place::create(Vec2(100,100)));


yep,用Place瞬间动作就可以完成这个效果,让物体直接设置到100,100的位置上。

那么接下来问题来了,为什么用动作可以不会有冲突完成这种艰巨的任务,即使去执行一个延时动作,它也会乖乖的动起来。。。暂时我也没整清楚,望有大神来解答

总结

以上是内存溢出为你收集整理的Cocos2d-x 强制设置运动刚体的位置全部内容,希望文章能够帮你解决Cocos2d-x 强制设置运动刚体的位置所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/web/1066791.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存