cocos creator镜头跟随角色移动

我之前也实现了这个功能,实现方法是角色移动到哪儿,镜头就setPosition到相同的位置,但此举实在不够优雅,于是在网上寻找更好的方法。

在论坛里我看到了cc.follow这个方法,下面为它的用法:

/*cc.follow(第一个参数为cc.Node,第二个参数可选:cc.Rect),返回cc.Action*/
Camera.node.runAction(cc.follow(cc.Node));
//camera执行动作跟随node
Camera.node.runAction(cc.follow(cc.Node,new cc.Rect(-10,-10,20,20)));
//node在Rect的矩形范围内镜头不跟随移动,将要出范围时镜头跟随移动

以上为我从网上找到的cc.follow的使用方式,但并不实用。。。后来注意到node和camera是有层级关系,于是我把node设为camera的下层,然而还是不行。

但是这引起了我的思考,子节点能不能跟着父节点移动呢?

我想的是将camera设为node的子节点,移动角色(node)时,子节点(镜头)跟着移动。

果然,,,成功了。

那么解决方式将camera拖为node的子节点。不需要给camera添加脚本,镜头就能跟着node移动。

 

另外,如果有人解决了cc.follow的问题,欢迎前来指教。

另外附上不优雅的解决方式在正常的层级中,为player添加脚本(加入属性:camera),在角色移动时镜头也移动

//镜头跟随角色移动
this.camera.node.setPosition(this.node.x,this.node.y);

 

Cocos Creator是一款基于Cocos2d-x游戏引擎的游戏开发工具,它提供了丰富的API和功能来开发移动端和Web游戏。在Cocos Creator中实现路径点移动,可以通过以下步骤进行操作: 1. 创建路径点:在场景中创建一个节点作为路径点,可以使用Sprite组件来可视化路径点。通过设置节点的position属性,可以确定路径点在场景中的位置。 2. 创建移动对象:在场景中创建一个需要进行路径移动的对象,可以是玩家角色、敌人或其他游戏元素。添加相应的脚本组件来控制对象的移动。 3. 设置路径点移动逻辑:在移动对象的脚本组件中,设置路径点移动的逻辑。可以使用定时器或帧事件来控制移动对象的移动速度和路径点的切换。 4. 实现路径点的移动:在移动对象的脚本组件中,使用Cocos Creator提供的移动方法(例如cc.moveTo、cc.moveBy)来实现从当前位置到下一个路径点的移动。 5. 路径点的切换:在移动对象的脚本组件中,根据移动对象当前位置和路径点之间的距离,判断是否需要切换到下一个路径点。当移动对象接近当前路径点时,通过代码设置移动对象的目标位置为下一个路径点的位置。 6. 循环移动:根据游戏需求,可以设置移动对象是否需要循环移动路径点。如果需要循环移动,当移动对象到达最后一个路径点时,将其目标位置设置为第一个路径点的位置。 通过以上步骤,在Cocos Creator中可以实现路径点移动的效果。可以根据具体的游戏需求进行调整和扩展,添加更多的逻辑和动画效果。
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值