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

本文详细介绍了如何在Cocos引擎的小游戏开发中,利用动作功能实现物体在运动过程中的位置动态调整。通过实例演示了将物体从屏幕外移回屏幕内的操作,并解释了动作为何能够避免冲突地完成这一任务。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

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

 

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

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


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

 

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值