0

针对 WebGL 不成熟的情况和有些亮眼的特性,我决定用它来构建一个在线应用程序。对于那些拥有 Firefox 4 或 Chrome 的用户来说,没有问题。但是对于 Firefox 3.* 甚至 IE 6、7 等的用户,我该怎么办呢?

所以我想问一下是否有可能写一个插件/插件。当我的代码检测到不兼容时,它可以提醒用户下载/安装这个额外的组件,以使他们能够使用 WebGL 内容。

我注意到几乎所有的 WebGL 指令都只要求你安装新的、现代的浏览器来访问 WebGL 内容,但没有一个告诉你如何处理旧的浏览器。老派浏览器有办法生存吗?

非常感谢。

4

2 回答 2

2

就 IE 而言,您应该能够在 webgl 命中 chrome 时使用 google chrome 框架(您已经可以破解它以使其正常工作)。而且由于您不再需要管理员权限来安装它,因此它不应该成为太大的障碍。就 FF3 而言,我认为这不是一个长期问题,FF 用户是明智的并升级 ;-)

于 2010-10-14T10:52:25.280 回答
0

据我所知,这个问题没有简单的答案。

如果你想编写 WebGL 代码——无需更改——也可以在旧浏览器上运行,那么我只能想到 Google 的O3D 项目。不过,在这里您不会直接编写 WebGL 代码。O3D 是在 WebGL 之上实现的,但它之前的实现是基于插件的。因此,您可以在 O3D 中编写您的游戏或 3D 应用程序,并提示您的用户使用旧浏览器安装插件。

我在我的项目3DTin中实现的一个更难的解决方案是,当 WebGL 不可用时,我在软件中进行一些 3D 数学运算并将其渲染到 Canvas 2D 上。如果您的 3D 应用程序不是很复杂,它就可以工作。我的应用程序在excanvas的帮助下在所有主要浏览器上运行,包括 IE 7,8 。但是,如果您的 3D 场景很复杂,则不能选择这种方法。您可能想查看以下在 Canvas 2D 之上呈现的 3D javascript 库:

pre3d

三.js

于 2010-10-14T01:50:15.803 回答