关于camera在地图边界检查的问题

新手学习creator,对新加入的camera想学习用一下,想问一下,camera跟随角色移动到边界,不然镜头出边界,应该怎么出来呢?

1赞

这种情况下我一般都是移动地图,
假设canvas的宽度为CW,地图的宽度为MW,并且CW==MW时正好显示屏幕中心,则CW的最大值为(MW-CW)/2,最小值为-(MW-CW)/2,如果人物的坐标为x,则地图的坐标应该为-x,但是要考虑超出边界,所以地图的坐标应该为:
-x ,当-(MW-CW)/2 <= x <= (MW-CW)/2 -(MW-CW)/2 ,当-x < -(MW-CW)/2 (MW-CW)/2 ,当-x > (MW-CW)/2
https://github.com/xianyuec/lili-the-game是一个简单的横板格斗游戏demo,使用cocos creator 1.4.0开发,里面就有将要超出边界时的检测,里面的代码很少,你可以看看。

补充一下:
还得考虑人物的宽度PW,所以公式应该是

-x ,当-(MW-CW-PW)/2 <= x <= (MW-CW-PW)/2
-(MW-CW-PW)/2 ,当-x < -(MW-CW-PW)/2
(MW-CW-PW)/2 ,当-x > (MW-CW-PW)/2

高度边界的判断 和 宽度判断相似。

谢谢你的方案和demo,我先研究一下,不过我使用cocos creator 1.5.0里新加的camera,大神要是基于这个写个demo就好了。