Do-it-yourself-fix:
def selctLayer(self, layer, notUsed=None):
TexturePool.releaseAllTextures()
self.TexPlane[0].hide()
self.textureFrames[0]['frameColor']=(1, 1, 1, 0.5)
self.currentTexLayer=layer
self.texPointFrame.setPos(self.winX-64,0,-128-(64*self.currentTexLayer))
file=str(self.currentTexLayer)+"tex.png"
if os.path.exists(path+self.saveName+"/"+file):
self.altPlane.setTexture(loader.loadTexture(path+self.saveName+"/"+file), 1)
else:
self.altPlane.setTexture(loader.loadTexture("full_mask.png"), 1)
if layer == len(self.textureFrames)-1:
self.textureFrames[layer]['frameTexture']=path+"textures/"+self.textures[0]
self.textureFrames.append(DirectFrame(frameSize=(-64, 0, 0, 64),
frameColor=(1, 1, 1, 1),
frameTexture='plus.png',
state=DGG.NORMAL,
parent=pixel2d))
self.textureFrames[layer+1].setTransparency(TransparencyAttrib.MAlpha)
self.textureFrames[layer+1].setPos(self.winX,0,-128-(64*(layer+1)))
self.textureFrames[layer+1].bind(DGG.B1PRESS, self.selctLayer,[layer+1])
self.textureForLayer.append(0)
self.TexPlane.append(self.texturePlane.copyTo(self.altTexRender))
temp_textures=Texture()
temp_textures.read('full_mask.png')
temp_textures.setFormat(Texture.FAlpha)
self.TexPlane[layer].setTexture(self.TexPlane[layer].findTextureStage('Tex1'),temp_textures,1)
self.TexPlane[layer].setTexture(self.TexPlane[layer].findTextureStage('Tex2'),loader.loadTexture(path+'textures/'+self.textures[0]),1)
self.TexPlane[layer].setZ(-1)
self.TexPlane[layer].setDepthOffset(layer)
The only change is TexturePool.releaseAllTextures() at the top of the function (line 946)
packed and fixed:
sendspace.com/file/ae0132