首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用于三维web开发的three.js与libgdx

用于三维web开发的three.js与libgdx
EN

Stack Overflow用户
提问于 2012-05-30 17:04:51
回答 1查看 3.2K关注 0票数 7

Libgdx主要关注安卓系统,是用java编写的,但显然它可以在浏览器(webGL?)上运行应用程序。Three.js是一个非常令人印象深刻的javascript 3D库,它使用WebGL(或2d画布)进行渲染。到目前为止,我还没有看到这两个库之间的比较,因为它们有不同的焦点,但是我想知道它们的不同之处,一个库可以做什么而另一个库不能。

EN

回答 1

Stack Overflow用户

发布于 2015-01-11 20:52:35

我认为我不太适合谈论Three.js,但是我已经在我的许多项目中使用了libGDX,并且知道它在WebGL (浏览器导出)方面的缺点。

  1. 首先要考虑的是您所使用的语言,Three.js使用JavaScript,libGDX使用Java。虽然libGDX向WebGL导出,但这仅仅是因为它使用了GWT,您仍然可以使用Java进行编码。
  2. LibGDX是专门用于移动和(在某种程度上)桌面应用程序的(正如您所说的)。如果您的目标是创建一些在网络以及移动和桌面上工作的东西,那么应该考虑使用libGDX。但是,如果你只想为网络编程,那么我真的会考虑只做Three.js,原因我稍后会解释。
  3. LibGDX主要用于游戏开发,所以如果您正在开发的应用程序是一个游戏,那么您可以考虑使用libGDX,因为它使3D游戏编程变得很好和容易(而且您可以将它移植到多个平台,不仅是web,而且是移动和桌面)。但是如果你在做其他的事情,Three.js可能是一个更好的选择。
  4. 如果您的发行平台将成为您的web版本,我建议继续使用Three.js,因为libGDX对其WebGL导出没有那么好。最大的问题之一(这是可以解决的,但一个痛苦的处理)是,libGDX不阻止默认浏览器键被使用。但是,如果您确实选择使用libGDX,请确保查看来解决该问题(或多或少)。
  5. 在大多数情况下,如果你是主要的平台将是网络,你会想用一种语言编程,这是为了网络开发。如果您在JavaScript中使用Three.js框架编程,那么代码将更干净、更快地运行。同时,如果使用libGDX,它从本质上将JavaScript代码转换为JavaScript代码,使其效率低下且体积庞大,并将包含许多行的JavaScript代码,这些代码要么无用,要么可以简化。这不是libGDX (或者更确切地说是GWT)本身的问题,而是在自动化编程语言翻译时无法避免的问题。为了给您举一个例子,使用编程语言Haxe,如果您将HelloWorld Haxe编译成C++,它包含了许多不必要的变量和方法(在C++源代码中),您只需去掉这些变量和方法即可。这个案子也是一样。

所以最终取决于你的目标是什么。如果您计划只使用Three.js的web版本,那么应该考虑使用libGDX。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10820926

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档