我想做与https://www.mapbox.com/blog/mapbox-unity/相同的事情,但在 XWalk 视图中使用three.js。
简而言之,据我了解,mapbox 插件是一个控制器,它可以访问 Mapbox 视图的 OpenGL 上下文和 Unity 视图的 OpenGL 上下文。然后插件在 Unity OpenGL 上下文中对贴图的纹理进行渲染。
就我而言,我不使用 Unity,而是使用 Three.js。我看到了一种方法,通过将 OpenGL 上下文从 WebGL 共享到另一个活动的另一个 OpenGL 上下文。它需要:
- 通过 Blink 和 XWalk 之间的绑定从 webGL 公开 OpenGL 上下文
- 使用 XWalk Java 扩展将 OpenGL 上下文中的纹理缓冲区共享给另一个活动。
重要笔记:
- 目标平台:iOS、Android,(由于 MapboxGL 不支持 Windows(使用 D3D),因此防护将阻止在 Windows 手机等 D3D 平台上运行。)
- mapboxGL-JS 不是一个选项,因为我需要离线地图和其他原生功能。