Web 上交互式 3D 模型的选项
谁能告诉我在网络上发布交互式 3D 模型的实际选择是什么?
我认为 Flash 或 Silverlight 都是最佳选择,但即使是这种情况,也许也有基于这些框架的一些已经可用的框架将有所帮助。
详细信息:
- 相当简单的模型
- 必须支持“骨骼”和关节等。
- 需要一定程度的用户交互
- 需要一些动画。
Could anyone tell me what my practical options are for publishing interactive 3D models on the web?
I would think either Flash or Silverlight would be the way to go, but even if this is the case, perhaps there are some frameworks already available based on these that will help.
Details:
- Fairly simple models
- Must support 'bones' and joints etc.
- Some level of user interaction required
- Some animation required.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(9)
在过去的一年中,发布 3D 对象变得更加容易。
Silverlight还做不到。曾经有过承诺,但很快就会实现。
就 Flash 而言,构建 3D 对象查看器确实非常简单,并且可以在几个小时内生成 3D 对象查看器。
我知道 Papervision 3D。您只需将其中的 collada 文件放入查看器中即可显示。
还有许多其他专为 Flash 构建的 3D 引擎。例如,Alternativa3D、Away3D 和 Sandy。他们都有自己的长处。 Papervision 是普遍的选择,因为它已经在街区附近,而且您几乎可以做任何您需要的事情。
Away3D 因其卓越的视觉效果和可帮助构建 3D 场景的预制应用程序而广受赞誉。Alternativa3D
有一些漂亮的示例,并且能够在相机静止时平滑渲染场景。
Papervision3D - 根据我的经验,这是最快的渲染引擎。我以 60 fps 的速度渲染了复杂的场景。它也是最快的查看设置。不幸的是,有时它可能是它自己奇怪的语法和解决方法。
所有这些都将帮助您满足您的要求。
In the past year, publishing 3D Objects has become a lot easier.
Silverlight can't do it yet. There have been promises but its soon to come.
When it comes to Flash - building a 3D object viewer is really very simple and its possible to produce a 3D object viewer within a few hours.
I'm aware of Papervision 3D. Of which you can simply drop a collada file into the viewer and it'll be displayed.
there are many other 3D engines built for flash. Alternativa3D, Away3D and Sandy to name a few. They all have their own strengths. Papervision is the general pick as it is been around the block and its at a level of which you can do pretty much anything you need.
Away3D is acclaimed for visual excellence and a prefab app that can assist in building 3D scenes
Alternativa3D has some beautiful examples and it has the ability to smooth render a scene whilst the camera is stationary.
Papervision3D - in my experience this is the fastest rendering engine. I've rendered speed of 60 fps with complex scenes. Its also the quickest on to set-up for view. Unfortunately at times it can be its own odd syntax and workarounds.
All these will assist you in your requirement.
我不确定这是否完全满足您的需求,但我听说过有关 Papervision 3D 的好消息
I'm not sure if this does exactly what you need but I've heard really good things about Papervision 3D
我一直在使用 Unity 及其 Web 播放器,它非常好,并且可以在大多数主要平台上运行。
它具有您想要的所有功能,而且非常易于使用。
希望这有帮助!
I've been using Unity with it's Web Player and it is very good, and it runs in most major platforms.
It has all the features you want, and it's pretty easy to use.
Hope this helps!
正如之前所说,那里有很多。
Balder - Silverlight 3D 库:
(来源:codeplex.com)
没有提到 Java 和 Javascript。 @maffel 谈到了这一点。
加工容易
开始吧。我看到的唯一问题是 Java 小程序的烦恼(Java 运行时普遍性不是很好,而且您会收到烦人的“信任”对话框,因为您将使用 Sun 的 JOGL 绑定)。
你可以尝试一下WebGL。丹尼斯·伊佩尔写了一个 Blender 的 WebGL 导出器。
优点是你不需要任何插件/运行时,但缺点是
目前只有少数浏览器支持 WebGL,因为它还处于实验阶段。它需要
一些设置 在屏幕上显示一些内容。
Mr.Doob 正在开发一个 javascript 3d引擎,但目前还没有
支持导入3D模型。
对于 Flash,有很多选择。有示例
使用 Away3D 可以满足您的需求。
因为 Away3D 可以满足您的需求,并且是开源的并且正在积极开发,所以我会推荐它。
其他选项已列出(Papervision3D、Alternativa3D)。
Yogurt3D 是新的,似乎可以处理更大的聚计数:
yogurt3d 头 http://www.yogurt3d.com/ wp-content/uploads/2010/03/animated-head.jpg
他们的目标是类似于 OpenGL 的语法。
加载和动画模型似乎可以使用不同的技术(Flash、Silverlight、Java、WebGL 等),因此这取决于
您想要达到的目标以及任何其他技术/成本限制
来自利益相关者。
华泰
As it was previously stated, there are quite a few out there.
Balder - Silverlight 3D library:
(source: codeplex.com)
Java and Javascript were not mentioned. @maffel touched on that.
Processing is easy to
get started with. The only problems I see there are the annoyances of Java applets(java runtime ubiquity isn't great, plus you get the annoying 'Trust' dialog as you will be using Sun's JOGL bindings).
You could try WebGL. Dennis Ippel wrote an WebGL exporter for Blender.
The advantage is you will not need any plugins/runtimes, but the disadvantage is
that only a few browsers currently support WebGL as it is experimental. It takes
a bit of setup to get something on screen.
Mr.Doob is working a javascript 3d engine, but currently there isn't
support of importing 3d models.
With Flash, there a lot of options out there. There are examples
out there for what you need using Away3D.
Because Away3D can do what you need, is open source and actively developed I would recommend it.
Other options were already listed(Papervision3D, Alternativa3D).
Yogurt3D is new and seems to handle a larger poly count:
yogurt3d head http://www.yogurt3d.com/wp-content/uploads/2010/03/animated-head.jpg
They aim for a syntax similar to OpenGL.
Loading and animating a model seems to be possible using different technologies(Flash,Silverlight,Java,WebGL,etc.), so it depends on the
target you're trying to reach and any other technology/cost constraint
from the stakeholder.
HTH
您可以尝试Alternative3D。据该网站称,它将支持反向运动学 - 尽管尚不清楚它是否是未来的功能或是否已经实现。我确实发现了这个http://blog.alternativaplatform.com/ru /files/2009/02/bones.swf。缺点是引擎是一个商业项目。
You could try Alternative3D. According to the site it will support invese kinematics - although it is unclear if it is a future feature or if it has already been implmented. I did find this however http://blog.alternativaplatform.com/ru/files/2009/02/bones.swf. The downside is the engine is a commercial project.
我自己尝试过 Papervision3D,发现它非常容易使用。我不知道它(或 Flash)目前是否支持 OpenGL,还没有正确地跟进这一点。不过,Stackoverflow 上有一篇相关帖子。
最近,我与一位朋友聊天,他在一家拥有 Flash 和 3D 历史的游戏公司工作。他告诉我,他们越来越多地转向 Unity,并对此给予了高度评价。
如果您只是对可用或正在开发的内容感兴趣,那么还有 WebGL 项目,它是应该直接连接到 OpenGL 硬件,因此速度非常快,但到目前为止,我认为唯一支持它的浏览器是 Chrome 的开发人员构建的 Chromium,所以还不是真正的分发选项,但玩起来可能很有趣。
最后当然是 Java 及其 OpenGL 绑定。一种选择是使用 Processing 库来抽象 OpenGL 设置。我自己已经这样做了,虽然是针对桌面应用程序,但如果您只想尝试一些东西,它会让管理一切变得更容易。
I've played around with Papervision3D myself and found it quite easy to use. I don't know if it (or Flash) does OpenGL currently, haven't been keeping up on that one properly. There is a related post on Stackoverflow though.
I recently had a chat with a friend of mine who works for a games company that has a history in Flash and 3D. He told me that they are moving more and more into Unity and talked very highly of that.
If you are interested just overall what's available or in the works then there is also the WebGL project which is supposed to connect straight to the OpenGL hardware and thus be very fast, but so far I think the only browser that supports it is the Chrome's developer build Chromium so not really a distribution option yet, but could be fun to play with.
Last there is of course Java with it's OpenGL bindings. One option would be to use the Processing libraries to abstract the OpenGL setup. I've done this myself although for a desktop application but it makes managing everything easier if you just want to try stuff out.
WPF 可以在一定范围内执行 3D,因此如果跨平台兼容性不是问题,您可以构建 xbap。您最终要么编写自己的骨骼库,要么从建模包导出预烘焙的动画,但这都不是特别的挑战。话又说回来,我参与这个生态系统已经有几年了,所以可能有更合适的库值得关注。
http://www.bl.uk/onlinegallery/virtualbooks/ 有一个旧的 WPF 应用程序index.html 显示了一种可能的方法。
WPF can do 3D within certain boundaries, so if cross-platform compatibility isn't an issue, you can build an xbap. You'd end up either writing your own bones library or exporting pre-baked animations from a modelling package, but neither of those is a particular challenge. Then again, it's been a couple of years since I was involved in this ecosystem, so there may be more suitable libraries that would be worth looking at.
There's an old WPF app at http://www.bl.uk/onlinegallery/virtualbooks/index.html that shows one possible approach.
您也许可以使用 copperlicht ,听起来它可能会做您想要的事情。它使用 webgl,目前在浏览器中处于实验阶段,但至少它可能是一个有趣的选择。
You might be able to use copperlicht which sounds like it might do what you want. It uses webgl which is experimental in browsers at the moment but it might be an interesting option to look into at least.
Demicron 的 WireFusion 非常出色,我用它来部署 苏格兰人的互动模型,为客户提供全套高地服装。它基于 Java,具有可访问和可定制的完整底层引擎,因此可能非常强大。从 Maya 或 3DMax 导入模型非常简单,甚至可以与出色的网格缩减工具进行插件级集成- Simplygon - 就集成在那里。
不幸的是,存在一些问题,但不是软件本身的问题……
不幸的是,这意味着我看不到这个真正优秀的系统,具有巨大的潜力和很多好的想法,将如何获得任何重大的吸引力。它已经存在好几年了,但仍然鲜为人知。如果钱不是选择,那么基于 Java 的性质不是问题,并且您准备花时间使用它,尽管我仍然会推荐它作为可用的最佳系统之一,但如果 Demicron 有任何感觉,他们会提供的价格不到他们的十分之一甚至更低。我已经将这个系统指向了几十个人,他们一直想在他们的(通常是电子商务)网站上尝试 3D 模型,但当他们看到价格时,他们都犹豫了。
尽管如此,我还是强烈建议您下载试用版并运行一下 - 这让您有一个月的时间在企业级别了解它是如何工作的。正如前面提到的,支持很好,社区虽然很小,但也很棒。
Demicron's WireFusion is excellent and I've used it to deploy an interactive model of a Scotsman in full highland dress for a client. It's Java based with the full underlying engine accessible and customisable, so potentially extremely powerful. Importing models from Maya or 3DMax is very easy and there's even an plugin-level integration with an excellent mesh reduction tool - Simplygon - integrated right on in there.
Unfortunately there are problems, just not with the software itself...
Which unfortunately means that I cannot see how this truly excellent system with a lot of potential and a lot of good ideas is ever going to achieve any significant traction. It's been around now for several years and is still virtually unknown. If money is no option, the Java based nature isn't an issue and you're prepared to spend time with it then despite that I would still recommend it as one of the best systems available, BUT if Demicron had any sense they'd be offering this at under a tenth of the price they do or even lower. I've pointed the system at dozens of people who've been wondering about experimenting with 3D models on their (usually e-commerce) websites and all have baulked when they've seen the price.
Still, I strongly recommend you download the trial version and give it a run - that gives you a month at enterprise level to see how it works. As mentioned support is good and the community, small as it is, is great too.