【问题标题】:Three.js ported to native code?Three.js 移植到原生代码?
【发布时间】:2012-01-27 00:52:26
【问题描述】:

我最近一直在玩 WebGL,我真的很喜欢 Three.js。它真的很轻量级,只是让大多数 GL 调用的处理变得更容易一些,并提供了一种快速创建球体等基本图元的方法。

现在,在本土,似乎所有框架都想要的远不止这些。诸如 Oolong、UDK、Unity、Cocos 等之类的东西。我做了一些谷歌搜索,我能找到的最接近的东西是 iSGL3D,但我并不完全相信这是正确的答案。

有没有更类似于 Three.js 的用原生 C、C++ 或 Objective-C 编写的我找不到的东西?

【问题讨论】:

  • 你看过苹果自己的GLKit吗?尽管比 Three.js 级别低,但它仍然是一个非常好的框架,可以大大简化您的图形代码。

标签: c++ objective-c c ios three.js


【解决方案1】:

您只需要一个严格的图形引擎,与 OpenGL 的方向相同(与 DirectX 相比,它再次想要更多)。我建议Ogre3D for iPhone 因为Ogre3d 背后的理念是成为一个严格的图形引擎。

最近想到的另一个是MoSync mobile sdk,它在各种平台上提供出色的OpenGL 支持(尽管有限;以保持可移植性)。

如果您对加载着色器和让图形引擎管理其余部分更感兴趣,我会选择适用于 iPhone 的 Ogre3D。

您总是可以主动(如果您当然有时间)自己编写或从这里提到的开始!

或者您可以在 C++ 编辑器中使用 JavaScript 引擎(例如 JSAPI),然后在其上移动 three.js。这很棒,因为您只需更新 JSAPI 和 Three.js 而不会破坏功能,并且您的 C++/JSThree 引擎将保持最新状态且维护最少。

当然只是一些想法!

【讨论】:

  • 食人魔似乎比 iSGL3D 更笨重:(
  • @slf:是的。虽然从长远来看,随着 OpenGL ES 2.0 成为移动平台的标准,新一代和未来几代设备(tegra > 2、A5 > 等)将更适合。
  • 食人魔...非常非常糟糕的体验。它的安装是一团糟(我已经尝试过 Fedora,它可能是最糟糕的软件包安装 evar),甚至它的文档也不完整/最新/准确/nooby-friendly。
  • 在 Ogre3d 或 C/C++ 图形引擎上的跳跃需要修补和重新布线。这是游戏开发的本质所期望的。也许你可以提交一个 Fedora 端口路径到项目。这对其他人会有帮助。
【解决方案2】:

虽然我也希望看到适用于 iOS 的 three.js 的移植版,但最近偶然发现了 iSGL3d (http://isgl3d.com/)。

这个项目提供了一种简单的、封装的方式来通过代码构建一个操纵 opengl 场景图。与 cinder 等一些创造性的编码框架不同,iSGL3d 来自纯 Objective C。

对我来说还不错。

【讨论】:

  • 这不正是我在问题中所问的吗?
  • +1 表示 libcinder,cinder::gl 与我所说的很接近,但对我的口味来说还是有点牛逼
【解决方案3】:

经过更多搜索后,我发现了一个看起来很有希望的stripped down version of SIO2 called GFX

【讨论】:

    【解决方案4】:

    如果您正在寻找严格的易用性,我强烈推荐Panda3D。它是跨平台的(Windows、Unix、Mac),非常易于使用,拥有丰富的文档,以及围绕它的一个不错的社区。​​p>

    【讨论】:

      【解决方案5】:

      您也可以试试Ejecta。他们刚刚添加了 WebGL/three.js 支持。

      https://github.com/phoboslab/Ejecta/tree/next

      【讨论】:

        【解决方案6】:

        这里是 C++ 的 3 端口:https://github.com/jdduke/three_cpp

        核心 - 75% 完成(TODO:变形目标、阴影、插件支持)

        额外内容 - 完成 5-10%(待办事项:几乎所有内容)

        示例 - 完成 25%(TODO:涉及变形目标的示例)

        【讨论】:

          【解决方案7】:

          Three_cpp 不错,不过三年前就停止更新了。不支持2012以下的VS版本。

          Ogre 是另一个不错的选择,和 Threejs 的逻辑很相似:) 并且官网提供了非常详细的教程,使用方便!

          【讨论】:

            猜你喜欢
            • 2017-12-21
            • 2015-08-20
            • 2011-08-30
            • 1970-01-01
            • 1970-01-01
            • 2014-03-14
            • 2011-04-29
            • 2015-07-15
            • 2011-01-15
            相关资源
            最近更新 更多