关于摄影机组件和侦听冲突的问题

这个不知道是不是摄影机的bug,或者是我使用错误。
场景上有三个node:map,role,camera(里面放置摄影机组件,并在targets中添加了map和role)

map和role上分别添加侦听器,侦听TOUCH_MOVE事件

在map的回调中移动camera的x,实现拖拽摄影机的功能(map和role的位置从A点移动到B点)
但是这时,在role原来的位置(A点)点击,能够触发role的回调,新的位置(B点)并不能触发touch的回调

实际上role和map的位置没有变更,可能跟camera组件的实现原理有关

那么问题来了,如果使用了camera组件,是不是就不能实现和场景上物件的互动了
如果改变了camera坐标的同时又改变map和role的坐标,不就失去camera组件的性能优势了。

不知道有没描述清楚问题,求解答?

  • Creator 版本号:1.5.0
  • 目标平台:(Web)

请参照一下这个帖子~:
http://forum.cocos.com/t/topic/47817/4

上面那个帖子是触发后修正坐标
this.node.on(cc.Node.EventType.TOUCH_START, func, this);
那这样的侦听,在怎么在触发前修正坐标?

上次我也报道个关于摄像头的bug,就是A和B,A作为背景不移动,B是运动的地形,没用摄像头之前,我是采用移动B坐标的方式,这个时候A下面的子node可以与B下面的子node发生碰撞,但是把B改成随着摄像头移动之后,碰撞不再发生了。

确实会有这个问题
@jjyinkailejj 帖子里的问题应该是一样的
这个在1.6会修复

碰撞的问题暂时可以使用这个帖子的办法解决[quote=“jjyinkailejj, post:2, topic:47844, full:true”]
http://forum.cocos.com/t/topic/47817/3
[/quote]

摄影机中添加事件侦听暂时没想到什么办法来解决,坐等1.6

我还是继续自己移动坐标吧

这个在那个 pr 里也有修复的,有尝试吗

没尝试,不是很明白怎么处理,能详细说明一下吗?

就是这个 pr 可以解决你的问题 https://github.com/cocos-creator/engine/pull/1720/files
你可以用外部引擎的方式拉取最新代码试试,也可以等下一个版本的发布修复

好的,谢谢了