|
@@ -4927,7 +4927,8 @@ var BABYLON;
|
|
|
}
|
|
|
}
|
|
|
};
|
|
|
- Tools.DumpFramebuffer = function (width, height, engine, successCallback) {
|
|
|
+ Tools.DumpFramebuffer = function (width, height, engine, successCallback, mimeType) {
|
|
|
+ if (mimeType === void 0) { mimeType = "image/png"; }
|
|
|
// Read the contents of the framebuffer
|
|
|
var numberOfChannelsByLine = width * 4;
|
|
|
var halfHeight = height / 2;
|
|
@@ -4957,7 +4958,7 @@ var BABYLON;
|
|
|
var castData = imageData.data;
|
|
|
castData.set(data);
|
|
|
context.putImageData(imageData, 0, 0);
|
|
|
- var base64Image = screenshotCanvas.toDataURL();
|
|
|
+ var base64Image = screenshotCanvas.toDataURL(mimeType);
|
|
|
if (successCallback) {
|
|
|
successCallback(base64Image);
|
|
|
}
|
|
@@ -4983,7 +4984,8 @@ var BABYLON;
|
|
|
}
|
|
|
}
|
|
|
};
|
|
|
- Tools.CreateScreenshot = function (engine, camera, size, successCallback) {
|
|
|
+ Tools.CreateScreenshot = function (engine, camera, size, successCallback, mimeType) {
|
|
|
+ if (mimeType === void 0) { mimeType = "image/png"; }
|
|
|
var width;
|
|
|
var height;
|
|
|
//If a precision value is specified
|
|
@@ -5024,7 +5026,7 @@ var BABYLON;
|
|
|
var texture = new BABYLON.RenderTargetTexture("screenShot", size, scene, false, false);
|
|
|
texture.renderList = scene.meshes;
|
|
|
texture.onAfterRenderObservable.add(function () {
|
|
|
- Tools.DumpFramebuffer(width, height, engine, successCallback);
|
|
|
+ Tools.DumpFramebuffer(width, height, engine, successCallback, mimeType);
|
|
|
});
|
|
|
scene.incrementRenderId();
|
|
|
scene.resetCachedMaterial();
|
|
@@ -11030,8 +11032,11 @@ var BABYLON;
|
|
|
defines.push("#define UV1");
|
|
|
}
|
|
|
if (mesh.isVerticesDataPresent(BABYLON.VertexBuffer.UV2Kind)) {
|
|
|
- attribs.push(BABYLON.VertexBuffer.UV2Kind);
|
|
|
- defines.push("#define UV2");
|
|
|
+ var alphaTexture = material.getAlphaTestTexture();
|
|
|
+ if (alphaTexture.coordinatesIndex === 1) {
|
|
|
+ attribs.push(BABYLON.VertexBuffer.UV2Kind);
|
|
|
+ defines.push("#define UV2");
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
// Bones
|
|
@@ -41446,6 +41451,7 @@ var BABYLON;
|
|
|
for (var _i = 0, _a = this._instanceDataParts; _i < _a.length; _i++) {
|
|
|
var part = _a[_i];
|
|
|
if (part) {
|
|
|
+ part.dataBuffer.pack();
|
|
|
for (var _b = 0, _c = part.dataElements; _b < _c.length; _b++) {
|
|
|
var el = _c[_b];
|
|
|
minOff = Math.min(minOff, el.offset);
|