0

好的,我已经确定了在现有 OpenGL 2.0/ES 框架之上编写自己的 WebGL 实现的可能性,这将允许在桌面和移动平台上利用基于浏览器的 WebGL 开发技术(因此提供快速应用程序开发和跨平台)。

那么,我需要实现的最低限度的与 WebGL 兼容的仿真功能是什么(即 HTML5/WebGL 画布、HTML DOM 访问、特定的 HTML 标记等)?

例如,我知道 WebGL 的 HTML Canvas 实现(我已经找到了我可以使用的几个 OSS 函数 API 定义),但是,我不知道我可能还需要实现多少浏览器/DOM 功能。我还将利用支持 JavaScript 的解释器和可嵌入的浏览器实现(全部开源)。

我确实意识到这听起来很像Ludei 的 CocoonJS,但我想推出自己的(免费)实现。

JFYI,我的开发将使用 Java/JVM 语言(例如 Java、Scala 或 Groovy)进行

4

1 回答 1

3

如果你真的想实现这一切,那么你基本上将不得不实现一个浏览器。您可以跳过的唯一部分是 UI(URL 栏、菜单、扩展程序等),即发生在页面之外的内容。

为了运行任何 WebGL 应用程序,一些应用程序将使用 Canvas 来制作纹理或完成游戏的 2d 部分。其他人将使用所有 HTML,包括所有 CSS、3DCSS 等。他们将使用 WebAudio API,有些人将使用 WebSockets、WebRTC、WebComponents、Fonts、GeoLocation、FileAPI、LocalStorage 等。他们将使用 Image 标签、网络工作者、视频等...

您可以选择一些子集,但否则您将需要一个完整的浏览器。

如果是我,我会考虑是否可以编译 Blink、Chromium 或 Firefox 并删除我不需要的部分。Blink 或 Chromium 有一个叫做“内容外壳”的东西,它只是呈现页面的部分减去所有 UI。这样一来,一旦我开始工作,当新的东西被添加到 HTML5 中时,我就可以免费获得这些功能。

于 2013-10-28T00:45:29.643 回答