cocos2d-x开发中使用tilemap(斜45度)遇到的问题

来源:互联网 发布:男士双肩包推荐知乎 编辑:程序博客网 时间:2024/05/16 16:23

1. 问题。

在斜45度地图中,加入对象,当从使用cocos2d-x 从地图中读取对象时,对象的y坐标与地图文件(tmx)中的不符。

2.原因及 一种解决方案。

因为tilemap中的原点坐标在左上角。而cocos2d-x是以左下角为原点坐标。程序在读取的时候自动转换了。

为了能够计算出当前对象在地图中的位置,将y坐标转换成tilemap中的坐标。

yT = 地图高度 - yC - 对象的高度。

3. 引申问题1。

由对象的位置如何计算出对象在地图中的位置(块坐标)。

根据实验得出:块坐标 = 坐标 / 块的宽度(较小的一边)

4. 引申问题2。

如何由块坐标计算出当前块的像素坐标。

使用cocos2d-x中的层TMXLayer的positionAt方法。

0 0
原创粉丝点击