原图是这样的

##截屏之后一片灰暗
源码如下:
capture: function () {
var target = this.captureAll ? cc.director.getRunningScene() : this.node._sgNode;
var width = Math.floor(document.getElementById("GameCanvas").clientWidth);
var height = Math.floor(document.getElementById("GameCanvas").clientHeight);
// var renderTexture = cc.RenderTexture.create(width,height, cc.Texture2D.PIXEL_FORMAT_RGBA4444, gl.DEPTH_STENCIL);
//var renderTexture = cc.RenderTexture.create(width,height, cc.IMAGE_FORMAT_PNG, gl.DEPTH_STENCIL);
var renderTexture = cc.RenderTexture.create(width,height,cc.Texture2D.PIXEL_FORMAT_RGBA8888, gl.DEPTH_STENCIL);
renderTexture.begin();
renderTexture.beginWithClear(0,0,0,0)
target.visit();
renderTexture.end();
var canvas = document.createElement('canvas');
var ctx = canvas.getContext('2d');
canvas.width = width;
canvas.height = height;
if (cc._renderType === cc.game.RENDER_TYPE_CANVAS) {
var texture = renderTexture.getSprite().getTexture();
var image = texture.getHtmlElementObj();
ctx.drawImage(image, 0, 0);
}
else if (cc._renderType === cc.game.RENDER_TYPE_WEBGL) {
var buffer = gl.createFramebuffer();
gl.bindFramebuffer(gl.FRAMEBUFFER, buffer);
var texture = renderTexture.getSprite().getTexture();
gl.framebufferTexture2D(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, gl.TEXTURE_2D, texture._webTextureObj, 0);
var data = new Uint8Array(width * height * 4);
gl.readPixels(0, 0, width, height, gl.RGBA, gl.UNSIGNED_BYTE, data);
gl.bindFramebuffer(gl.FRAMEBUFFER, null);
var rowBytes = width*4;
for (var row = 0; row < height; row++) {
var srow = height - 1 - row;
var data2 = new Uint8ClampedArray(data.buffer, srow * width * 4, rowBytes);
var imageData = new ImageData(data2, width, 1);
ctx.putImageData(imageData, 0, row);
}
}
var dataURL = canvas.toDataURL("image/jpeg");
var img = document.createElement("img");
img.src = dataURL;
img.style.position = 'absolute';
// img.style.clip = "rect(120px,"+width+"px,"+height+"px,0px)";
img.style.position = 'absolute';
img.style.display = 'block';
img.style.left = "0px";
img.style.top = "0px";
img.zIndex = 999;
img.id = "shareImg";
this._gShareImag = img;
document.getElementById("Cocos2dGameContainer").appendChild(img);
return img;
}
求各位大佬、精英指点迷津!

