Cesium offscreen rendering with node js?
Cesium offscreen rendering with node js?
我有一个用 Cesium 渲染场景的网页。我还需要将同一场景编码为视频流,并通过使用 h264 编码的 UDP 发送。接收方只能接收视频流,不能涉及浏览器。
我想到了一个解决方案,用 Cesium 将屏幕外渲染到帧缓冲区,然后用 libav/ffmpeg 对纹理进行编码。但我不知道是否可以在没有浏览器的情况下使用 Cesium 离屏渲染(从 NodeJS 调用渲染命令)。可能吗?如何将场景渲染为纹理?
我几乎没有使用 NodeJS/Cesium 的经验。
所以,答案基本上是:没有浏览器就无法完成,因为CesiumJS使用WebGL,而后者需要浏览器具有的渲染器。
并且很难选择使用 Cesium 来使用 OpenGL 进行绘制或使用独立的渲染器。
但是,有 3 个合法选项。您可以访问 渲染器:
- 在 Chromium 嵌入式框架中。很难用。
- QtWebEngine(虽然没试过)
- 电子
Electron 恰好是一种解决方案。
我有一个用 Cesium 渲染场景的网页。我还需要将同一场景编码为视频流,并通过使用 h264 编码的 UDP 发送。接收方只能接收视频流,不能涉及浏览器。
我想到了一个解决方案,用 Cesium 将屏幕外渲染到帧缓冲区,然后用 libav/ffmpeg 对纹理进行编码。但我不知道是否可以在没有浏览器的情况下使用 Cesium 离屏渲染(从 NodeJS 调用渲染命令)。可能吗?如何将场景渲染为纹理?
我几乎没有使用 NodeJS/Cesium 的经验。
所以,答案基本上是:没有浏览器就无法完成,因为CesiumJS使用WebGL,而后者需要浏览器具有的渲染器。
并且很难选择使用 Cesium 来使用 OpenGL 进行绘制或使用独立的渲染器。 但是,有 3 个合法选项。您可以访问 渲染器:
- 在 Chromium 嵌入式框架中。很难用。
- QtWebEngine(虽然没试过)
- 电子
Electron 恰好是一种解决方案。