CocosCreator 碰撞识别 基于Group的碰撞识别 如何操作 办法

本文探讨了在Cocos3中如何利用碰撞组(Group)进行碰撞识别。当需要一个物体与多个碰撞组交互时,关键在于理解碰撞器的group数值实际上是2的group次方。例如,要识别编号为3的碰撞器,应使用2的3次方,即8作为识别数字。这种方法有助于在碰撞事件中准确区分不同的碰撞组。
摘要由CSDN通过智能技术生成

Cocos3 碰撞组识别问题

有时候我们需要一个物体和多个其他碰撞组碰撞

需要在碰撞事件中进行区分

但是如果我们是用group来进行区分的时候

这个group对应的数字不是group的数字,2的group的次方

比如对于编号为3的碰撞器

那么他的识别的数字应当是2^3 也就是8 才可以被识别

 如图所示

 这样就可以区分了

注意是次方 而不是直接用数字

 /**离开碰撞 */
    onEndContact(selfCollider: Collider2D, otherCollider: Collider2D) {
        if (otherCollider.group == 16) {
            //如果处于可放置状态,但是进入了别人的碰撞体,那就加入到数组
            if (this.NowContactUnits.indexOf(otherCollider.node) >= 0) {
                let node: Node;  //要移除的对象
                node = otherCollider.node
                //下面这句话 就是让这个数组元素中 条件通过的 就通过 然后先形成一个新的数组 再赋值
       
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值