基于Web的应用程序的3D图形

3
我需要创建一个基于Web的应用程序,其中包括以下任务:
  • 从数据库加载3D模型。
  • 显示3D模型。
  • 进行反向运动学计算,以生成模型从初始位置到最终位置移动的一系列步骤。
  • 实时显示动画。
该应用程序最初是作为基于Qt/OpenGL的PC应用程序设计的,但我们正在调查是否可以将其实现为基于Web的应用程序。
我对基于Web的开发知识仍然有限。
为了解决这个问题,推荐使用哪种方法/技术?
谢谢!!
更新:首选平台无关的解决方案。该应用程序需要在Mac和Windows机器上运行。
10个回答

4
如果这是一个Web应用程序,您应该考虑使用Papervision3D(http://papervision3d.org/)进行基于Flash的方法(如果您希望它相对平台无关)。

4

一个Java小程序也可能满足您的需求。

请查看Java 3D


3

2

WebGL也是一个有趣的选择。没有插件,只需在浏览器中使用OpenGL(包括着色器)。


1

嗯,你肯定不能在HTML中完成所有这些,所以选择插件技术是关键。

我认为,你最好的选择是Flash,因为这是一个成熟的平台,有很多第三方扩展(例如http://www.flashsandy.org/)可用于让你进行3D建模。

另一种选择是Silverlight,它将为你提供.NET/C#的强大功能(而不是脚本语言)。

两者都是跨平台和跨浏览器的。


1

0

0

有几种方法可以实现这个目标。以下是我想到的一些方法:

  • 考虑将其作为ActiveX组件交付(最快,但仅限于Win32)。
  • 考虑使用.NET(Silverlight)(Win32、OSX、*nix通过Moonlight在可预见的未来;仅支持DirectX/Direct3D)
  • 考虑使用Java,它也可以访问OpenGL。
  • 考虑使用任何你遇到的中间件..应该有数十个。

一个问题可能是可移植性。这里有两个注意事项:您的代码需要在任何地方运行,并且需要3D加速。这是一个问题,因为您无法确定它是否具有3D(当然,您可以查询上下文)。

因此,您可能还希望考虑在CPU上光栅化和渲染(即使用MESA3D)。如果您不需要允许自由形变并且想要动画,比如说30帧,并且使用Mesa您可能会在典型硬件上以5fps渲染典型模型,那么您需要6秒钟来计算整个场景。那就足够了。


ActiveX不仅仅只支持Win32平台,而且也只适用于IE浏览器。 - pilsetnieks

0

Adobe Shockwave拥有强大的3D建模功能。不幸的是,目前它的支持不足,但Flash没有3D功能(papervision3d项目试图纠正这一点,但效果因人而异)。


0

我同意其他人的看法,Flash 可能是你最好的选择。如果未来在苹果移动设备上运行存在问题,并且成本不是问题,请考虑使用 Unity 开发一些东西。它是一个插件(就像 Flash),但没有引起 Steve Jobs 的愤怒。

http://unity3d.com/gallery/developer-profiles/web-games/


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接