2012-04-25 28 views
0

我正在研究从ASP.Net MVC Web应用程序(C#)中的数据描述的建筑物渲染3D模型或图形的可能性。如何在ASP.Net MVC Web应用程序中渲染建筑物的3D模型/图形

大多数帖子在论坛上,在stackoverflow和博客和网站上的文章,我发现有关的事情是旧的(2006年和之前)。

据我所知,有三种选择:Direct3D,OpenGL和Unity 3D。

Direct3D是来自MS,但我不知道这是否适合于Web应用程序。任何经验的人?但如前所述,谷歌排名最高的文章是从2006年或更早(是否仍在开发/维护/使用?)。 OpenTK(www.opentk.com)看起来很有可能使用OpenGL,但最新版本是从2006年10月开始的(虽然他们网站上最近有博客文章)。

Unity 3D看起来非常先进,现代且近期保持不变,但我不确定渲染建筑物的简单3D模型是否体积庞大。

我欢迎任何建议,无论哪一个更适合这项任务,最好是实施的例子。

干杯, 丹尼尔

回答

2

我想你可能会误解这个过程是如何工作的。

我假设你想渲染客户端上的对象?

在这种情况下,您需要查看客户端技术。 ASP.Net或任何其他服务器端平台都可以将数据传递给客户端,但您需要使用客户端技术来实现这一点。

我不知道现在这个位置,但我希望您需要使用Silverlight,Flash或可能的HTML5来显示。

HTML5是符合标准的,但它是不太成熟的,据我知道你会需要一个相当新的浏览器访问它:http://msdn.microsoft.com/en-us/library/hh535759(v=vs.85).aspx

Silverlight是比较成熟的,应该与微软的工具集自然整合,但需要用户在可以使用您的工具之前安装该插件。我不知道它是如何无处不在,但这可能是你的一个问题。如果您想要更快/更可实现的开发时间,我仍然可能会倾向于此:http://forums.silverlight.net/t/225673.aspx/1

Flash非常普遍,但您需要专有工具来开发它,我不知道它是否将与Microsoft堆栈。我认为他们会更喜欢你使用自己的东西。如果你想要在大多数当前浏览器上可用的东西,这很好,但是我的感觉(如果我诚实地说我的希望)是因为HTML5接管它会失去货币。

当然,如果你适应了1998年的老校,你应该完全选择VRML。

至于你使用的服务器平台,这基本上与渲染和显示无关。它的作用将是传递数据。如果您使用的是Windows服务器,那么您可能需要查看WCF将数据传递给客户端的信息。

如果您想在服务器上呈现对象,然后使用这些渲染在客户端上创建图像或视频,这又是一个稍微不同的问题。

+0

感谢您的评论,我实际上意识到,但也许没有明确指定我想要的。你当然知道它是客户端,但数据来自C#中的asp.net mvc web应用程序,我更喜欢可以与之完美通信的3D库,最好是MS Visual Studio Intellisense支持,这就是为什么我在我的问题中包含了这一部分。这听起来是合理的还是像一个完整的noob(我可能是)。 – 2012-04-25 09:02:15

+0

这个问题表明你还不太了解这个领域,但最好的学习方法就是做到这一点 - 当我们回顾他们时,我们都开始提出没有意义的问题。 – glenatron 2012-04-25 09:14:35

+0

感谢您帮助我,这对我来说无疑是一个全新的领域。我将尝试一个轻量级JS库three.js(http://mrdoob.github.com/three.js/)。 Silverlight确实是一种可能性,但我们的客户主要是在没有安装插件权限的系统上。我也注意到了VRML,但是为了我们的需要寻找老派。感谢您的意见。 – 2012-04-25 09:41:10