我即将启动一个使用交互式生成的3D内容的Web应用程序。目标是让它在浏览器中本机运行,即不允许使用Flash,只允许使用JavaScript + HTML5。
除了使用纯WebGL之外,最好使用一个能提供更高级别界面的lib。
X3DOM的方法对我来说看起来很棒 - 看起来它应该在浏览器中成为原生,并且lib将铺平道路。
但在我第一次印象之后,我不确定它是否足够轻巧。除了400kb的JS-File之外,它还会降低Firefox的速度。
我需要的功能并不多。整个场景设置可以通过“手”轻松完成。但我需要用户互动,包括找出用户点击的位置。后来我希望能够以通用文件格式加载和插入3D对象。
PS:选择的浏览器是Firefox和基于Webkit的浏览器。桌面和移动设备。我不关心IE。
PPS:是的,我知道这个问题:WebGL Framework
答案 0 :(得分:5)
X3DOM 非常棒,但如果你没有偏好,那么 Three.JS 就是我的选择
答案 1 :(得分:4)
我上周看了大多数WebGL框架,看起来几乎每一个都在300kB范围内。这对我来说太沉重了。幸运的是,我找到了lightgl.js,其中包含了28kB,MIT许可证所需的一切。
对我来说最重要的是抽象画布,着色器和纹理初始化。但是lightgl.js也有some mouse handling和model loading等。
答案 2 :(得分:2)
我认为这个决定归结为: 你想要更多的设计或程序员方法。
<X3D><Scene><Shape><Box/></Shape</Scene></X3d>
three.js:只允许通过javascript生成场景,只需设置画布就需要很多其他代码。查看此简单框示例的来源:http://stemkoski.github.com/Three.js/Template.html
两种方式都没有错,我更喜欢设计场景,然后在需要时使用js进行任何计算。