Tile maps showing artifacts when moved and I cannot find a solution


#1

I am using cocos2d’s CCTMXTileMap along with a tile map made in Tiled but I cannot seem to prevent artifacts from showing. I have looked around for a fix but nothing seems to help.

What I have tried:

  • I have applied extrusion to tiles to try and fix the problem; it did fix the black lines that were showing but it did not prevent all artifacts from appearing intermittently.
  • I read that setting the director’s projection to 2D in the past helped some people but it seemed to have no effect (pDirector->setProjection(kCCDirectorProjection2D);).
  • I also tried setting CC_FIX_ARTIFACTS_BY_STRECHING_TEXEL (in ccConfig.h) to a value of 1; however, this had no effect.

Extruding the tiles fixes undesired black lines which can be seen if you compare the linked images below named “No_Extrusion_Applied” and “Extrusion_Applied”; however, this does not prevent artifacts from making intermittent appearances, which can be seen in the below image named “Extrusion_Applied” (this happens with all tiles but it is less obvious with some, although it does cause your eyes to hurt because of it).

NOTE: If you plan on suggesting using the “Extrude” feature on TexturePacker or using the spritesheet-artifact-fixer.py tool - they both just extrude the tiles which is what I have already tried via multiple methods including using both of those tools.

+Images (The top image is the original state and any images below it are moved states)+
No Extrusion Applied: http://i884.photobucket.com/albums/ac44/furinyx/No_Extrusion_Applied.png
Extrusion Applied (you will want to zoom in at least 150% to make it more noticeable): http://i884.photobucket.com/albums/ac44/furinyx/Extrusion_Applied.png

P.S. The add file option for this thread doesn’t appear to be allowing me to add files.

Thank you in advance for any help you provide.

EDIT:
I was applying anti-aliasing to the tiles and I found that removing anti-aliasing stopped the majority of this (although I get what seems to be a dithering effect on the left-edge of each tile and the problem still occurs very infrequently when moving diagonally); however, the movement appears more jittery when moving diagonally without anti-aliasing. Either way, it does not look smooth or render as it should while layer or camera movement occurs (and the tiles still look blurry during movement too).
If anyone comes up with a solution to have movement run smoothly while keeping tile quality during movement, please post a response (even if it is months from now). Until then I will live with how it is as I do not have time to waste making my own tile map generator at the moment.