|
@@ -341,9 +341,9 @@
|
|
var width: number;
|
|
var width: number;
|
|
var height: number;
|
|
var height: number;
|
|
|
|
|
|
- //If a zoom value is specified
|
|
|
|
- if (size.zoom) {
|
|
|
|
- width = Math.round(engine.getRenderWidth() * size.zoom);
|
|
|
|
|
|
+ //If a precision value is specified
|
|
|
|
+ if (size.precision) {
|
|
|
|
+ width = Math.round(engine.getRenderWidth() * size.precision);
|
|
height = Math.round(width / engine.getAspectRatio(camera));
|
|
height = Math.round(width / engine.getAspectRatio(camera));
|
|
size = { width: width, height: height };
|
|
size = { width: width, height: height };
|
|
}
|
|
}
|
|
@@ -370,8 +370,10 @@
|
|
}
|
|
}
|
|
else {
|
|
else {
|
|
console.error("Invalid 'size' parameter !");
|
|
console.error("Invalid 'size' parameter !");
|
|
|
|
+ return;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ //At this point size can be a number, or an object (according to engine.prototype.createRenderTargetTexture method)
|
|
var texture = new RenderTargetTexture("screenShot", size, engine.scenes[0]);
|
|
var texture = new RenderTargetTexture("screenShot", size, engine.scenes[0]);
|
|
texture.renderList = engine.scenes[0].meshes;
|
|
texture.renderList = engine.scenes[0].meshes;
|
|
|
|
|
|
@@ -389,7 +391,7 @@
|
|
for (var j = 0; j < numberOfChannelsByLine; j++) {
|
|
for (var j = 0; j < numberOfChannelsByLine; j++) {
|
|
var currentCell = j + i * numberOfChannelsByLine;
|
|
var currentCell = j + i * numberOfChannelsByLine;
|
|
var targetLine = height - i - 1;
|
|
var targetLine = height - i - 1;
|
|
- var targetCell = j + targetLine * numberOfChannelsByLine;;
|
|
|
|
|
|
+ var targetCell = j + targetLine * numberOfChannelsByLine;
|
|
|
|
|
|
var temp = data[currentCell];
|
|
var temp = data[currentCell];
|
|
data[currentCell] = data[targetCell];
|
|
data[currentCell] = data[targetCell];
|