簡體   English   中英

我可以在 node.js(服務器端)中運行 A-Frame 嗎?

[英]Can I run A-Frame in node.js (server-side)?

我想從數千個生成的 a-frame 模型中截取大量屏幕截圖和 export.glb。 由於我無法在沒有提示的情況下從瀏覽器保存文件,因此使用 node.js 在服務器端生成模型會很棒。

(作為一種解決方法,我可能會在瀏覽器中生成模型並將它們發布到將文件保存到磁盤的本地服務器,但如果可能的話,我更喜歡服務器端渲染)

那么,如何在 node.js 中渲染 A-Frame 模型?

嘗試使用模擬瀏覽器mocking DOM( three中是必需的,更不用說基於 DOM 的a-frame )和headless-gl用於在 node.js 中創建 WebGL 上下文。

我所做的,類似於您正在尋找的,是一個electron應用程序。

tldr:看看這個 下載, npm install; npm run start; npm install; npm run start; 並渲染屏幕截圖/將場景導出為 glb。 如果您喜歡它,請告訴我如何改進它以使其更有用。


非 tldr:

您可以使用 electron 加載a-frame網站,但使用主進程將屏幕截圖保存在驅動器上 - 因此沒有提示,並且可以自動化。

要進行渲染,您可以簡單地使用原生截圖組件創建一個包含截圖圖像的 canvas

 document.querySelector('a-scene').components.screenshot.getCanvas('equirectangular');

但不是下載 blob,而是通過渲染器將其傳遞到主進程到主 IPC 通道- 您可以將其保存在驅動器上。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM