"CCTMXLayer uses a CCSpriteBatchNode for its rendering, you can change the shader of this node however it will apply to all your tiles as they are using the same texture.
I do not think there is functionality at present to modify the shader on a per CCSprite basis when part of a CCSpriteBatchNode."
Thanks to cocojoe from : http://www.cocos2d-iphone.org