我正在开发一款游戏,玩家可以在{strong>等距地图上拖放CCSprite
,这是使用平铺地图编辑器创建的。
要允许自动vertexZ重新排序,我在depthTest
中启用了[CCDirector sharedDirector]
的{{1}}选项。
每当更新AppDelegate
s CCSprite
时,我都会调用此函数
position
正确地重新排序精灵。
每当实例化这样的精灵时,我就像这样设置- (void)updateVertexZ:(CGPoint)tilePos tileMap:(CCTMXTiledMap *)tileMap
{
float lowestZ = -(tileMap.mapSize.width + tileMap.mapSize.height);
float currentZ = tilePos.x + tilePos.y;
self.vertexZ = lowestZ + currentZ;
}
:
shaderProgram
现在,当两个精灵像这样对齐时(x是一个精灵,0是空的):
self.shaderProgram = [[CCShaderCache sharedShaderCache]programForKey:kCCShader_PositionTextureColorAlphaTest];
并从 Isometric 角度观察。它们确实正确放置。 然而,沿着第一个(最近的)精灵,可以看到1px边框 - 见图像。它是背景中的地板 - 不是很酷。
为什么这个边框可见,我怎么能摆脱它呢?