【发布时间】:2014-11-29 09:11:28
【问题描述】:
我有一个像下面这样的 three.js 场景:
var scene = new THREE.Scene();
var camera = new THREE.PerspectiveCamera(75, window.innerWidth/window.innerHeight, 0.1, 1000);
var renderer = new THREE.WebGLRenderer();
renderer.setSize(window.innerWidth, window.innerHeight);
document.body.appendChild(renderer.domElement);
var geometry = new THREE.BoxGeometry(1,1,1);
var material = new THREE.MeshBasicMaterial({color: 0x00ff00});
var cube = new THREE.Mesh(geometry, material);
scene.add(cube);
camera.position.z = 5;
var render = function () {
requestAnimationFrame(render);
cube.rotation.x += 0.1;
cube.rotation.y += 0.1;
renderer.render(scene, camera);
};
render();
是否可以从场景中制作 2D 快照或屏幕截图并将其导出为 JPG 图像?
【问题讨论】:
-
初始化 webgl 上下文,将 preserveDrawingBuffer 标志设置为 true 并使用
yourCanvas.toDataURL()。 -
@LJ_1102 你能发个例子吗?
标签: javascript html three.js webgl