如何在 javascript 中获取 gltf 模型的屏幕截图?

how to get screenshot of gltf model in javascript?

我正在使用 AR.js 和 React 制作 AR 网络应用程序。 由于AR.js与A-Frame有关,所以它使用A-Frame使用<a-gltf-model>组件渲染3D模型。

我想制作一个功能,将最喜欢的 3D models(gltf models) 保存为屏幕截图。

如何获取javascript中gltf模型的截图?

您可以将 A-Frame 的 <canvas> 元素的当前状态保存到图像中。请参阅 How To Save Canvas As An Image With canvas.toDataURL()?,或(在最简单的情况下)如下所示:

var canvas = sceneEl.canvas;

// here is the most important part because if you dont replace you will get a DOM 18 exception.
var image = canvas.toDataURL("image/png").replace("image/png", "image/octet-stream");  

window.location.href=image; // it will save locally