4

我正在尝试在 phonegap 应用程序中制作一个非常简单的 3D 模型查看器,以便在 iPhone 4 上使用。我正在使用three.js,当我制作一个简单的网站时它工作正常。问题是当我在手机上试用时,3D 对象没有出现。像立方体和圆柱体这样的简单几何形状将加载到画布上,但 obj 文件不会。

我使用 objLoader 来引入 .obj 文件,并将所有相关文件放在应用程序的同一目录中,以防万一。我认为问题可能在于在 iOS 上使用 webGL,但我不太确定。

非常感谢您的帮助。如果有人对在 phonegap 中构建模型查看器以在 iOS 中显示有任何建议,我会很高兴听到这些建议。

4

4 回答 4

1

如果您为 iphone 打包,我建议您尝试使用 XDK Intel,但对于 android 使用 AIDE Phonegap。确保只使用var renderer = new THREE.CanvasRenderer();并避免使用与 WebGL 相关的任何内容,因为除了 BB Playbook 和 BB 10 之外,大多数设备都不支持它。

于 2014-05-18T08:15:59.470 回答
1

由于目前很少有移动浏览器支持 WebGL,我选择使用画布来渲染 3D 模型。我使用名为 JSC3D的简单Web 3D 对象查看器在 iOS 上的 PhoneGap 中创建模型查看器。它可以使用 webGL,但我只是使用 2D 画布进行渲染。

我在 iPhone 4 上测试了我的应用程序,结果是模型加载需要 2 到 5 秒,当您旋转对象时,需要一些时间来重绘它,具体取决于它的复杂程度。虽然不是最令人满意的结果,但它确实完成了这项工作。我将在更高级的 Android 手机上试用它,然后我会告诉你结果。

于 2013-12-31T13:39:14.263 回答
0

我觉得IOS渲染能力比安卓好,有些场景IOS渲染好,安卓不行。

通常,移动应用程序比移动应用程序具有更多的渲染能力。我用firefox渲染了three.js obj demo,效果很好。但是当我在应用程序中使用 webview 时,它什么也没有呈现。

我制作了一个 Android 应用程序来渲染 stl 模型。首先,当我使用移动浏览器渲染场景时,它不会渲染整个场景,当我移除阴影效果时,它会渲染。然后我尝试将 webview 与 WebGlRenderer 或 CanvasRenderer 一起使用,没有用。最后我参考了人行横道的XWalkView,一个web引擎,可以作为app的插件,代替webview,我也关闭了阴影效果,渲染效果很好。

您可以参考此答案以获取更多信息。

这是渲染结果。 在此处输入图像描述

于 2016-12-02T02:06:08.280 回答
-1

你绝对不应该使用 three.js 的 WebGL 渲染器,因为它在 iOS 上不受支持。试试 Canvas 或 SVG 渲染器。

于 2013-11-10T21:33:01.167 回答