将OpenSceneGraph程序转移到网站上

时间:2016-04-08 05:52:53

标签: c++ node.js openscenegraph osg.js

我计划开发一个网站,用户可以通过浏览器检查和操作3D建筑模型。

现在我已经使用OpenSceneGraph和MFC实现了具有相同要求的本地客户端。

所以我很困惑,这是编写尽可能少的代码的最佳方法。 以下是一些解决方案。

  1. 我发现OSGJS是一个可能的解决方案,但是,OSGJS的教程并不多。
  2. 将c ++代码传输到服务器上。但我不确定这是实现这一目标的一种方式。

4 个答案:

答案 0 :(得分:1)

使用OSG.JS是您重用已经为OSG桌面应用程序创建的大多数模型和材料的最佳选择。 您必须再次编写Web应用程序的所有业务逻辑和UI。

osg.js web site上有几个教程和示例。

从原生osg格式到osgjs格式还有plugin to convert个模型。

答案 1 :(得分:0)

借调。 OSG.js是一种很好的做事方式,虽然如果你不需要重用模型文件(或者你可以轻松转换它们),three.js也很好。

最后,如果您需要在其中构建模型的地形,并显示与建筑物相关的其他GIS和地图数据,那么使用Cesium.js是一种很好的方法。

所以,基本上,"正确的方式"取决于您的要求的更多细节。

如果这是你要转包的东西,我们可能会为你做一些工作。

答案 2 :(得分:0)

如果您只需要能够在具有操作可能性的浏览器中使用OSG模型,那么可以通过sketchfab快速实现此目的。检查this random example的外观。

您可以将osg / osgt格式文件上传到sketchfab,然后您需要做的就是embed on web您的sketchfab模型。 Sketchfab为您提供了一个选项,用于设置模型查看方式的灯光和操作设置。

如果你计划做的不仅仅是浏览模型,它可能不是你的问题的解决方案,但我想提到它以防万一。

答案 3 :(得分:0)

如果您的应用程序的最终用户使用的是Chrome浏览器,那么您可以考虑使用Google的Native Client。

  

传统桌面应用程序:Native Client提供从桌面应用程序到Web的平滑迁移路径。您可以将应用程序的计算引擎的现有代码直接移植并重新编译到Native Client,并且只需要重建浏览器的用户界面和事件处理部分。

https://developer.chrome.com/native-client/overview