Cocos2dx版本3.2
近期在尝试自己实现一个横版动作游戏,使用TiledMap Editor作为地图工具,Tile大小为32 * 32,有将作为地图的TiledMap对象根据玩家位置当前进行位移的需求。
问题如下:
调试时我将窗口大小和分辨率都设为800 * 600,在位移TiledMap对象时,发现随着其运动,会出现渲染错位的问题:
因目前只是x轴方向运动,所以目前的情况是这样:地图位移到特定的位置时,两列Tile之间出现了大约1像素宽的缝隙,缝隙错位渲染上了其他Tile的部分贴图(明显看到不应该存在的竖线,并且属于其他Tile的贴图)。甚至于在某些特殊窗口大小(就比如800 * 600时)在TiledMap对象还没有发生运动的时候,错位就已经发生了。
昨晚经过调查,发现与显卡有一定关系,我使用N卡加速时会存在这个问题,但是用集成显卡加速时,虽然有的地方会出现多渲染一列像素的问题,但是不会有使用N卡加速时明显的错位缝隙,但是渲染性能明显不如独立显卡。
因逻辑运算、人物动画等细节基本完全是自己重新实现的,cocos2dx引擎我只用来做基本的场景切换、少量Action和渲染,所以这个问题并没有影响到游戏本身的逻辑,但是看上去有一些诡异,强迫症不能忍
。
不知大家有没有遇到过这个问题,如果想解这个问题应该怎么做呢?是应该修改Cocos2dx的一些渲染参数,还是修改显卡的渲染配置,还是修改TiledMap Editor的地图属性呢?
谢谢大家!