CocosCreator坐标系统详解

新建一个CocosCreator场景,会在场景中自动生成一个Canvas节点,节点Size为(640,960),Anchor为(0.5,0.5),Position为(320,480),由于Canvas为根节点这里的Position即世界坐标。

世界坐标原点,对应手机左下角。向右为x轴正方向,向上为y轴正方向。
任意node的this.node.position返回的都是相对于父节点,以父节点锚点(Anchor)为原点的坐标。

把任意点坐标转换为世界坐标

找到该点对应的父节点node,根据情况调用node.convertToWorldSpace(pos)或者node.convertToWorldSpaceAR(pos)

把世界坐标转换为节点坐标

目标节点node,根据情况调用node.convertToNodeSpaceAR(pos)或node.convertToNodeSpace(pos)

补充

Cocos自带的触摸事件,返回的是世界坐标

    this.node.on(cc.Node.EventType.TOUCH_MOVE, this.onTouchMove, this);
    private onTouchMove(event: cc.Event.EventTouch) {     
       let pos: cc.Vec2 = event.getLocation();//这里是世界坐标                  
    }

Cocos射线检测返回的点是世界坐标

        var raycastResult = cc.director.getPhysicsManager().rayCast(p1, p2, cc.RayCastType.Closest);
        if (raycastResult.length == 1) {
            //raycastResult[0].point//射线碰撞点(世界坐标)
        }
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

iningwei

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值